专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
pwm ad ad采集 串口通讯 PIC16F1827 PROTEUS仿真
2019-03-25 19:00
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
PIC单片机
6667
12
1701
串口通讯 目前遇到的问题是串口通讯接受不正常,可正常发送求大神指点看看那地方不对
附件中有源代码与仿真
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
dingzy_2002
2019-03-26 20:45
看了下程序,目前我看出来的有3个问题:
1.串口接收中断的标志识别与清除:if(RCIE==1 && RCIF==1),这个只要RCIF就可以了,同时可写成if(RCIF)即可;
2.串口接收中断退出还是要将RCIF置0为好(虽然读取缓冲器也可将RCIF置0,但不一定保险);否则容易出现溢出错误,你在程序中也没有作溢出判断的语句。
3.逻辑问题?:是不是要在串口接收中接收20个字节后,再处理数据?如果是则:
if(RCREG_Cnt>19) //超过缓冲区
RCREG_Cnt=19;
FlagRc=1; 3. //通知单片机正在接收
RcCnt=0;
RCIE=1;
这段就显得不太正常,要不要重新理解下?
加载中...
查看其它12个回答
一周热门
更多
>
相关问题
相关文章
一种用PIC单片机主时钟驱动的老式挂钟
0个评论
单片机程序必知的几个寄存器
0个评论
单片机 矩阵式按键
0个评论
51单片机上移植C语言的printf()
0个评论
STC89C52MCU--软件实现系统复位
0个评论
单片机C语言程序该这样写!不是教科书上教的那样!转[]
0个评论
单片机并行I/O口(P0)硬件结构
0个评论
壹:单片机的内部资源
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
1.串口接收中断的标志识别与清除:if(RCIE==1 && RCIF==1),这个只要RCIF就可以了,同时可写成if(RCIF)即可;
2.串口接收中断退出还是要将RCIF置0为好(虽然读取缓冲器也可将RCIF置0,但不一定保险);否则容易出现溢出错误,你在程序中也没有作溢出判断的语句。
3.逻辑问题?:是不是要在串口接收中接收20个字节后,再处理数据?如果是则:
if(RCREG_Cnt>19) //超过缓冲区
RCREG_Cnt=19;
FlagRc=1; 3. //通知单片机正在接收
RcCnt=0;
RCIE=1;
这段就显得不太正常,要不要重新理解下?
一周热门 更多>