标题: 51单片机串口遇到点麻烦,请教一下 未发数据,RI会在程序运行中自动置1 [打印本页]

作者: jc_lovechao    时间: 2015-5-5 15:15
标题: 51单片机串口遇到点麻烦,请教一下 未发数据,RI会在程序运行中自动置1
按图所示程序,在我未发送数据前,先执行1,再执行2,也就是说我未发数据,RI会在程序运行中自动置1,但是当串口设置改为用SCON字节整体设置时就没有该问题了,请问这是为什 么

0)]{5G$LQB[O0`G84RSU5OY.png (23.93 KB, 下载次数: 185)

0)]{5G$LQB[O0`G84RSU5OY.png

作者: ahshmj    时间: 2015-5-6 09:32
本帖最后由 ahshmj 于 2015-5-6 11:53 编辑

当你没有用“SCON字节整体设置”时,用的是什么方法?什么语句?之前低4位有没有被置位?然后有没有清零?
作者: jc_lovechao    时间: 2015-5-6 19:20
ahshmj 发表于 2015-5-6 09:32
当你没有用“SCON字节整体设置”时,用的是什么方法?什么语句?之前低4位有没有被置位?然后有没有清零?

不用SCON,我把REN=1放在SMO/SM1后面,就可以了。但不知道什么原因?
作者: jc_lovechao    时间: 2015-5-6 19:20
gu_llong 发表于 2015-5-6 14:48
你仔细看看SCON里的每一位代表什么意思就知道了。看看你还没有 入门啊

不用SCON,我把REN=1放在SMO/SM1后面,就可以了。但不知道什么原因?
作者: jc_lovechao    时间: 2015-5-8 09:23
gu_llong 发表于 2015-5-7 16:31
呵呵,你串口中断打开了吗...........

目前用的是查询法,没用中断;即使用了中断,也是这个问题
作者: fengxueye1227    时间: 2015-11-10 09:33
我也遇到了同样的问题,求解
作者: 传说是猫    时间: 2016-4-23 09:53
你把REN放在SM0/SM1前面配置,说明,串口准备接收是在方式0的状态下,从这个时候起这个时候串口已经在接收了,参考方式0接收电路及时序,RI处于置位状态,清零RI后开始同步接收信号。然而你要是整体配置SCON就不会出现这种情况




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1