
本帖最后由 wambob 于 2015-2-16 14:10 编辑 / z( \7 L( O! `& Q+ c1 Y 7 s/ B- O* H/ U9 B* R( h+ K 新手开始学习STM32,一般是看资料,看视频,学习别人的例程,然后模仿,然后理解,最后自己写这一系列过程。我也不例外。视频多了,各有各自的特点。我学习的例程是论坛里的深入浅出STM32-NUCLEO-072RB开发板视频教程资料(PPT+图片+MDK源码) 原帖地址https://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=597508&extra=page%3D1%26filter%3Ddigest%26digest%3D1 从第一个例程1-LED(软件延时).rar开始学习,下载编译,出现许多错误,我用的是MDK5.13. 1.7 d7 z; m. J' ]: f. K: F ^ ..\stm32f072rbt6\core_cm0.h(127): error: #5: cannot open source input file "core_cmInstr.h": No such file or directory #include <core_cmInstr.h> /* Core Instruction Access */2 l0 m" N3 J! A+ w8 e' A K5 ` Y/ N# z 错误提示:不能打开"core_cmInstr.h",下面一行有个头文件,这个错误是缺少头文件。在标准外设库里找到这个文件,添加到MDK源码下的stm32f072rbt6文件夹下,再次编译,又出现7 W/ I, _" i; I ..\stm32f072rbt6\core_cm0.h(128): error: #5: cannot open source input file "core_cmFunc.h": No such file or directory #include <core_cmFunc.h> /* Core Function Access */ 是 不是和上面一个错误相似呢,解决如上,添加头文件后再次编译后 Program Size: Code=2184 RO-data=224 RW-data=36 ZI-data=1028 + ?/ u2 J2 I$ b$ b) C# l, s4 ~: n, _ FromELF: creating hex file... ".\LED.axf" - 0 Error(s), 0 Warning(s). OK,0错误,0警告,下载到072板上就看到实验现象了。 2. ! z$ ^9 |3 Y* l# x5 O7 s9 I UART(printf+查询方式接收).rar 7 V* u8 D: A2 t- I3 \8 y2 d Program Size: Code=4640 RO-data=224 RW-data=44 ZI-data=1028 FromELF: creating hex file... ".\LED.axf" - 0 Error(s), 0 Warning(s).' M2 t7 }/ I( s6 C* j( j% @ 0错误,0警告啊。可是程序里有2个X: ![]() ![]() 虽然程序可以运行,但是追求完美的我,眼里不容X,用鼠标点它,提示:: W# _, A! y7 f error:declaration conflicts with target of using of declaration already in scope 大概意思是 声明冲突了,可我检查了,没发现那里错误啊 ,这个问题困扰了好几天,等到学到ADC的时候,才找到原因# b1 a, c) c$ T! e- j 因为里面的源文件和头文件用的都是.C和.H 改正过来后,OK了。 1 m) O* N8 l- ~# [! J$ }5 m 这些例程真的很不错模块化结构。 |
如果用的NUCLEO ,可以采用原帖串口程序
error:declaration conflicts with target of using of declaration already in scope+ }5 X0 V8 A' H- w
大概意思是 声明冲突了,可我检查了,没发现那里错误啊 ,这个问题困扰了好几天,等到学到ADC的时候,才找到原因
因为里面的源文件和头文件用的都是.C和.H 改正过来后,OK了。! j; S, S1 {+ H N- k
; I, P* r% o$ a2 E9 K! T7 o1 O
这是什么意思呢?能说详细一点点吗,我也是遇到这样的问题
就是你的文件不能是大写的.C和.H,要改成小写的,然后重新添加编译就好了