找回密码
 立即注册
查看: 57|回复: 4

STC8G2K64S4仿真异常

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-11-27 08:11:13
已绑定手机

1

主题

2

回帖

15

积分

新手上路

积分
15
发表于 2025-11-26 09:37:14 | 显示全部楼层 |阅读模式
第一次进行仿真,参考网络和论坛资料进行操作,进入仿真就这样了
screenshot_2025-11-26_09-35-32.png
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-11-27 08:11:13
已绑定手机

1

主题

2

回帖

15

积分

新手上路

积分
15
发表于 2025-11-26 09:38:20 | 显示全部楼层
有没有朋友能够为我解答疑惑啊!谢谢!
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:251
  • 最近打卡:2025-12-15 08:50:03

16

主题

717

回帖

3719

积分

超级版主

积分
3719
发表于 2025-11-26 09:42:09 | 显示全部楼层
仿真STC8,【USB Link1D】支持32G/8H/8G/8A系列仿真及下载 !视频讲解
https://www.stcaimcu.com/thread-752-1-1.html
(出处: 国芯人工智能技术交流网站)

鉴于部分坛友在仿真过程中会遇到仿真失败的问题,总结可能导致的原因如下:
1.  制作完仿真芯片后没有重新给 MCU 进行上电复位,就开始仿真。
     制作完仿真芯片后必须停电再上电,新的设置项[仿真芯片]才会生效
2.  如果使用 U8W/U8W -Mini 进行仿真的话,需要先设置“直通模式” ,
     具体方法参考官网https://www.stcai.com/gjrj 工具使用说明5.9 章节介绍。
3.  仿真程序不能使用 P3.0/P3.1 口。仿真监控程序占用 P3.0/P3.1 口,但不占用串口 1,用户可以将串口 1 切换到其它通道再使用。
4.  仿真监控程序占用内部扩展 RAM(XDATA)的最后 768 字节,如果程序使用 XDATA+768 字节大于芯片 XDATA 的上限,也会出错。
5.  不能仿真时钟/复位相关的功能。例如程序里面不能修改系统时钟频率,不能开启看门狗,不能进入休眠/空闲模式。
6.  P3.0/P3.1 口数据受到干扰。 仿真通过 P3.0/P3.1 口与 KEIL 驱动进行通信, 如果数据受到干扰会导致仿真出错。故障排查参考:
1)  使用优质的 USB 线、串口工具与目标板连接线;
2)  P3.0/P3.1 口外围电路上不要接影响通信的元器件;
3)  如果使用台式机的话,连接机箱背后的 USB 接口,尽量不要使用延长线;
4)  板子上如果有电机等干扰比较大的器件,仿真之前先断开。
7.   如果不是用STC-USB Link1D进行SWD仿真 ,那么不能进行 单步仿真 DPTR
8. 使用串口或USB仿真时,当停止运行用户代码时,定时器0~4会全部停止。此时和定时器相关的硬件都会停止,
   包括串口时钟、定时器中断、定时器时钟输出等。
9.芯片的时钟不能在仿真的时候(Keil中)修改,如果需要设置时钟的话,可以在烧录时通过硬件选项进行设置。

回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:644
  • 最近打卡:2025-12-15 07:35:15
已绑定手机

93

主题

6920

回帖

1万

积分

超级版主

积分
12993
发表于 2025-11-26 10:37:56 | 显示全部楼层
新手必读:
https://www.stcaimcu.com/thread-16535-1-1.html
C语言、汇编语言、编译器、仿真问题:
包含startup.a51时,默认会初始化data(也是idata的低128字节)为0,xdata不操作为上电随机数;不包含startup.a51时,data和xdata为上电随机数
全局变量不能在声明时赋值,赋值的语句必须在函数内,程序只能在函数内执行,函数外的赋值语句无效
数组可以在初始化时用memset函数全部清零(或其他初始化值)
养成好习惯,函数内的局部变量也不要声明时赋值,而且必须在函数开头声明
制作完仿真芯片必须重新上电才可以正常仿真
如使用 U8W/U8W -Mini 进行仿真,需要先设置“直通模式”

工具使用说明书.pdf
仿真时注意不要勾选“当目标文件变化时自动装载并发送下载命令”,否则当重新编译后,就会正常下载一次,导致仿真程序被覆盖掉,从而无法继续仿真

仿真程序占用P3.0/P3.1口,但不占用串口1,用户程序可以将串口1切换到其它IO使用
仿真监控程序占用内部扩展RAM(XDATA)的最后768字节,程序使用XDATA+768字节不能大于芯片XDATA的容量
不能仿真时钟/复位相关的功能,例如程序里面不能修改系统时钟频率,不能开启看门狗,不能进入休眠/空闲模式
仿真通过P3.0/P3.1口与 KEIL 驱动进行通信,如P3.0/P3.1口数据受到干扰可能会导致仿真异常(如接触不良、P30/P31接了其他电路等)
单步仿真DPTR只能使用USB Link1D通过SWD仿真
使用USB或UART仿真,当停止运行用户代码时,定时器0~4会全部停止,此时和定时器相关的硬件都会停止,包括串口时钟、定时器中断、定时器时钟输出等
芯片的时钟不能在仿真时(Keil中)修改,只能在烧录时通过硬件选项设置
USB或UART仿真时,全速运行不能实时更新变量的值,因为USB或UART仿真是软件完成的,全速运行时CPU完全在执行用户程序,无法同时运行仿真程序,如此时运行仿真程序,就会影响用户程序的全速运行,所以不支持在全速运行时实时更新变量的值
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-11-27 08:11:13
已绑定手机

1

主题

2

回帖

15

积分

新手上路

积分
15
发表于 2025-11-26 10:50:13 | 显示全部楼层
AI*** 发表于 2025-11-26 09:42
仿真STC8,【USB Link1D】支持32G/8H/8G/8A系列仿真及下载 !视频讲解
https://www.stcaimcu.com/thread-75 ...

已经按照上述尝试修改了,仍然是当前现象
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-12-16 06:29 , Processed in 0.106109 second(s), 67 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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