打印

stm8 全局变量问题

[复制链接]
5012|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shoecat|  楼主 | 2011-3-13 10:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 shoecat 于 2011-3-13 10:16 编辑

我用的是stm8的芯片,通过如下方式定义了一个全局变量:data_tmp;
unsigned char data_tmp = 0x09;

void data_tmp_senddata(void)
{
data_tmp = 0x0A;//在此设置了个断点
}

void main(void)

//....
data_tmp_senddata();
  open_speaker();
data_tmp_senddata();


我在data_tmp_senddata函数中设置了个断点,发现:进入时都会对data_tmp赋初值:0x09。即:data_tmp的值变化过程如下:0x09(全局初值),0x0A(执行完data_tmp = 0x0A),0x09(再次进入data_tmp_senddata函数),0x0A(再次执行完data_tmp = 0x0A)
谁知道是什么原因呢?全局变量不是这么用的吗?
沙发
shoecat|  楼主 | 2011-3-13 10:24 | 只看该作者
不好意思,是我自己调试手段没搞明白,每次都按了Run引起的。

使用特权

评论回复
板凳
jgphu| | 2011-3-15 10:30 | 只看该作者
呵呵。对调试工具界面还是要多了解啊。

使用特权

评论回复
地板
liangfengfei| | 2014-10-28 18:00 | 只看该作者
顶一个!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

54

帖子

1

粉丝