STMCU小助手
发布时间:2021-12-7 11:00
|
程序小白的我从安装mdk5.14搭建平台到更新至V5.25搭建平台,并配置相关参数,发现了一些问题,并查看一些博友的文章最终得以解决,以供以后如有类似情况可以查看解决。4 `! q# K- _: i- H 如图所示,建立相关文件夹。打开MDK,Project->New uVision Project! T: V0 x S9 |2 J; j' t- W
! g: ?) d* p& |) |2 q. z+ K. g' l
( C- d: N \9 a" V* r 此处注意的是需要选择相应的芯片,我们选择的是STM32F407ZGT6,一定要安装相应的pack安装包才可以建立工程文件。 接着,我们添加相应的启动代码(startup_stm32f40_41xxx.s)。) Z9 R+ m! u; h * C0 m- H/ k9 Z' A 启动代码的主要作用如下: ( x4 s+ _7 y0 k. z 1.堆栈(SP)的初始化; ; e) P4 u$ M, [8 ^; [3 G0 c 2.初始化程序计算器(PC);7 ?3 Z- Q& U; Q 9 b) n% F+ y- H3 h% V 3.设置向量表异常事件的入口地址; . n, V& g2 u( A; E 4.调用main函数。 " P2 t! ~+ A( a9 [ 其中我们修改了启动文件的Reset_handler函数,该段代码主要加入了开启STM32F4硬件FPU的代码,以使能STM32F4的浮点运算单元。! q. b" Y! z6 o, O- h2 q+ f 其中的0xE000ED88为协处理器控制寄存器(CPACR)的地址,该寄存器的第20~23位用来控制是否支持浮点运算,此处全部设置为1,以支持浮点运算。# { `( Y' S% v/ E. Z$ K3 K5 t 4 Y0 J: s w: m3 r# w4 p mdk的target Code Generation 选用Use FPU (V5.25 版本显示为 Single Precision) 。(mdk默认STM32F4外部晶振为12M,此处Xtal(Mhz)设置为8.0M) 然后在Target目录树打开Manage Project Items进行目录创建和文件添加。3 v: H' C+ a/ V* j, u 接着就是设置OBJ输出目录,将生成的hex文件放置在OBJ目录里。Options for Target->Output->Create Hex File->Select Folder For Objects->找到OBJ文件夹->OK5 g6 O! O: A& R+ A' w 头文件相关处理在Options for Target->C/C++选项中 * X; Q( T. l0 S& F* W# M2 J0 ^ Define : STM32F40_41xxx Optimization : -O0 Inlcude Paths 添加相应的头文件路径( c6 s5 e7 R4 f2 J `: N/ J / }) E7 Q, B/ l' X% o Jlink相关驱动建议调用以往支持的Segger目录。+ J4 e; {4 y" e) R& I* @5 j # |% @* g! w6 {2 {/ Z5 Q2 y % w3 A _* t& ~ |
【福利三:雨露均沾·逢7狂欢】之四:用一个定时器同步另外两个定时器输出PWM
【逢7发帖赢大礼】STM32开发之WIFI实时时钟
【逢7发帖赢大礼】STM32开发之指纹识别!
【逢7发帖赢大礼】STM32开发之环境空气质量监测
【逢7发帖赢大礼】STM32开发之人体实时运动信息监测!
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
【逢7发帖赢大礼】全网最简单的Arduino_STM32开发环境搭建教程!
STM32F4中文用户手册
STM32F400、STM32F402 Cortex-M4超值单片机
SPI 高温读错最后一位?STM32F42xx 官方根治方案
微信公众号
手机版