再谈PIC16F877A串口问题!

[复制链接]
4168|3
 楼主| guiyang 发表于 2009-3-9 11:19 | 显示全部楼层 |阅读模式
PIC单片机初次使用,在做串口通讯程序时发现PIC串口不是想像中那么好用,不知道是我使用不当还是本身芯片问题,在这里请求熟悉人士告知!<br />实验过程好下:<br />晶振11.0592M,波待率9600<br />情况1:<br />上位机串口调试软件自动发送,周期发送时间分别在1000MS、100MS、10MS、1MS下进行,发送数据从1个字节到9个字节,<br />周期发送时间在1000MS时数据一次发送数据最多为9个字节,发一次后串口无法再接收数据,除非重启动单片机,数据少9个时通讯正常,在100MS、10MS下通讯数据会更少,但情况相同,不在重复。<br />如果周期发送时间在1MS时发送一个数据都可能使用串口无法正常工作,<br /><br />情况2:<br />在单片机初始化串口通讯后处于等待启动状态,但不接收数据,在此时上位串口开始发送数据(只点一次发送),之后再启动单片机进行数据接收程序,单片机串口无法正常工作,相同的程序如果反过来单片机工作正常,先让单片机进入串口数据接收程序,再用上位机发送数据!
李冬发 发表于 2009-3-19 12:39 | 显示全部楼层

程序问题啊

  
林粼粼 发表于 2009-3-20 23:24 | 显示全部楼层

程序的问题

你那是接收溢出了
ocon 发表于 2009-3-22 22:11 | 显示全部楼层

楼主没仔细看数据手册,

串口接收缓冲区溢出是要通过软件来复位的,一旦溢出则不再接收新数据,你看一下溢出标志位的状态就明白了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

32

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部