导航:首页 > 操作系统 > 单片机串口发送数据突然很慢

单片机串口发送数据突然很慢

发布时间:2025-01-02 01:02:07

单片机通过串口向PC不间断发送变化的数据,PC接收总是延迟

这个问题很常见了,解决方法:
如果你能更改上位机软件,将上位机软件接收数据那块改为"一旦接收缓冲区有数据,立刻读出来显示".
如果你没办法更改上位机软件,那么你可以间隔发送,比如两包数据间隔为0.5S,或者找一款可以实时显示的调试助手,推荐使用ttermpro测试下

⑵ 单片机串口发送数据不及时怎么处理

不是很明白你要实现的功能。
你的中断函数里写的是如果接收到串口信息时,就将标志位置1,同时获取此时P1口的按键状态。
然后主程序检测到标志位被置1,就将刚刚获取的P1口按键状态发回给上位机是这样吗?
不用说了,肯定是这样。
我说说你程序的问题吧,首先你的P1口到底接了些什么外围电路我不知道,如果是按键,还分哪类按键呢,比如拔动开关,或者是普通按键。如果是拔动开关的话,那麽这个程序也没多大问题。因为拔动开关是可以让你的按键电平锁定在高电平或低电平的,但如果是普通按键的话,那麽你的程序就很大问题了。
首先要产生RX信号,让程序进入中断,同时你的按键要按下。两步要同时。所以导致你要不断地按,狂按。
其实如果你的单片机不接收上位机传来的串口信号,可以直接去掉中断的。
while(1)
{
if(P1!=0XFF) // 证明有按键按下
{
pd1=P1; //将值取出。
while(P1!=0xff) ; //直到松手。

SBUF=pd1; //SUBF接受/发送缓冲器
P2=pd1;
//delay(); 这句delay没多大意义。
while(TI==0);
TI=0;
Flag=0;
}

}
也可能是我误解了你的意思,有什么问题欢迎一起探讨,希望我的回答对你有帮助。

⑶ 单片机串口通信,发送数据感觉不对,请大佬帮看看

你的主循环转得太快,前一个数据还没发送完就把SBUF又填充新数值,这样很容易破坏发送的帧。
既然你不开中断,就应当采用查询工作方式,查询TI标志位确认发送完成之后再进行下一步工作。

⑷ 51单片机 开启串口TI后时钟变慢

第一:这种情况只有在开串口中断才会出现,你的程序中有IE=0x90;的语句吗?
第二:开启串口发送,是向SBUF中送数,如SBUF=0x8AH;但不能人为地TI=1,这样做是错误的,当串口发送一个字节后会自动置TI=1的,表示已发送完一个字节,这样,要由软件清TI=0,再发送下一个字节。
第三,人为地置TI=1,就会出现在没有发送数据的情况下也会产生中断,如果还没有串口中断子函数,也没有清TI=0的语句,就会不停地中断,当然就会影响执行延时子函数,那延时的时间肯定要长了。

⑸ stc8h单片机串口通讯数据不发送

stc8h单片机串口通讯数据不发送如果都配置检测没什么问题,能够正常的发送数据但是不能够接收数据的话就要考虑是不是IO没有配置好。将指指基RX的端口配置成设置I/O口为准双向口模式,唯谨再次逗好进行尝试。

阅读全文

与单片机串口发送数据突然很慢相关的资料

热点内容
程序员需要高深吗 浏览:96
农行app怎么查询公户账户余额 浏览:328
美国疾控发防疫命令 浏览:139
用固定循环编程可以 浏览:879
硅胶压缩比测试 浏览:800
vc命令行编译c 浏览:674
php用户登录界面 浏览:82
安卓车载导航如何卸载自带软件 浏览:714
阶乘的编程c 浏览:415
java视频教程达内 浏览:825
单片机应该怎么学 浏览:420
空气压缩机品牌名称 浏览:346
word文档部分内容加密 浏览:62
压解压软件 浏览:936
java设置excel格式 浏览:957
单片机锁存器地址怎么看 浏览:576
手机硬件编程 浏览:835
如何去除你看文件夹时间 浏览:442
两个加数的和的编程 浏览:796
51单片机lcd显示 浏览:585