接收機程序:
- #include <jieshou.h>
- #include <1602.h>
- uint m=0;
- uchar weight[4]={0,0,0,0};
- void jieshoumain(void)
- {
- SCON=0x50; //設定串口工作方式
- PCON=0x80; //波特率不倍增
-
- TMOD=0x20; //定時器1工作于8位自動重載模式, 用于產生波特率
- EA=1;
- ES = 1; //允許串口中斷
- TL1=0xfd;
- TH1=0xfd; //波特率9600
- TR1=1;
-
- }
- /*********************************************************
- 串行中斷服務函數
- *********************************************************/
- void serial() interrupt 4
- {
- ES = 0; //關閉串行中斷
- RI = 0; //清除串行接受標志位
-
- weight[m++]= SBUF; //從串口緩沖區取得數據
- schar(0x04+m,4,0x30+weight[m]);
- if(m==4)
- {
- m=0;
- }
-
- ES = 1; //允許串口中斷
- }
復制代碼 |