2015-12-06 1 views
0

J'ai regardé dans le fichier pic32ms.h et il semble qu'il n'y a pas de définitions pour la minuterie 4. Pour la minuterie 2, il a les éléments suivants:Impossible d'accéder à la minuterie 4 PIC32 avec TMR4, T4CON etc

/* 
* Timer2 registers 
*/ 
#define T2CON  PIC32_R (0x0800) 
#define T2CONSET PIC32_R (0x0808) 
#define TMR2  PIC32_R (0x0810) 
#define PR2   PIC32_R (0x0820) 

J'ai essayé d'ajouter des lignes pour le minuteur 4 avec les bonnes adresses mais cela ne résout pas le problème. Donc, ce que je veux faire à la place (s'il n'y a pas de meilleure solution) est de pouvoir appeler l'adresse sans utiliser de valeurs prédéfinies. Le temporisateur 4 a l'adresse virtuelle 0x0C00 à 0x0C20. Comment accéder à ces adresses et configurer la minuterie?

Répondre

1

La solution a été de définir l'adresse comme un pointeur unsigned int volatile qui pourrait ensuite être utilisé pour accéder à la minuterie 4:

volatile unsigned int *T4CON = 0x****0C00; 

Cependant, je fini seulement en utilisant la minuterie 2 en changeant la façon dont je me suis occupé des drapeaux de trop-plein afin qu'il puisse être détecté par différents composants dans le code.