找回密码
 立即注册
查看: 111|回复: 6

请教一个关于使用串口仿真的问题

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:31
  • 最近打卡:2025-12-16 08:01:32
已绑定手机

2

主题

10

回帖

140

积分

注册会员

积分
140
发表于 2025-11-27 16:41:17 | 显示全部楼层 |阅读模式
本人是刚接触STC8H单片机不久,今天想尝试下STC-ISP软件中的keil仿真功能来排查线路板问题,已经按照说明步骤安装仿真驱动,设置目标芯片,并且也重新上电。但是一直提示如下图的错误。Keil中的设置是正确的。使用的仿真器不是官方的透明外壳的仿真器,是价格便宜的STC下载器。希望来位大佬解答下这个问题。 仿真是不是只能使用官方的仿真器。



截图202511271634492880.jpg
截图202511271637131732.jpg

STC下载器

STC下载器
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:31
  • 最近打卡:2025-12-16 08:01:32
已绑定手机

2

主题

10

回帖

140

积分

注册会员

积分
140
发表于 2025-11-27 16:44:37 | 显示全部楼层
我一启动调试仿真就报错,确认过STC-ISP中IRC频率与程序设置的工作频率一致。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:252
  • 最近打卡:2025-12-16 13:14:45

16

主题

720

回帖

3727

积分

超级版主

积分
3727
发表于 2025-11-27 16:49:20 | 显示全部楼层
建议使用官方工具
【仿真】仿真注意事项总结 | 大家帮继续总结
https://www.stcaimcu.com/thread-108-1-1.html
(出处: 国芯人工智能技术交流网站)


回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:645
  • 最近打卡:2025-12-16 08:20:22
已绑定手机

93

主题

6932

回帖

1万

积分

超级版主

积分
13007
发表于 2025-11-27 17:01:05 | 显示全部楼层
各种ISP下载问题:
建议使用官方下载工具,或使用官方开源方案自制下载器,不要使用第三方下载工具
官方下载工具及下载器方案免安装驱动(win10或以上),支持双串口同时下载通信仿真,自动断电上电,固件可更新,IO模式可设置
且TXD(S-RXD)不需要串二极管,冷启动断电期间IO强下拉确保可靠放电
如使用485下载等非要串二极管的应用场合,必须串低压降的肖特基二极管(压降0.2~0.3V),不能串普通硅二极管(压降0.6~0.7V),否则可能导致下载失败
官方下载工具及下载器方案有出厂预置常用频率的IRC参数,即使无外部晶振也能保证波特率精度高,可以满足动态调节IRC频率的要求
第三方下载工具一般为了节省成本无外部晶振,波特率误差较大,仅可满足串口通信要求(还是单串口不是双串口),不建议用于下载
还有需要安装驱动、无自动断电上电功能或自动断电上电功能不可靠、TXD推挽输出无法彻底放电等问题
动态调节IRC频率是根据串口波特率调节内部高频时钟频率的,除列表中的常用频率外,还可以自定义频率(手动输入)
如选择该选项,必须保证波特率精度高,否则会导致内部高频时钟频率误差大或下载失败
USB下载必须确保USB两根信号线接好,P32接低电平,再上电,不能用按下P32按键再插USB连接器的方式下载,因为不能确保最后接通VCC
这和一般的USB设备不同,一般的USB设备要求先接通电源再接通信号
可以观察到USB Type-A插头中两边的电极较长,就是为了先接通电源再接通信号,所以按下P32按键再插USB Type-A连接器99%概率不能正常下载
而USB Type-C连接器的电极都是一样长的,50%概率不能正常下载
USB下载无法动态调节频率,只能使用内部预置频率

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完全在执行用户程序,无法同时运行仿真程序,如此时运行仿真程序,就会影响用户程序的全速运行,所以不支持在全速运行时实时更新变量的值

新手必读:
https://www.stcaimcu.com/thread-16535-1-1.html
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:583
  • 最近打卡:2025-12-16 08:55:36

33

主题

2769

回帖

6230

积分

论坛元老

积分
6230
发表于 2025-11-27 17:18:54 | 显示全部楼层
转换器的话,别用这个转换器供电,,,我记得这个USB连接的时候会断一下电。。。其他的无所谓,我们用自制的485转换器都可以仿真(我们的设备P30 P31上有485电路)。
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:31
  • 最近打卡:2025-12-16 08:01:32
已绑定手机

2

主题

10

回帖

140

积分

注册会员

积分
140
发表于 2025-11-27 17:23:38 | 显示全部楼层
AI*** 发表于 2025-11-27 16:49
建议使用官方工具
【仿真】仿真注意事项总结 | 大家帮继续总结
https://www.stcaimcu.com/thread-108-1-1.h ...

看过这个帖子了,但是找不到我这个问题的解决方案
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:31
  • 最近打卡:2025-12-16 08:01:32
已绑定手机

2

主题

10

回帖

140

积分

注册会员

积分
140
发表于 2025-11-27 17:29:19 | 显示全部楼层
_奶*** 发表于 2025-11-27 17:18
转换器的话,别用这个转换器供电,,,我记得这个USB连接的时候会断一下电。。。其他的无所谓,我们用自制 ...

我今天还在想这个下载器没有重新上电按钮怎么进isp,可能内部是自动通断电
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-12-16 18:21 , Processed in 0.110137 second(s), 74 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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