Bonsoir à tous,
J'ai écrit un petit programme en C pour tester la liaison rs232 avec mon PIC. En voici le code :
Ce programme est censé m'envoyer en boucle le caractère ascii "1". Le problème est que l'hyperterminal ne reçoit rien, et à priori, ça ne vient pas du côté hard...Code:#include <system.h> #pragma DATA _CONFIG, _HS_OSC & _WDT_OFF & _CP_OFF & _LVP_OFF & _MCLRE_ON #pragma CLOCK_FREQ 4000000 void main() { option_reg = 0x80; /* USART Configuration */ set_bit(trisb, 2); set_bit(trisb, 1); set_bit(rcsta, SPEN); /* Serial port activation */ clear_bit(txsta, 2); spbrg = 51; /* Baudrate 1200 with 4Mhz Clock */ clear_bit(txsta, SYNC); /* Asynchronous mode */ set_bit(txsta, TXEN); /* TXEN = 1 */ txreg = 0x31; while(1) { while (!test_bit(pir1, TXIF)); txreg = 0x31; } }
Quelqu'un voit-il une erreur dans mon programme ?
Merci d'avance,
Cdlt,
Yann.
-----