|
大家用C语言来再学习培训STM32,以加重了解,而且运用相关资料和官方网固定件标准库。因而,大家来撰写一个流水灯试验
此前提前准备
一, 开发工具
安裝MDK5,而且导进STM32官方网标准库。
STM32官方网标准库名字:stm32f4_dsp_stdperiph_lib
这一STM32官方网固定件标准库之前是能够在ST官方网站下载,如今仿佛在官在网上不见。
二,有关运用材料:STM32F4XX汉语在线手册
相关函数
一,由于要应用GPIO,在应用GPIO时必须先也就能IO口数字时钟。
也就能IO数字时钟就需要应用到RCC存储器。RCC存储器有关专业知识,见汉语在线手册6.3章节目录。
调用函数:RCC_AHB1PeriphClockCmd();
二,由于要采用GPIO配备,因此 要采用GPIO函数库。
1, GPIO库文件
头文件:stm32f4xx_gpio.h
源代码:stm32f4xx_gpio.c
2, 关键的GPIO函数库
(1)GPIO复位涵数
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
(2)设定脉冲信号輸出涵数
輸出上拉电阻:
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
輸出低电频:
void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
程序流程撰写
一,程序流程的完成:
使单片机开发板上的LED1,LED2,LED3,LED4循环系统照亮,完成流水灯实际效果。
硬件配置原理图:
二,撰写LED汇编程序
1, led.h头文件
2, led.c源代码
3, 在led.c中怎样也就能GPIO数字时钟
(1)在库文件rcc.hk中寻找”RCC_AHB1PeriphClockCmd(); “并将其拷贝出来
(2)点一下涵数再鼠标右键Go To Definition………,搜索通道主要参数
(3)搜索第一个通道主要参数
注:assert_param的功效便是用于分辨传送给涵数的主要参数是不是合理;
寻找C组GPIO,将其拷贝到括弧里
进行第一通道主要参数:
假如也有也就能其他IO口,就用或符号”|”,后边加上
(4)搜索到二个通道主要参数:
要也就能得话就挑选ENABLE将其拷贝出来
进行第二个通道主要参数,进行GPIO的数字时钟也就能涵数的启用:
4, 在led.c中如何配置GPIO涵数:如,配备D组IO口
(1)键入涵数GPIO_Init(); ,用上边的方式来配备第一个通道涵数,进行第一个通道涵数以下:
(2)第二个通道主要参数,是个建筑结构
先将它拷贝出来,除掉*号,开展界定这一建筑结构:
进行第二个通道主要参数:
(3)用建筑结构来进行GPIO的配备
GPIO_InitStructure天赋加点来开展各种类的存储器配备:
配备GPIO_Mode存储器,点一下GPIO_Mode,鼠标右键Go To Definition………查看以下:
再点一下GPIOMode_TypeDef,查看以下:
挑选适合的种类,将其拷贝出来,进行GPIO_Mode的配备:
进行GPIO的配备:
三, 撰写main涵数
(责任编辑:网络) |
|