Bonjour à tous,
Je suis en train de programmer un pic 18f2455 avec MPLAB et le compilateur C18.
Dans mon programme j'ai besoin de faire des pauses de 480µs et 230µs et 70µs.
Le compilateur C18 à une librairie delays.h avec les fonctions suivantes :
Delay1TCY(); // Temporisation fixe de 1 temps de cycle.
Delay10TCYx(unsigned char unit); // Tempo = unit * 10 * Tcyc
Delay100TCYx(unsigned char unit);
Delay1KTCYx(unsigned char unit);
Delay10TCYx(unsigned char unit);
Tcyc = 4/Fquartz
Dans mon cas le PIC tourne à 48MHz donc j'ai créer la fonction suivante mais elle ne semble pas marcher ou du moins ellle n'est pas précise... :
Tcyc = 4/48MHz = 1/12µs
Si jamais vous avez deja eu à faire à ce genre de problème merci de m'éclairer.Code:void delay_us(int us) { int i,j =0; for(i=0;i<us;i++) { for(j=0;j<12;j++) Delay1TCY(); // 12*1/12µs = 1µs } }
Bonne journée.
-----