登录
首页
串口通信
串口通信
回帖
发帖
正文
主题:P89C669双串口通讯有时会互相冲突问题
点击:472 回复:2
楼主
编辑
引用
管理
xuying2529
单片机P89C669,串口0用来和触摸屏通信,用的是定时器1;串口1用来和PC进行通信,用的是自带的波特率发生器BRT。两串口都是使用中断的方式控制的。客户最近反映在使用的过程中与PC通讯有时会出现死机的情况,但是重新开关机以后又恢复正常,无规律可循。实际测试的过程中发现:两个串口单独烧写程序都能正常工作,但是一旦两个串口程序放一起工作时,与触摸屏通信正常,但与PC通信单片机反应就没那么灵敏了,有时能接收到有时接收不到,用串口监控软件查看是有数据发送出去,但是单片机无应答信号。个人认为是发送的数据未接收完全,而无法产生应答信号。尝试过在一个串口进中断时屏蔽掉另一个(进中断关闭中断标志位,出中断打开中断标志位)或关闭总中断再打开,问题还是无法解决。不知道该怎么解决?
13-11-15 09:18
1楼
编辑
引用
管理
xlian
如果做成硬件握手能解决你的问题,或者使用软件握手,比如你接收不到规定的数据时,请求PC重发;
虽然你使用了两个串口,但你的程序要做成调度模式,如果你的串口带有缓冲或者可配置DMA的话就行;
最后修改:
2013/11/15 22:44:59
13-11-15 22:43
2楼
编辑
引用
管理
xuying2529
哦,这样子是不是就需要更改我原来的通信协议了呢?毕竟已经是成熟的产品,要改通信协议不是很方便的。
最后修改:
2013/11/16 8:31:25
13-11-16 08:19
工控新闻
中国移动携手埃斯顿酷卓,共探工业具身智能新路径赋能智能制造
倍福助力伊之密的先进工业装备成型
台达四度蝉联HRoot“卓越雇主”以永续人才与数字化树立行业新标杆
MX-System 灵活地将机器人装配到现有系统中
浩亭2025财年收官,全球布局驱动强劲增长
京东工业构建数字“高速公路”助力工业产业降本增效
汇川杯全国宣讲会走进哈尔滨工业大学,共筑产教融合新生态
工业和信息化部等六部门联合公布2025年度领航级智能工厂培育名单
更多新闻资讯