We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I need to write a program for a project that receive data from serial (RX pin) using HC06 module and then turn a led on according to the received information. I'm using P89v51rd2 microcontroller. Here is the code I write but something is wrong
#include <reg51.h> #include <stdio.h> sbit con1 = 0xa0; void serial_init(void) //Setup the serial port for 9600 baud at 11.0592MHz. { SCON = 0x50; //* SCON: mode 1, 8-bit UART, enable rcvr TMOD = 0x20; //* TMOD: timer 1, mode 2, 8-bit reload TH1 = 0xFD; //* TH1: reload value for 9600 baud @ 11.0592MHz TL1 = 0xFD; TR1 = 1; //* TR1: timer 1 run TI = 1; //* TI: set TI to send first char of UART } void receive() //Function to receive serial data { unsigned int digit; //variable to hold the new character while(RI==0); //Wait for Receive interrupt flag { digit=SBUF; RI=0; //Clear eceive interrupt flag } if (digit==1) { con1=0; } else { con1=1; } void main() { while(1) { serial_init(); receive(); } }
where i'm wrong please help me