📄 muti-commu_r.c
字号:
#include<regx51.h>
#include<intrins.h>
#include <lcd.h>
/*---------------
110529Mhz/(12*16*(256-253(TH1=0XFD)))
baudrate 19200
---------------*/
#define COUNT 10
#define NODE_ADDR 64 //经测试 该64与主机的NODE_ADDR 相同时才能接收到主机发出的信号
unsigned char buffer[COUNT];
unsigned char k=0;
int pointer;
void delay()
{
unsigned int i;
for(i=0;i<20;i++)
_nop_();
}
void main(void)
{
init_LCD();//
clear_LCD();//
SCON=0XF0;
TMOD=0X20;
TH1=0XFD;
TR1=1;
ET1=0;
ES=1;
EA=1;
pointer=0;
while(pointer<=COUNT)
{
if(k>=11) //完全接收到10个字符时显示一次
{ k=0;
gotoxy(2,0);
display_LCD_string(buffer);
}
}
}
void recieve(void) interrupt 4 using 3
{
RI=0;
k++;
if(RB8==1)
{
if(SBUF==NODE_ADDR) //地址桢相同则接收数据
SM2=0;
return;
}
buffer[pointer++]=SBUF;
gotoxy(1,0);
//display_LCD_string(&buffer[pointer-1]);//可以
write_LCD_data(buffer[pointer-1]);
if(pointer==COUNT)
SM2=1;
//clear_LCD();
//gotoxy(1,3);
//display_LCD_string(buffer);
//gotoxy(1,10);
//display_LCD_number(k);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -