中级会员
 
- 积分
- 297
- 金钱
- 297
- 注册时间
- 2016-8-10
- 在线时间
- 51 小时
|
用IAR7.1开发环境,使用 NVIC_SystemReset();函数进行复位,发现有时候会出现卡死现象,现在 在前面加入 __set_FAULTMASK(1);函数,但是go to definition 发现 是进入intrinsic.h文件 #ifdef __ARM7__/* These are only available for v7M */__ATTRIBUTES unsigned long __get_FAULTMASK( void );__ATTRIBUTES void __set_FAULTMASK(unsigned long);__ATTRIBUTES unsigned long __get_BASEPRI( void );__ATTRIBUTES void __set_BASEPRI( unsigned long );
__set_FAULTMASK这个函数应该是在core.h文件中,但是 用3.5的库的话 就和intrinsic.h文件不兼容,所以就用ST给的解决办法 在IAR option中选择 USE CMSIS,这样的话 __set_FAULTMASK(1)就跑到了intrinsic.h中了,而core.h没有这个函数,这样的话复位有作用没?还有之前仅仅执行NVIC_SystemReset()为什么会进入卡死呢?
|
|