stm32编译时出现 error: #35: #error directive: "Please select first the target STM32F10x device used
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32编译时出现 error: #35: #error directive: "Please select first the target STM32F10x device used相关的知识,希望对你有一定的参考价值。
是什么原因
我以前做工程的时候也出现过这样的错误,我用的MDK3.5,你现在用该是用MDK4.12了吧,不管什么版本的吧,做工程的时候得先选择你的CPU型号,如果没有选择应该会出现如上的错误,选择错误的话,会根绝你的工程弹出不同的提示,比如,ROM 不足,FLASH ERROR等错误。还有一种可能就是你的初始化文件,我指的是MDK里DEBUG的初始化文件选择有问题。你先试试吧,如果不行,可以说一下你的CPU型号,和MDK版本号,以及工程的特殊性,大家也好帮你分析! 参考技术A要看你的那个程序是复制过去的还是照抄过去的?
keil编写STM32需要配置工程,加入大量头文件:
右键点击工程名,选择第一个options for target ,下面选择C/C++,在define文本框中输入:
USE_STDPERIPH_DRIVER,STM32F10X_MD。MD根据你选择的机种更换为LD或HD
也可能是send()的声明有错误,在ADS中,send无参数传递时括号里面应该加个void,这样这个warming问题就解决了,而在keilc中里面是可以不加这个void的,这就是ads1.2和keil3的一点差别了。
参考技术B我板子的CPU是stm105k4,其它cpu则同理更换下型号及对应头文件就好了。
参考技术C 右键点击工程名,选择第一个options for target ,下面选择C/C++,在define文本框中输入:USE_STDPERIPH_DRIVER,STM32F10X_MD。MD根据你选择的机种更换为LD或HD 参考技术D 启动文件的错误
你这样试一下: Target-->c/c++-->Define文本框中输入你的启动文件名 如: stm32f10X_startup.s 试试 我也没遇到这样的问题 只是猜想 希望能帮助你
以上是关于stm32编译时出现 error: #35: #error directive: "Please select first the target STM32F10x device used的主要内容,如果未能解决你的问题,请参考以下文章
STM32F030 启动时出现硬故障,__libc_init_array