Bienvenu(e)! Identification Créer un nouveau profil

Recherche avancée

PB 4550 et USB HID

Envoyé par Minikisscool 
PB 4550 et USB HID
mardi 25 juillet 2006 09:12:07
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

Re: PB 4550 et USB HID
mercredi 26 juillet 2006 17:30:35
Salut,

Je ne pense pas que ce soit une bonne idée de mettre une pause dans le main... moi quand je mets la pause c'est dans le processIO, je ne connais pas dans la profondeur le code de microchip, mais le fait périphérique ne soit plus reconnu vient certainement du fait que les taches propes a l'usb qui s'effectue en boucle ne sont plus conforme a la norme, essaye de mettre ton delay dans le processio et regarde si ça ne marche pas mieux, moi je n'ai aucun probleme... Regarde aussi si le chien de garde n'est pas activé...

Pour les interruptions je ne sais pas t'aider j'ai pas encore joué avec...
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter