找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

请问为什么stc8A系列单片机和ds1302通信,会出现串口数据问号?

查看数: 3457 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-1-29 12:52

正文摘要:

连接上了ds1302模块,时间会随机在中间出??这种。 #include <stc8.h> #define uchar unsigned char #define uint  unsigned int //DS1302引脚定义,可根据实际情况自行修改端口定义 sbit RST= ...

回复

ID:115204 发表于 2021-2-9 07:25
guo007888 发表于 2021-2-8 21:14
我也出现同样问题有没代码可以参考一下

适当加延时即可
ID:282251 发表于 2021-2-8 21:14
我也出现同样问题有没代码可以参考一下
ID:168165 发表于 2021-1-31 12:39
wulin 发表于 2021-1-30 16:11
1T单片机1个_nop_();延时就可以了。如果用到串口,系统时钟要选11.0592或是其整数倍,否则波特率误差大也 ...

您好,果然是那个情况,加了好多延时解决了
ID:213173 发表于 2021-1-30 16:11
无穷小量 发表于 2021-1-29 20:29
请问是延时两个时钟周期吗?我不太懂大概多长时间,我把定时器调成12T的

1T单片机1个_nop_();延时就可以了。如果用到串口,系统时钟要选11.0592或是其整数倍,否则波特率误差大也容易出错。Delay_xms也要改为for(j=0;j<830;j++);。
ID:168165 发表于 2021-1-29 20:29
wulin 发表于 2021-1-29 17:06
stc8速度太快,端口置位后至少延时两个时钟等待稳定再读,否则易出错。

请问是延时两个时钟周期吗?我不太懂大概多长时间,我把定时器调成12T的
ID:213173 发表于 2021-1-29 17:06
stc8速度太快,端口置位后至少延时两个时钟等待稳定再读,否则易出错。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表