stm32f407探索者开发板(二)——新建工程(基于固件库)

这篇具有很好参考价值的文章主要介绍了stm32f407探索者开发板(二)——新建工程(基于固件库)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


说实话,我非常不想这篇文章,因为太长太长了,我看视频写都写了一个下午(虽然我下午一直在摸鱼,啊啊啊啊啊)害,不管了,赶紧开始写吧,不然今晚是写不完了,呜呜呜……

零、预先准备

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
把这个里面的文件放先给下好,我这里是没有光盘的,所以需要从百度网盘上下载好,这里面都是我们需要用到的资源

一、创建文件

首相需要创建文件夹,我这里起名就是temp
接着依次创建5个子文件夹
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
第二步应该是temp
stm32f407探索者开发板(二)——新建工程(基于固件库)
选择F407ZG(我是探索者)
stm32f407探索者开发板(二)——新建工程(基于固件库)

二、移植文件资源(基于探索者)

2.1 USER

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
结果
stm32f407探索者开发板(二)——新建工程(基于固件库)
总共是7个

2.2 CORE

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
结果
stm32f407探索者开发板(二)——新建工程(基于固件库)

2.3 PWLIB

stm32f407探索者开发板(二)——新建工程(基于固件库)
这个路径下的inc和src放进PWLIB中就行

2.4 SYSTEM

这里面可以放一些正点原子提供的延时之类

随便找个模板样例,点进去SYSTEM
找到三个
stm32f407探索者开发板(二)——新建工程(基于固件库)
复制进去就行了

2.5 OBJ

这里面主要放的是.hex文件,之后会更改路径就行

三、添加路径

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)

3.1 PWLIB

stm32f407探索者开发板(二)——新建工程(基于固件库)
进入刚刚建的文件夹,把src里面的都行全选都放进去,点击Add

stm32f407探索者开发板(二)——新建工程(基于固件库)
删除这个文件,
注意是 stm32f4xx_fmc.c要删掉,不要删掉 stm32f4xx_fsmc.c

3.2 CORE

stm32f407探索者开发板(二)——新建工程(基于固件库)

3.3 USER

懒得截了,流程一样,结果如下
stm32f407探索者开发板(二)——新建工程(基于固件库)

四、设置头文件文件路径和添加全局宏定义标识符

4.1 头文件文件路径

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)

4.2 添加全局宏定义标识符

务必小心!务必准确!!!
STM32F40_41xxx,USE_STDPERIPH_DRIVER
stm32f407探索者开发板(二)——新建工程(基于固件库)
放到这个里面!

五、更改.hex存放路径

stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)

六、更改main函数,以及一些其他修改

更改main函数,如下

#include "stm32f4xx.h"


//ALIENTEK 探索者STM32F407开发板 实验0
//STM32F4工程模板-库函数版本
//技术支持:www.openedv.com
//淘宝店铺:http://eboard.taobao.com
//广州市星翼电子科技有限公司  
//作者:正点原子 @ALIENTEK
  
void Delay(__IO uint32_t nCount);

void Delay(__IO uint32_t nCount)
{
  while(nCount--){}
}

int main(void)
{

  GPIO_InitTypeDef  GPIO_InitStructure;
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
  GPIO_Init(GPIOF, &GPIO_InitStructure);

  while(1){
		GPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);
		Delay(0x7FFFFF);
		GPIO_ResetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);
		Delay(0x7FFFFF);
	
	}
}

删除
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
删除这两行就行

七、编译运行

stm32f407探索者开发板(二)——新建工程(基于固件库)

完美!

八、修改系统时钟配置

这个会4.3讲到
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)

关于2.4的SYSTEM添加公用代码

就是三个文件
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)
stm32f407探索者开发板(二)——新建工程(基于固件库)

再次编译运行
stm32f407探索者开发板(二)——新建工程(基于固件库)
完美!!结束!!
真累,累死了,跟着教程走了一遍,自己又写了一遍,害,不过还行,写完了文章来源地址https://www.toymoban.com/news/detail-400606.html

到了这里,关于stm32f407探索者开发板(二)——新建工程(基于固件库)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 看野火的视频,用正点原子的板子(STM32F4探索者)做ADC读取电压实验

    使用STM32F4的ADC1通道5(PA5)来采样外部电压值(这里采样两个电压值TPAD(3.3v),GND(0v)),最后通过串口打印电压值。 由上图可以看到, ADC1 的通道 5是对应着引脚PA5的。 板子右边是GND,ADC,TPAD引脚,做实验时,把两者相连即可读电压值。 ADC时钟: 这里是用于模拟电路的时

    2024年02月09日
    浏览(34)
  • 【正点原子STM32探索者】CubeMX+Keil开发环境搭建

    本文主要分为三部分,第一部分介绍正点原子STM32探索者开发板外观和配套资料如何下载,第二部分介绍如何搭建CubeMX+Keil开发环境,第三部分介绍如何使用CubeMX和Keil一步步创建出一个点亮LED灯的项目。搭建开发环境部分,包括安装Keil MDK、安装STM32 CubeMX、安装STM32F4系列MCU的

    2024年03月16日
    浏览(71)
  • STM32 基础知识(探索者开发板)--135讲 ADC转换

            ADC即模拟数字转换器,英文详称 Analog-to-digital converter,可以将外部的模拟信号转换 ADC采样电压范围0~3.3v 对应的数据是 0~4096 所以对ADC进行数值转电压可以通过公式 电压 = value*3.3/4096 1. HAL_ADC_Init 函数 HAL_StatusTypeDef HAL_ADC_Init(ADC_HandleTypeDef *hadc); 初始化ADC 形参:AD

    2024年02月20日
    浏览(36)
  • STM32 基础知识(探索者开发板)--159讲 CAN总线

    CAN基础知识:ISO国际标准化的串行通信协议,为了减少线束的数量 a.多主控制  每个设备都可以主动发送数据 b.通信速度较快,通信距离远。最高1Mbps(距离小于40M),最远可达10KM(速率低于5Kbps) c.具有错误检测、错误通知和错误恢复功能 d.故障封闭功能  能发现故障,且可以把故

    2024年01月17日
    浏览(37)
  • 从STM32F407到AT32F407(一)

    雅特力公司的MCU有着性能超群,价格优越的巨大优势,缺点是相关资料少一些,我们可以充分利用ST的现有资源来开发它。 我用雅特力的STM32F437开发板,使用原子 stm32f407的开发板自带程序,测试串口程序,原设定串口波特率为115200,但是输出乱码,波特率改成230400,串口输

    2024年02月02日
    浏览(50)
  • 使用RT-Thread studio IDE开发stm32F407(实现adc多通道采集)

    注意:使用这个IDE配置工程特别简单( only   10  minutes ) step1:选择对应的芯片或开发板创建RT-Thread项目   step2:配置RT-Thread Settings(按我的步骤顺序进行) 由于要用到ADC,所以我们使能这个框架,直接把它选上就ok 是不是特别简单?接下来第三步,要难一点了 step3 注意: 这

    2024年02月09日
    浏览(37)
  • 【STM32】BLDC驱动&控制开发笔记 | 07_SPI通信测试 - STM32F407用SPI配置DRV8323驱动芯片

    最近在埋头搞STM32 + 无刷直流电机控制,想实现用自己的STM32F407VGT6芯片板子,外加一块驱动板(目前选用到TI的DRV8302或者DRV8323驱动芯片),搞定电机驱动,最后实现比较好的控制效果。如果不是同一块芯片的同学也不用急着走,大体上都是可借鉴哒~ 本文主要实现使用SPI通信

    2024年02月08日
    浏览(46)
  • STM32F407的介绍

    内核 32位 高性能ARM Cortex-M4处理器 时钟: 高达168MHz,实际还可以超频一点点 stm32f407的主频通过PLL倍频后能够达到168MHz,而且芯片内置一个16MHz的晶振和一个32KHz的晶振,可以满足不同功耗的需求。 支持FPU(浮点运算)和DSP指令 144引脚 114个IO口 存储器容量: 1024K FLASH, 192K

    2024年02月10日
    浏览(42)
  • STM32F407的时钟

    时钟源用来为环形脉冲发生器提供频率稳定且电平匹配的方波时钟脉冲信号。它通常由石英 晶体振荡器和与非门组成的正反馈振荡电路组成,其输出送至环形脉冲发生器。 F4开发指南P107 F4开发指南P108 HSI高速内部时钟源 High Speed Internal。RC 振荡器,频率为 16MHz。可以直接作为

    2024年02月10日
    浏览(43)
  • STM32F407——串口通信

    本文将对串口通信的分类和基于 stm32 的串口配置进行介绍,以及如何使用串口调试助手进行串口收发功能的调试,旨在帮助还不会使用 stm32 单片机串口资源进行通信的家人们快速学会如何使用串口来进行通信。 (纯干货、快速上手、零基础也能会!!!) (1)串口,即串

    2023年04月08日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包