登陆
|
注册
|
搜索
|
最近新帖
发帖子
|
共享我的资料
|
精华帖子
|
热门话题
导航:
老古网
→
老古论坛
→
XMOS公共讨论区
→
XMOS开源项目区
→
单片机程序设计
→
嵌入式系统
→
广告区域
→
→初学者:初学者:请教,单片机接收数据出错如何解决[wqj]
*第1479篇: 初学者:初学者:请教,单片机接收数据出错如何解决
楼 主:
wqj
2001年12月12日21:41
初学者:初学者:请教,单片机接收数据出错如何解决
用89C2051接收计算机发的数据,数据格式为2400,n,8,1,基本上接收十次总有一次收不
到,发送软件是下载丁丁的sscom,试验多次还是不行,请问谁知道是怎么回事,如何解
决?多谢!
第
2
楼:
leech42
2001年12月12日21:57
贴出你的接收代码,我看一下,有可能是你的代码有问题
堆栈设的对吗?
第
3
楼:
wqj
2001年12月12日21:59
代码如下
MOV TMOD,#20H ;设置定时器1为模式2作波特率发生
器
MOV TL1,#0f4H ;设波特率为2400
MOV TH1,#0f4H
SETB TR1 ;定时器1接通工作
MOV SCON,#50H ;设置串行口为模式1
JB P3.4,LOOP ;P3.4为1则跳转至LOOP
MOV A,#11h
SPOUT: MOV SBUF,A
JNB TI,$ ;等待数据发送完成
CLR TI
LOOP: jnb RI,$ ;等待数据接收完成(RI为零则转移)
MOV A,SBUF ;串行数据缓冲器内容送累加器
DEC A
CLR P3.5
SETB P3.5
clr ri
MOV R2,A
ADD A,#224
JNC CON
第
4
楼:
leech42
2001年12月12日22:07
我感觉可能是你的堆栈溢出了。
第
5
楼:
wqj
2001年12月12日22:11
一次只收一个字节的数据,直接传给A,无堆栈
第
6
楼:
寄存器
2001年12月19日09:41
很奇怪?你既有接收,又有发送为什么不用中断做?用查询只要其他地方的循环时间多一点像你这个程序只要查询间隔大于500uS就有出错的可能
>>>>>>对该主题发表你的看法
本主题贴数
6
,分页:
[第1页]
[上一篇主题]:
寻:SIM8051木模拟/调试软件
[下一篇主题]:
硬件:不知各位搞单片机TCP/IP的都是怎么处理ICMP的呀!能谈谈吗???