串口通信发送的内容与接收到的不一致
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了串口通信发送的内容与接收到的不一致相关的知识,希望对你有一定的参考价值。
波特率设置都是9600,晶振11.0592
void Init_Uart(void)
TMOD = 0x20; //定时器T1使用工作方式2
TH1 = 253; // 设置初值
TR1 = 1; // 开始计时
SCON = 0x50; //工作方式1,波特率9600bps,允许接收
PCON |= 0x80;
ES = 1;
EA = 1; // 打开所有中断
TI = 0;
RI = 0;
REN = 1;
void UART_SER (void) interrupt 4 //串行中断服务程序
uchar Temp; //定义临时变量
if(RI) //判断是接收中断产生
RI=0; //标志位清零
Temp=SBUF; //读入缓冲区的值
jing[count]=Temp; //把值输出到P1口,用于观察
if(count>=160)
count=0;
flag=1;
SBUF=Temp; //把接收到的值再发回电脑端
if(TI) //如果是发送标志位,清零
TI=0;
是不是和你的串口调试软件有关,给你发一个软件,你试试
还是不行的话,再看你的程序
你的软件发送之后什么也接收不到,你帮我看看程序吧http://pan.baidu.com/s/1eQ48owy
追答你是仿真的程序,还是有实物,私信把代码都发给我
追问有实物,但是接收到的数据就出错了
参考技术B 你发送的是字符,下面显示的是十六进制追问都是16进制呀
以上是关于串口通信发送的内容与接收到的不一致的主要内容,如果未能解决你的问题,请参考以下文章