Bonjour,
pour un projet, je souhaite programmer le PIC18F23K22.
Je suis assez débutant dans le monde Microchip.
J'ai un PICkit3 et arrive à communiquer avec le microcontrolleur.
Je souhaite tout simplement envoyer des caractères sur le port série, 9600bauds, 8 bits, pas de parité, 1 bit de stop. (EUSART1).
Cependant, ça n'a pas l'air de fonctionner (oscillo sur la broche du micro).
J'utilise le code suivant:
Le début du code (RST_IC et WIRELESS) sert pour le reste de mon montage (commande d'un switch et du reset d'un autre composant).
Est-ce que quelqu'un peut m'apporter ses lumières ou me donner une piste ?Code://#pragma code*/ void main (void) { // Configuration bits // set internal oscilator with frequency to 16MHz OSCCON = 0x72; // Try to communicate with serial port with PC //set WIRELESS = 1 (Output, 1), RA7 // Set RST_IC = 1 (Output, 1) RB3 // setup for Asynchronous, 8bit, 9600bauds TRISA = TRISA & 0x7F; //set RA7 as Output PORTA = PORTA | 0x80; // set RA7 as 1 TRISB = TRISB & 0xF7; //set RA7 as Output PORTB = PORTB | 0x08; // set RA7 as 1 //configure serial port // set bauddrate to 9600 bauds // set BRGH and BRG16 = 0 SPBRG1 = 0x19; SPBRGH1 = 0x00; BAUDCON1 = BAUDCON1 & 0xF7; TXSTA1 = TXSTA1 & 0xFB; // Set TRIS to '1' for RC6 and RC7 TRISB = TRISB | 0xC0; // Clear SYNC and set SPEN to activate serial port TXSTA1 = TXSTA1 & 0xAB;// enable TX, asynchronous mode, 8bits, low speed RCSTA1 = RCSTA1 | 0x90;// Enable receiver RCSTA1 = RCSTA1 & 0xBF; TXSTA1 = TXSTA1 | 0x20; TXREG1 = 0x55; }
J'ai essayé autant que possible de suivre la datasheet du PIC (étapes page 268)
Merci !
-----