Un module d’acquisition bien doté :
- Microchip PIC18F4550
- application écrite en C et code source commenté
- compilée sous Microchip MPLAB
- liaison USB vers un PC
- identifications USB VID/PID de Microchip
- module directement alimenté par le port USB
- 8 canaux A/D 10 bits (0V à 5V)
- 2 canaux D/A (0V à 5V)
- 8 sorties logiques
- 8 entrées logiques
Avec une petite application sous Windows :
- compatible WinXP
- nécessite Net Framework 2 à l’installation (disponible gratuitement au téléchargement)
- pilote USB fourni
- application écrite en C++ et code source commenté
- compilée sous Visual C++ 2005 Express (compilateur gratuit au téléchargement)
Anodin en apparence, le projet présente une synthèse pratique, et permet de maîtriser tant la programmation d’un µC en langage évolué que la programmation en langage évolué pour PC, y compris la gestion de l’interface USB.
Important en cas de problèmes de compilation de CUSTOM_TAD
Contrairement à ce que pensent certains lecteurs, le progiciel CUSTOM_TAD ne comporte as de bogue. S'il est compilé, comme le dit le magazine dans la section "Progiciel PIC", sous le compilateur MPLAB C18 C v3.02, il se compile parfaitement (il apparaît 6 messages d'avertissement, sans importance) et le fichier .hex est généré sans le moindre problème.
Cependant, si le progiciel est compilé avec une version plus récente du compilateur C18, sous MPLAB C18 C v3.14 (version récente) par exemple, il apparaît certaines erreurs qui empêchent la compilation. Pour pouvoir effectuer une compilation réussie il faut procéder à quelques modifications :
1. Fichier main.c, ligne 52
Le texte: #pragma config FCMEM = OFF
Doit devenir : #pragma config FCMEN = OFF
2. Fichier user.c, ligne 76
Le texte : OpenPWM2(0xFF);
Doit devenir : TRISCbits.TRISC1=0; CCP2CON=0b00001111;
3. Fichier user.c, ligne 79
Le texte : OpenADC(ADC_FOSC_64 & ADC_RIGHT_JUST & ADC_6_TAD,ADC_CH0 & ADC_INT_OFF & ADC_VREFPLUS_VDD & ADC_VREFMINUS_VSS,7);
Doit devenir : OpenADC(ADC_FOSC_64 & ADC_RIGHT_JUST & ADC_6_TAD,ADC_CH0 & ADC_INT_OFF & ADC_REF_VDD_VSS,7);
Ces 3 modifications sont indispensables. Après avoir procédé à ces modifications le progiciel se compile parfaitement (il apparaît 6 messages d'avertissement, sans importance) et le fichier .hex est généré sans le moindre problème.
Matériel
Sur le schéma, les broches USB+ et USB– du bornier K2 doivent être interverties. Il faudra également modifier en conséquence le dessin des pistes de la platine proposé dans l'article. Les platines fournies par Elektor Shop comportent le routage correct du signal USB et ne sont donc pas concernées.
Bien que le schéma et la liste des composants donnent des valeurs différentes pour R3 et R4, il n'y a pas de problème à utiliser des valeur de 27 Ω ou de 33 Ω pour R3 et R4.