找回密码
 立即注册
查看: 70|回复: 8

向高手请教:《8051U深度入门到32位51大型实战教学视频》第九集做实验时发现跳码。

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-21 15:10:03 | 显示全部楼层 |阅读模式
向高手请教。
学习《8051U深度入门到32位51大型实战教学视频》第九集后,按照视频中内容用擎天柱核心板做实验,发现实现时钟在仿真接口的数码管上显示时出现随机跳码。
程序源代码如下:
ex9.rar (91.32 KB, 下载次数: 0)
跟踪仿真接口收的数据为:
截图202504211505239625.jpg
仿真接口收的数据也放到程序代码目录下的receive.bin文件中了。

发现擎天柱核心板中的程序发送给仿真接口的数据随机出现出现重复一条的现象,这造成眼见的显示效果是跳码。
请高手帮着看看问题出在哪里。
先谢谢高手的回复与帮助!

学习MCU
回复

使用道具 举报 送花

3

主题

1160

回帖

1031

积分

等待验证会员

积分
1031
发表于 2025-4-21 15:12:00 | 显示全部楼层
根据您描述的问题,在《8051U深度入门到32位51大型实战教学视频》第九集的实验中出现数码管显示跳码现象,这通常与以下几个方面的原因有关:

1. 时序问题
原因分析:8051U系列微控制器的时钟频率和数码管刷新频率可能存在不匹配的情况。如果数码管的刷新频率过高或过低,可能会导致数据在传输过程中出现重复或丢失,从而引起跳码现象。
解决方案:检查程序中数码管刷新的时序设置,确保刷新频率与硬件要求匹配。可以通过调整定时器的计数值或延时函数来优化刷新频率。

2. 数据发送与接收的同步问题
原因分析:在仿真接口中,数据的发送和接收可能存在同步问题。如果发送端在未完成上一次数据发送时就开始下一次发送,或者接收端未能及时处理接收到的数据,都可能导致数据重复或丢失。
解决方案:确保数据发送和接收的同步性。可以在发送数据前加入状态检查,确保上一次数据发送完成后再进行下一次发送。同时,接收端应设置适当的缓冲区,确保数据能够及时处理。

3. 硬件连接问题
原因分析:硬件连接不稳定或接触不良也可能导致数据在传输过程中出现异常。例如,仿真接口与核心板之间的连接线松动或接触不良,可能导致数据重复或丢失。
解决方案:检查硬件连接,确保所有连接线牢固可靠。可以使用万用表测量连接线的导通性,排除硬件连接问题。

4. 程序逻辑错误
原因分析:程序逻辑错误可能导致数据发送或处理过程中出现异常。例如,循环结构中的条件判断错误,可能导致数据重复发送。
解决方案:仔细检查程序逻辑,特别是与数据发送和处理相关的部分。可以通过单步调试或添加调试信息来定位问题所在。

5. 仿真环境问题
原因分析:仿真环境本身可能存在bug或不稳定性,导致数据在仿真过程中出现异常。
解决方案:尝试在不同的仿真环境中运行程序,或者直接在硬件上运行程序,以排除仿真环境的问题。

6. 电源稳定性
原因分析:电源不稳定可能导致微控制器工作异常,从而引起数据发送或接收错误。
解决方案:检查电源供应,确保电压稳定。可以使用示波器观察电源波形,排除电源问题。

7. 中断处理问题
原因分析:如果程序中使用了中断,中断处理不当可能导致数据发送或接收过程中出现异常。例如,中断优先级设置不当,可能导致中断嵌套或中断丢失。
解决方案:检查中断处理程序,确保中断优先级设置合理,中断处理逻辑正确。

8. 数据缓冲区溢出
原因分析:如果数据缓冲区设置过小,可能导致数据溢出,从而引起数据重复或丢失。
解决方案:检查数据缓冲区的大小,确保缓冲区足够大以容纳所有数据。可以适当增加缓冲区大小,或者优化数据发送和处理逻辑,避免缓冲区溢出。

9. 软件版本兼容性
原因分析:使用的开发工具或库版本可能与硬件或仿真环境不兼容,导致程序运行异常。
解决方案:检查开发工具和库的版本,确保与硬件和仿真环境兼容。可以尝试更新到最新版本,或者使用已知兼容的版本。

10. 调试与排查
建议:在排查问题时,可以采用逐步排除法。首先从最简单的硬件连接和电源稳定性开始检查,然后逐步深入到程序逻辑和仿真环境。通过单步调试、添加调试信息、观察波形等方法,可以更有效地定位问题。

总结
跳码问题可能由多种原因引起,包括时序问题、数据同步问题、硬件连接问题、程序逻辑错误、仿真环境问题、电源稳定性、中断处理问题、数据缓冲区溢出以及软件版本兼容性等。建议您按照上述步骤逐一排查,找到问题的根本原因并进行相应的调整和优化。

希望这些建议能帮助您解决问题。如果问题仍然存在,建议您提供更详细的程序代码和硬件配置信息,以便进一步分析和诊断。祝您实验顺利!

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2025-4-21 15:37:31 | 显示全部楼层

错误字节0和1都是连续的,疑似受到干扰
截图202504211537012829.jpg
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-21 17:55:11 | 显示全部楼层
Debu*** 发表于 2025-4-21 15:37
错误字节0和1都是连续的,疑似受到干扰

能再详细说一下哪方面的干扰吗?
擎天柱核心板通过一条Type-C的线与笔记本电脑相连。
电磁干扰我觉得可能性不算大。
程序代码方面我分析不出这种随机的重发数据可能的原因。

另外,我将RTC降为20M问题依旧。
在跟踪的接收数据中发现66和5B的重发信息。
请见接收的数据: receive.bin (11.14 KB, 下载次数: 1)




点评

UART中一个干扰脉冲对应多个bit时间,就是这种错误数据,USB有校验机制不应该出现这个问题  详情 回复 发表于 2025-4-21 22:27
学习MCU
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-21 19:02:14 | 显示全部楼层
看到Ai8051U库函数有20250421版本,替换原来4月8日版本,问题依旧。
学习MCU
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2025-4-21 22:27:06 | 显示全部楼层
我心*** 发表于 2025-4-21 17:55
能再详细说一下哪方面的干扰吗?
擎天柱核心板通过一条Type-C的线与笔记本电脑相连。
电磁干扰我觉得可能 ...

UART中一个干扰脉冲对应多个bit时间,就是这种错误数据,USB有校验机制不应该出现这个问题
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-21 22:42:45 | 显示全部楼层
Debu*** 发表于 2025-4-21 22:27
UART中一个干扰脉冲对应多个bit时间,就是这种错误数据,USB有校验机制不应该出现这个问题 ...

谢谢你这么晚还回我的问题。
我重新整理了代码,继续做学习视频第十集的实验,还是有这个问题。
你的解释我暂时还不理解。
难道是MCU出问题了?
学习MCU
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-21 23:18:36 | 显示全部楼层
实验了一下,将笔记本电源适配器拔掉,笔记本只用电池供电,这样应该排除了可能的交流电的影响,还是不行。
学习MCU
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

333

积分

中级会员

积分
333
发表于 2025-4-22 00:23:03 | 显示全部楼层
将显示时钟的程序代码放到流水灯任务循环中,1秒钟流水灯向前移动一位正常,可是显示时钟还是不正常,跟踪虚拟接口接收的信息,还是有随机重复发送的现象,只重复发一次。
学习MCU
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 02:30 , Processed in 0.132478 second(s), 103 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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