#include<reg52.h> unsigned char flag,a; void inter(); void main() { inter();
while(1) { if(flag==1) { ES=0; //關閉中斷 flag=0; SBUF=a; while(TI==1) TI=0; ES=1;
} } } void ser() interrupt 4 //中斷方式 {
RI=0; P0=SBUF; a=SBUF; flag=1;
} void inter() { TMOD=0x20; TH1=0xfd; TL1=0xfd; TR1=1; //啟動t1 REN=1; //允許串行接收 SM0=0; //設定串行工作方式 SM1=1; EA=1; ES=1; }
這是我寫的一個串口的程序,有點問題一直找不出來。這是實現單片機和pc的數據傳送,但是用串口調試助手的時候,向單片機發送命令,單片機可以收到,但是在串口調試助手的接受區,收不到單片機發回來的命令。請高手解答 |