硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1745|回复: 5
收起左侧

使用STM8遇到的一个问题

[复制链接]

3

主题

8

回帖

17

积分

新手上路

积分
17
发表于 2018-7-31 18:53:29 | 显示全部楼层 |阅读模式
问题是这样的,我在使用STM8L的时候,定义了一个全局变量A,只在初始化的时候赋了一个初值A=5,在整个程序生命过程中,没有任何一个地方改变这个初值。目前遇到在程序运行中,读出的这个A的值为0,请问是否可以确定为内存溢出或者其他什么问题
有遇到类似情况的吗,求指导

回复

使用道具 举报

65

主题

432

回帖

632

积分

金牌会员

积分
632
发表于 2018-7-31 21:57:28 | 显示全部楼层
这个变量在整个程序里都没有用到,有可能被编译器优化掉了
回复

使用道具 举报

3

主题

8

回帖

17

积分

新手上路

积分
17
 楼主| 发表于 2018-8-1 08:45:47 | 显示全部楼层
taobaofarmer 发表于 2018-7-31 21:57
这个变量在整个程序里都没有用到,有可能被编译器优化掉了

这个变量在后面的程序中用到了,只读不写。问题找到了
回复

使用道具 举报

3

主题

8

回帖

17

积分

新手上路

积分
17
 楼主| 发表于 2018-8-1 08:47:32 | 显示全部楼层
问题找到了,应该是内存溢出,导致有一些变量被清零了。把程序中定义的一些数组大小改小之后,就正常了。顺便说一下,stm8l152c6的RAM只有2K
回复

使用道具 举报

65

主题

432

回帖

632

积分

金牌会员

积分
632
发表于 2018-8-1 12:32:06 | 显示全部楼层
本来就是2K RAM呀,你用的时候没考虑内部RAM大小吧
回复

使用道具 举报

3

主题

8

回帖

17

积分

新手上路

积分
17
 楼主| 发表于 2018-8-1 14:36:41 | 显示全部楼层
taobaofarmer 发表于 2018-8-1 12:32
本来就是2K RAM呀,你用的时候没考虑内部RAM大小吧

考虑了,但是功能越设计越复杂,就慢慢不够了
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-28 15:33 , Processed in 0.165040 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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