宁阳刘德华 发表于 2026-4-13 04:30:30

ercircle 发表于 2026-4-12 21:57
不要用b,b有特殊含义

B好像是乘除法用的吧,高手{:baoquan:}

Ayb_ice 发表于 2026-4-13 08:27:12

Rex_D8sA0 发表于 2026-4-11 08:19
只是初始化时候赋值,还没进入main函数。变量默认就是被分配在xdata区域,xdata区域的变量出现u32赋值就 ...

是不是没有正确配置启动文件,正确配置了XDATA才会被初始化0

Rex_D8sA0 发表于 2026-4-13 09:43:31

ercircle 发表于 2026-4-12 21:57
不要用b,b有特殊含义

我不知道该怀疑什么了,换了三片demo板,keil V5里面的C51编译器(代码优化级别level0),lx51链接器,工具链是PK51 Prof Dev-Kit V9.60.7.0,下载器usb转ttl CH340(尝试过多个串口),有点崩溃了~~~

Rex_D8sA0 发表于 2026-4-13 09:45:34

Ayb_ice 发表于 2026-4-13 08:27
是不是没有正确配置启动文件,正确配置了XDATA才会被初始化0

STC官网下载的STC8G KEIL工程,只修改了代码,没动过配置项,编译没错误。
大佬,需要再在哪里配置哪些启动文件

ercircle 发表于 2026-4-13 09:53:22

Rex_D8sA0 发表于 2026-4-13 09:45
STC官网下载的STC8G KEIL工程,只修改了代码,没动过配置项,编译没错误。
大佬,需要再在哪里配置哪些启 ...


试了下lx51和level 0也没问题。
看下keil版本和isp版本一样吗?isp重新导入仿真驱动



Rex_D8sA0 发表于 2026-4-13 10:01:42

ercircle 发表于 2026-4-13 09:53
试了下lx51和level 0也没问题。
看下keil版本和isp版本一样吗?isp重新导入仿真驱动



isp几个版本都试过,ISP导入和下载设置都设置过,keil里面的仿真设置也设置过串口,115200,设置不对,没法启动debug的

ercircle 发表于 2026-4-13 10:04:18

Rex_D8sA0 发表于 2026-4-13 10:01
isp几个版本都试过,ISP导入和下载设置都设置过,keil里面的仿真设置也设置过串口,115200,设置不对,没 ...

看着有点旧,仿真驱动后来更新过,试下最新的:

https://www.stcaimcu.com/data/download/Tools/AiCube-ISP-v6.96U.zip

Rex_D8sA0 发表于 2026-4-13 10:44:05

ercircle 发表于 2026-4-13 10:04
看着有点旧,仿真驱动后来更新过,试下最新的:

https://www.stcaimcu.com/data/download/Tools/AiCube- ...

试过了,还是一样的现象,没变化。
我觉得可能是楼上那个大佬说的,需要配置xdata长度,但是我试了一下在startup.a51配置,软件初始化就开始跑,然后会跑飞,无法正常debug

https://www.stcaimcu.com/forum.php?mod=viewthread&tid=16535,看这篇文章,xdata变量初始化随机数的问题理解了,但是xdata u32赋值会导致其他xdata变量成为随机数,还是没解~~

ercircle 发表于 2026-4-13 10:53:08

Rex_D8sA0 发表于 2026-4-13 10:44
试过了,还是一样的现象,没变化。
我觉得可能是楼上那个大佬说的,需要配置xdata长度,但是我试了一下在 ...

这些我没动,试下我这个工程:

Rex_D8sA0 发表于 2026-4-13 11:48:09

ercircle 发表于 2026-4-13 10:53
这些我没动,试下我这个工程:

你的工程完全没有问题。


我的工程是从官网下载的,是基于《综合例程》做的分支,我尝试了一下官网下载的《综合例程》调整成24Mhz,stc8g1k08a做debug,你的那几行测试代码拷贝过去,其他不做任何修改,现象和我的工程一样的,1、初始化的赋值无效;2、u32赋值,导致其他xdata变量成为随机数。

页: 1 2 [3] 4
查看完整版本: STC8G1K08A Keil5所有变量都成了随机数