leolei 发表于 2025-6-18 12:00:37

仿真LED 不亮





仿真P20不亮,烧录亮

leolei 发表于 2025-6-18 12:01:30

attach://104986.jpg

leolei 发表于 2025-6-18 12:02:16

仿真P20亮

leolei 发表于 2025-6-18 12:02:35

不知为什么?

leolei 发表于 2025-6-18 12:04:10

路径一样

DebugLab 发表于 2025-6-18 15:13:33

仿真与实际运行不一致,检查仿真是否有问题
可以尝试更新ISP软件到最新版,并更新头文件和仿真器驱动,重新制作仿真芯片(注意重新上电生效),更新下载器固件
新手必读:
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 进行仿真,需要先设置“直通模式”
仿真时注意不要勾选“当目标文件变化时自动装载并发送下载命令”,否则当重新编译后,就会正常下载一次,导致仿真程序被覆盖掉,从而无法继续仿真
仿真程序占用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完全在执行用户程序,无法同时运行仿真程序,如此时运行仿真程序,就会影响用户程序的全速运行,所以不支持在全速运行时实时更新变量的值
页: [1]
查看完整版本: 仿真LED 不亮