Bonjour à tous,
Je me lance dans la programmation des pics pour un projet personnel (création d'un looper midi pour guitare). La partie relais marche très bien, mais concernant le pic, c'est autre chose...
J'ai donc écrit tout le code, et je l'ai fais tourné en simulation sous mplab, tout marche. Ayant reçu ma plaque de prototypage, j'ai voulu testé le pic avec un simple programme : allumer une LED. Et forcement, ça ne marche pas.
Sur la plaque, cablage simple : Mon alimentation filtrée 9V en 5V (j'ai bien 5V en sortie, pas de problème), mon PIC avec les deux pins Vss à la masse et la pin Vdd au +5V, et la pin #1 (MCLR) au +5V. Sur la pin #2 (A0), j'ai une résistance de 220 Ohm, suivi d'une led reliée à la masse (je précise que la LED s'allume bien quand je relie la résistance au +5V).
Voici le code :
J'avais déjà des connaissances en C, et j'ai épluché toute la doc de microchip avant de me lancer dans la programmation. Les bits de config sont réglés de façon à utiliser l'oscillateur interne à 8 MHz.Code:#pragma CLOCK_FREQ 8000000 #pragma DATA 0x2007, 0x3FFC #pragma DATA 0x2008, 0x3FFF void init(void) { // Initialise les registres, le timer, les sorties ... trisa = 0; trisb = 0; trisc = 0; porta = 0; portb = 0; portc = 0; // disable ad clear_bit(adcon0, ADON); osccon = 0b01110111; // utilise l'oscillateur interne à 8 MHz ansel = 0 ; // sortie digitale anselh = 0; set_bit( porta, 0); // A0 ON set_bit( porta, 1); // A1 ON } void main(void) { init(); do { clear_wdt(); } while (1); }
Où ais je fait une erreur ? Surement une erreur de débutant, mais j'aimerais beaucoup mener ce projet à bien !
Merci d'avance de votre aide !
Sébastien
-----