Bonjour,
merci pour l'article HID avec le 4550
je suis en train de passe un programme isolée en programme connecté à l'USB pour récupéré ce que je mesure
j'ai pris le code HID, et dans la partie ProcessIO
void ProcessIO(void)
{
int i;
Buffer[0]=255;
// Canal A0
getacd(0, 1);
Buffer[1] = ADRESH ;
Buffer[2] = ADRESL ;
// Canal A1
getacd(1, 1);
Buffer[3] = ADRESH ;
Buffer[4] = ADRESL ;
if(!mHIDTxIsBusy()) { // blocking
HIDTxReport(Buffer, PacketSize ); // transmit packet
}
C'est tout ce que j'ai gardé, de cette façon j'envoi en permanence ce que je mesure.
Je sous est que si dans ce code je rajoute par exemple une de ces 2 lignes
Delay10KTCYx(120); // Delay of 100ms
Acquisition(); // Acqui et Affichage sur le LCD
ça ne fonctionne plus. Le périphérique n'est plus reconnu par le PC
si je les rajoutes dans le main idem
while(1)
{
USBTasks(); // USB Tasks
ProcessIO(); // See user\user.c & .h
Delay10KTCYx(120); // Delay of 100ms
Acquisition(); // Acqui et Affichage sur le LCD
}//end while
Pourquoi ce problème ?
j'ai également un problème dès que j'active les irq RB4-RB7 on change
// ENABLE_INTERRUPTS_H(); //enable interrupts high
// ENABLE_INTERRUPTS_L(); //enable interrupts low
Mais je crois que quelqu'un a déjà eu le problème, et il y a un semblant de réponse sur le forum microchip, je vais donc chercher.
Par contre si quelqu'un peut m'expliquer le 1er problème, un grand merci d'avance
Minikiss