硬件平台:STM32F769IDISCOVERY 软件开发平台:Keil 5.15 1.安装Keil Software Packs。 首先需要安装Keil软件,具体的安装方法,可以查看这里http://jingyan.baidu.com/article/3c48dd349be215e10be358c9.html,我这里就不在重复了。安装完keil后,还需要安装Keil Software Packs,这样我们才能编写程序。需要要安装的Software Packs包括以下几个: 1. CMSIS (Cortex Microcontroller Software Interface Standard) 2. STMicroelectronics STM32F7 Series Device Support, Drivers andExamples 3. Keil MDK-ARM Professional Middleware for ARM Cortex-M based devices 下载地址:http://www./dd2/Pack/。(要下载最新版本) 等上面的Software Packs下载完成后,我们可以打开刚才安装的Keil,安装Software Packs。 第一步: 第二步: 第三步: 点击File菜单,选中Import下拉菜单,接着选择刚才下载的Software Packs开始安装,最后等待安装结束,重新启动keil,就可以使用了。 2.下载STM32CUBEF7资源包 这个软件包,包含HAL底层驱动、USB、 TCP/IP、文件系统、RTOS、图像– 例程可直接运行在ST板子上。下载地址:http://www./document/list/index/category-1019。下载完成后进行解压。 3. 下载STM32F769IDISCOVERY原理图、数据手册和参考手册。 STM32F769IDISCOVERY原理图下载地址: http://www./document/list/index/category-1019。 数据手册载地址: http://www./document/list/index/category-895。 参考手册下载地址: http://www./document/list/index/category-900。建议下载STM32F75xxx和STM32F74xxx参考手册中文版,因为和stm32f769的功能大体上是一致的,不同的地方可以看stm32f769的英文版手册。 4.安装ST Link USB驱动 要安装的程序为:STM32STLINK Utility。安装完成后,我们就可以使用Keil的仿真功能和程序下载。下载地址:http://www./document/list/index/category-888。下载完成后,解压运行安装即可。 5.创建工程文件 首先创建一个以工程名命名的文件夹,例如我主要是测试图像处理这一块,所以给文件夹命名Image_Test。创建完成后,打开该文件夹,再次创建4个文件夹(是否应该创建该4个文件夹依据个人习惯,我创建的目的是便于管理和查看。),依次命名为:USER,CMSIS,FWLIB,OUTPUT,LIST。其中USER文件夹用来存放用户编写的程序文件,CMSIS文件夹用于存放官方提供的内核文件和启动文件,FWLIB文件夹用于存放官方提供的库函数文件。OUTPUT文件夹用于存放Keil编译产生的调试信息、可执行文件(.HEX)等等。LIST文件夹用于存放Keil编译产生的列表文件,其中包括堆栈信息,内存使用情况等等。 由于我后面要用到文件系统,因此需要再创建FATFS文件夹,用于存放文件系统文件。 上述的文件夹创建完成后,我们就可以往里面添加文件了。打开刚才解压后的STM32CUBEF7文件夹: 1.向CMSIS文件夹添加文件。 找到此路径下的文件,并把选中的文件复制到CMSIS文件夹。 接着找到此路径下的文件,并把选中的文件复制到CMSIS文件夹。 然后找到此路径下的文件,并把选中的文件复制到CMSIS文件夹。 最后找到此路径下的文件,并把选中的文件复制到CMSIS文件夹。 2.向FWLIB文件夹添加文件 找到此路径下的文件,并把选中的文件复制到FWLIB文件夹。 3. 向FATFS文件夹添加文件 找到此路径下的文件,并把选中的文件复制到FATFS文件夹。 4. 向USER文件夹添加文件 找到此路径下的文件,并把选中的文件复制到USER文件夹。 最后找到此路径下的文件,并把选中的文件复制到USER文件夹。 至此所需要的文件添加完毕。 打开Keil,创建一个工程文件并命名为Image_Test(名字根据需要,自己定义),保存到USER文件夹。 接着往工程添加3个文件夹,依次为USER, CMSIS, FWLIB;把之前放进去的文件添加进来。 USER文件夹添加的文件 CMSIS文件夹添加的文件 FWLIB文件夹添加的文件(根据自己项目需要,添加对应的库函数文件) 上述步骤完成后,进行工程的配置操作。 1.打开USER文件夹下的stm32f7xx_hal_conf.h文件进行修改。 1.1修改第53行到第97行的内容,对需要的头文件进行添加,同时注释不需要的头文件。 1.2修改第107行的内容,根据外接晶振的频率,修改相应的值,我这里是用25MHz的晶振,因此不用修改。 1.3修改第158行到第160行的内容。 VDD_VALUE的值为电源电压值,根据实际电路进行修改。TICK_INT_PRIORITY为系统滴答定时器中断优先级,这里不用修改,使用默认值。USE_RTOS为是否使用操作系统,根据项目需要自己定。我这里不需要操作系统,修改成0。修改完成后,保存关闭即可。 2.打开USER文件夹下的stm32f7xx _it.c文件进行修改。 2.1 删除第41行的内容。 2.2 注释掉第55行的内容 2.3注释掉第158行的内容 2.4注释掉第168行到183行的内容,然后保存文件,关闭即可。 3.打开CMSIS文件夹下的system_stm32f7xx.c文件进行修改。修改第69行的内容,根据外接晶振的频率,修改相应的值,我这里是用25MHz的晶振,因此不用修改。然后保存文件,关闭即可。 4.打开FWLIB文件夹下的stm32f7xx_hal.c文件进行修改。注释掉第165行和第168行的内容,然后保存文件,关闭即可。 5.按快捷键Alt+F7,出现如下界面,选中Trget选项,将Xtal的值修改成25MHz,勾选UseMicroLIB 6.选中Output选项卡,将keil的编译输出信息指定到之前创建的OUTPUT文件夹,勾选Create HEX File子项。 7. 选中Listing选项卡,将keil的编译产生的列表文件指定到之前创建的LIST文件夹, 8. 选中C/C++选项卡,在Define框中填入STM32F769xx,USE_HAL_DRIVER 优化等级选择3级。 9. 选中Debug选项卡,按下图进行设置。 然后点击Settings按钮,按如下图进行设置: 最后保存设置即可。 10.打开USER文件夹下的main.c文件进行修改。实现最简单的功能—LED灯闪烁。板上有一个红色的LED灯,高电平点亮,低电平关闭。 将第39行的内容修改为#include "stm32f7xx.h",保留main函数、SystemClock_Config函数和CPU_CACHE_Enable函数,其余的都删除。 创建LED的初始化函数,初始化IO口。创建延时函数,提供延时。 最后进行编译,下载到开发板上,验证效果。至此我们的程序编写完成 程序运行效果: |
|