查看: 2939|回复: 0

STM32F746 Discovery 学习笔记3 LD1指示灯闪烁

[复制链接]
  • TA的每日心情
    开心
    2022-4-12 14:51
  • 签到天数: 163 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2016-8-4 08:43:02 | 显示全部楼层 |阅读模式
    分享到:
    STM32F746 Discovery 学习笔记3 LD1指示灯闪烁

           在学习论坛和社区网友分享的有关STM32F746帖子后,准备用mdk5.17创建工程,先从LED指示灯开始。
           参考官网“en.stm32cubef7”压缩包下STM32Cube_FW_F7_V1.4.0-&gtrojects->STM32746G-Discovery->Examples->FLASH->FLASH_EraseProgram->MDK-ARM例程,创建test工程,首先复制源文件:

           Drivers文件夹下包含BSP、CMSIS、STM32F7xx_HAL_Driver三个文件夹(目录在STM32Cube_FW_F7_V1.4.0->Drivers),只复制了STM32746G-Discovery相关文件;
           Inc和Source文件夹直接复制FLASH_EraseProgram->下Inc和Source文件内容,只是main.c文件删除flash操作有关的函数和内容
           Startup文件夹下包含启动文件startup_stm32f746xx.s,直接复制FLASH_EraseProgram->MDK-ARM下文件
           使用Keil uVision5创建空工程,Device选择STM32F746NG->STM32F746NGHX:

           弹出Manage Run-Time Environment窗口,直接点击cancle关闭窗口即可,然后添加源文件,Add Group...,Add Existing File to Group...,对于“Driver”group下文件,选择与工程有关的驱动就可以,如果全选编译时比较浪费时间。
           刚接触Bsp,从网上搜索资料可以了解到:BSP是板级支持包 (board support package)是介于主板硬件和操作系统之间的一层,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。
           可直接调用Bsp驱动文件,不需要编写底层驱动,对于底层硬件不需要太多了解。Bsp下“stm32746g_discovery.c”文件中包含了LED、按键、串口、I2C等初始化和操作函数。
            打开“Options for Target ...”窗口,在C/C++选项框中,添加hex文件路径,(在Process symbols->Define输入框中没有填写字符“USE_HAL_DRIVER,STM32F756xx,USE_STM32746G_DISCOVERY”)

           编译成功,在线调试时,选择ST-Link Debugger工具,在Flash Download选项框中,自动添加“STM32Fxx 1MB Flash”,点击“Start Debug”快捷按钮,在线调试即可。如果打开了“STM32 ST-LINK Utility”这个软件,请先关闭,否则在线调试时提示找不到ST-Link工具
           在线调试后跳转到main函数入口,点击Run运行后,可以看到LD1指示灯每秒闪烁。

           注意:当使用“Manage Run-Time Environment”提供的驱动和主函数模板文件时,需添加“stm32f7xx_it.c”文件,否则工程在线调试时,断点调试正常,Run时就跳到中断调用入口
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /5 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-20 16:46 , Processed in 0.115685 second(s), 18 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.