问题出现原因
core_cm3.h
文件中使用了IRQn_Type
类型名,但是此类型名是在stm32f10x.h
中定义的,所以需要在core_cm3.h"
头部加上#include "stm32f10x.h"
…
但是stm32f10x.h
中的IO 定义(__I, __O, __IO)又在core_cm3.h
中, 所以还会报错, 再加一步把core_cm3.h
中的IO definitions迁移到stm32f10x.h
, 问题算是暂时解决了.
解决方案
-
在"core_cm3.h"中包含"stm32f10x.h"
-
把"core_cm3.h"中的IO definitions迁移到"stm32f10x.h"