STMCU小助手
发布时间:2021-12-7 11:00
|
程序小白的我从安装mdk5.14搭建平台到更新至V5.25搭建平台,并配置相关参数,发现了一些问题,并查看一些博友的文章最终得以解决,以供以后如有类似情况可以查看解决。 & i! Y6 F/ }1 i 如图所示,建立相关文件夹。打开MDK,Project->New uVision Project
k- t* |9 f# v, }3 V, m
/ A! |! n$ t0 z! l# ^* q 此处注意的是需要选择相应的芯片,我们选择的是STM32F407ZGT6,一定要安装相应的pack安装包才可以建立工程文件。 接着,我们添加相应的启动代码(startup_stm32f40_41xxx.s)。9 f0 N6 x# i! M+ n2 V 2 K, v" l% B) x0 f5 P 启动代码的主要作用如下: - P7 f; P+ k6 E3 v, p; v4 ~ 1.堆栈(SP)的初始化; 8 F" w* Q/ m! N9 ^, X 2.初始化程序计算器(PC); 3.设置向量表异常事件的入口地址; 4.调用main函数。" c6 e5 W5 w" o* A! c0 A 其中我们修改了启动文件的Reset_handler函数,该段代码主要加入了开启STM32F4硬件FPU的代码,以使能STM32F4的浮点运算单元。 ) B& @1 p0 ?2 U$ m! r% Y8 M 其中的0xE000ED88为协处理器控制寄存器(CPACR)的地址,该寄存器的第20~23位用来控制是否支持浮点运算,此处全部设置为1,以支持浮点运算。 mdk的target Code Generation 选用Use FPU (V5.25 版本显示为 Single Precision) 。(mdk默认STM32F4外部晶振为12M,此处Xtal(Mhz)设置为8.0M)6 N- U9 w- P- T 1 m5 l2 l% l3 y, |* a6 r 然后在Target目录树打开Manage Project Items进行目录创建和文件添加。 % r4 A8 e$ [4 A3 |6 e& v 接着就是设置OBJ输出目录,将生成的hex文件放置在OBJ目录里。Options for Target->Output->Create Hex File->Select Folder For Objects->找到OBJ文件夹->OK A( d3 C/ |/ a n$ d! ? ' j- q$ b' d6 N1 l7 d5 \ 头文件相关处理在Options for Target->C/C++选项中 Define : STM32F40_41xxx Optimization : -O0 K: n0 z8 B5 Z , h0 o9 t* \, t% Y1 n7 M6 A {4 T B Inlcude Paths 添加相应的头文件路径0 q" `+ p0 z; t; r8 i 6 j& z+ C1 h5 X o; b* R t$ X1 y6 M Jlink相关驱动建议调用以往支持的Segger目录。 + G7 a& C1 T0 K) H5 D1 N |
【福利三:雨露均沾·逢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 官方根治方案
微信公众号
手机版