(一). 使用的平台
使用的软件平台有两个,分别是IAR8.1和source insight4,下面给出两个软件的下载链接,仅供学习使用,其他用途请使用正版软件:
1. IAR8.1的编译下载平台,百度网盘下载链接:链接:https://pan.baidu.com/s/10_9VpOSaXK8ClsWqcTFSaQ,提取码: 6v2a
IAR8.1的安装流程可以参考第三方的网址:https://www.sdbeta.com/wg/2018/0307/220301.html
注意:IAR8.1在破解的时候可能会出现“Could not get infornation...的问题”,原因是IAR存放许可证的文件夹没有创建,需要把这条路径下没有存在的文件夹都创建齐,“C:ProgramDataIARSystemsLicenseManagementLicensePackagesARMEW1”。
2. source insight4的编译下载平台,百度网盘下载链接:https://pan.baidu.com/s/1ga36wRzy8ukMmoQfiR5yLw,密码:fcfd
source insight4的安装流程在下载的压缩包里有安装文档
(二). STM32工程的创建
1. 创建一个空工程
首先在IAR8.1的平台上创建一个工程,打开IAR8.1,菜单栏->Create New Project->Empty Project->点击OK,选择工程创建的地方进行保存,到此创建了一个空工程;
2. 添加文件夹
创建了一个空的工程之后,先在工程里面创建文件夹,以便对之后加进来的文件进行归类存放。
在工程“project - Debug”上右击,选择“Add”->“Add Group”创建新的文件夹,在创建的文件夹上,执行同样的操作,就可以创建二级文件夹。
根据个人习惯,创建好的文件夹如下:
stm32_driver存放STM32相关的文件和开发者编写的外设驱动文件,其中:
① CMSIS存放STM32相关的内核文件、寄存器定义文件、配置文件;
② StdPeriph存放STM32的库函数;
③ Driver存放开发者编写的外设驱动文件。
3. 添加文件
首先需要添加STM32相关文件,相关文件压缩包“STM32F4xx_DSP_StdPeriph_Lib”需要到ST官网“https://www.st.com/content/st_com/en.html”下载。
本工程使用ST公司提供的V1.8.0版本的库函数,百度链接:https://pan.baidu.com/s/1zyG8ZqEhoprVI5YkyiFvmA,密码:6pvf
该压缩包包含STM32F407芯片相关的文件,压缩包具体介绍可以移步这位博主的文章学习:http://www.cnblogs.com/King-Gentleman/p/4369381.html。
在工程目录下创建“user文件夹”存放代码文件,在“user文件夹”中创建“library文件夹”,以此创建完文件夹如下:
① 根据上文提到的各文件夹的功能,存放不同类型的代码文件:
② 把STM32相关库文件存放到我们的工程目录下之后,就要在IAR的工程中把需要的文件都加进来,这里我么只需要添加.c文件和一个STM32的启动文件.s文件就行了。
4. 配置工程文件
在工程“project - Debug”上右击,选择“Options”进入工程配置
①选择芯片型号,这里需要根据使用的芯片,选择相关的芯片型号,本工程使用的芯片型号是“STM32F407ZGT6”
刚才我们在IAR平台上,工程里添加文件的时候没有添加的.h文件,需要在配置文件中添加使用的.h文件的路径,这样工程就能自动找到使用的.h文件了。图中第3方框就是添加的头文件的路径,这里我们添加的是头文件的相对路径,"$PROJ_DIR"代表工程的位置。第4方框是宏定义的,用于选择使用的芯片。
本工程的下载器使用的是“ST-LINK”,所以下载器选择"ST-LINK",至此,工程的初步配置完成。
5. 开发阶段
本工程此次点灯功能,在“Driver文件夹中”创建驱动点灯的.c和.h文件,在工程下创建一个main.c文件,并添加到工程中如下
在这里,我们需要先开时钟,每个外设都用一个时钟,在需要使用的时候才开启,这种可以减少不必要的功耗
工程里控制LED灯的引脚用到了两组GPIO的引脚,所以需要开启这两组GPIO的时钟
开启时钟之后,就是对GPIO进行配置,使其输出对应的电平驱动LED灯亮,至此,点灯成功。
上一篇:ROS使用STM32F407ZGT6作为底盘控制器
下一篇:关于STM32F407ZGT6的一些知识小结及串口1程序
设计资源 培训 开发板 精华推荐
- LTC2620IGN 八通道、10 位数模转换器的典型应用
- FE2.1方案验证板
- 使用 Diodes Incorporated 的 PT8A 3519C 的参考设计
- 使用 LTC2377IMS-16、16 位、500ksps SAR ADC 的典型应用
- 复制 miyoo 掌机 司徒开源系统 2.8tft
- DC545A,基于 SC70 中的 LT3460ESC6 1.3 MHz 升压 DC/DC 转换器的演示板,升压 = 5Vin,SEPIC = 10V 至 16Vin,Vout = 12V at 50mA/70mA
- MIC5239 的典型应用:低静态电流 500mA 电容 LDO 稳压器
- MPC560xBOARDS: MPC560x调试和目标接口板
- ADA4841-2YRMZ-RL 低功耗、低噪声运算放大器的典型应用电路,用于两极 500kHz 重构滤波器原理图
- usb转can模块
- 得捷第二季Follow me第2期来袭,一起解锁功能强大且灵活的【Arduino UNO R4 WiFi】
- TI“无线”风光可穿戴现场培训直播,诚邀参与,预注册赢好礼
- Microchip直播:单片机编程不再难, 利用MPLAB®代码配置器(MCC)实现快速开发
- TI Simplelink 狂欢正嗨,热门产品 9 折特惠!更有分享好礼任性送!
- 有奖直播|ADI多参数光水质分析平台
- 村田调研季:电子工程师元器件购买渠道调研
- PI有奖问答第二期 看视频 读资料 答题赢好礼
- 2019东芝PCIM在线展会:会一会 电力领域中的高能晶体管们
- 独家拆解 | 语音控制在真无线立体声TWS耳机上的创新应用
- 有奖直播:TI 的故事—— IC 创世纪