when i use the 89LPC952 serial port 0,the below interrupt response program is work unnormal. if ( S0BUF == '#'){ s0_input_flag = 1; P2 |= 0x08; S0_in_char_n = 0; RI_0 = 0; goto out1; } but when i use the serial port 1,the reslut is ok 90FFB4 MOV DPTR,#0xFFB4 74D2 MOV A,#RTCH(0xD2) F0 MOVX @DPTR,A when i debug the source find the S0BUF content not send to the A ,it is alway 0. E599 MOV A,S0BUF(0x99) B423FB CJNE A,#0x23,C:0030 sfr setting is S0CON = 0x40; BRGR0_0 = 0xD2; BRGR1_0 = 0x04; BRGCON_0 = 0x03;
S1CON = 0x50; BRG0_1 = 0xD2; BRG1_1 = 0x04; BRGCON_1 = 0x03;
how can i get the S0BUF correctly?
The instruction appeared directly above the 'Message' box when you typed your post - please pay attemtion to them!
Or read them here: http://www.keil.com/forum/tips.asp
(that link is included in the instructions!)