Salut J'ai écrit un code UART pour PIC16F877A. Le code ne fonctionne pas et son montrant l'erreur comme pointeur nécessaire au MP LAB IDE.I veulent envoyer et recevoir les personnages PC hyper terminal.any de vous me HEP pour résoudre les problèmespic16f877a uart embedded c code
#include<pic.h>
void pic_init(void)
{
TRISC7=1;
TRISC6=0;
}
void uart_init(void)
{
TXSTA=0x20;
RCSTA=0x90;
SPBRG=15;
}
void tx(unsigned char byte)
{
int i;
TXREG=byte;
while(!TXIF);
for(i=0;i<400;i++);
}
void string_uart(char *q)
{
while(*q)
{
*(*q++);
}
}
unsigned char rx()
{
while(!RCIF);
return RCREG;
}
void main()
{
char *q;
pic_init();
uart_init();
tx('N');
rx();
string_uart("test program");
}
Jetez un coup d'œil à [ce guide] (https://electrosome.com/uart-pic-microcontroller-mplab-xc8/). Au moins, vous devez définir le débit en bauds pour faire ce que vous voulez faire. Un petit conseil. Essayez de raccourcir les broches TX et RX et commencez à le faire fonctionner. Pour le connecter à un PC, vous avez également besoin d'au moins un câble usb to TTL UART (5V). – LPs
Si votre compilateur émet un message de diagnostic, vous devez inclure le message exact dans la question et indiquer exactement sur quelle ligne le message a été émis. – Clifford
@LPs: Les PC avec ports série hérités sont toujours disponibles. Bien qu'un pilote de ligne 232 sera alors nécessaire. Si HyperTerminal est installé par défaut sur son PC, il doit être assez ancien et peut contenir 232 ports. – Clifford