j'essai un petit programme pour utiliser le convertisseur CAN.
MikroC me donne une erreur sur "ADCON0 = 0b10000001" et je ne comprend pas pourquoi, avez-vous une idée?
Cordialement.
Marcus.
Code : Tout sélectionner
int valeur;
void Init_Port ( void )
{
// Init du port A,
PORTA = 0x00;
TRISA = 0b11111011; // RA2 en Sortie (LED) les autres en entrées
// Init du port B
PORTB = 0x00;
TRISB = 0b00001111; // RB0 à RB3 en entrées RB4 à RB7 en sortie
}
void Init_Can(void)
{ // Init du CAN
ADCON0 = 0b10000001; // CAN Horloge 1/32
ADCON1 = 0b00000100; // AN0 & AN1 & RA2 Résultat justifié à gauche
}
void main ( void )
{
Init_Port();
Init_Can();
while( 1 )
{
ADCON0 = 0b10000001; // Sélectionne la voie AN0
t=10; while(--t); // Attend que le signal se stabilise
GODONE = 1; // Lance la conversion A/N
while(GODONE == 1); // Attend la fin de conversion
valeur = ADRESH; // Lecture du résultat
}
}