你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1050|回复: 0

求助,STM8寄存器配置值被自动修改的奇怪问题!

[复制链接]

1

主题

0

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2014-5-17 20:06:26 | 显示全部楼层 |阅读模式
     我在开发一个电机控制程序,STM8105S的GPIO在main函数的开始便进行了一次配置,除TLI(PD7)管脚外,其他所有的输入Port口均禁能外部中断。剩下的代码中,没有任何对 GPIO的输入输出、外部中断控制寄存器做配置的操作。
     可是发现了一个奇怪的问题:我的代码跑到一定时间后,突然进入了INTERRUPT_HANDLER(EXTI_PORTE_IRQHandler, 7)的外部中断处理程序,并且一直死在其中,不能跳出。于是此时我通过单步调试查了一下GPIOE的寄存器配置,发现GPIOE的配置被修改了!允许外部中断了。可我真的没有开放过GPIOE的外部中断,似乎是寄存器的值自动被篡改。调试中也还发现,每次调试被篡改的值还不一样。
     我一直在想,是不是因为我的变量定义太多了(我有一个8位400个元素的数组,还有其他一些变量),导致堆栈溢出,从而影响了寄存器的值呢?一直不解,希望高手解答一下!谢谢!
回复

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版