当前位置:   article > 正文

跑马灯实验——库函数h

跑马灯实验——库函数h

一、硬件连接

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

LED0 PA8
LED1 PD2

选择GPIO输出方式:
推挽输出:可以输出强高低电平

二、库函数介绍

组介绍

在这里插入图片描述
1.组 USER 下面存放的主要是用户代码。 system_stm32f10x.c 里面主要是系统时钟初始化函数 SystemInit 相关的定义,一般情况下文件用户不需要修改stm32f10x_it.c 里面存放的是部分中断服务函数。 main.c函数主要存放的是主函数。
2.组 HARDWARE 下面存放的是每个实验的外设驱动代码,他的实现是通过调用 FWLib下面的固件库文件实现的,比如 led.c 里面调用stm32f10x_gpio.c 里面的函数对 led 进行初始化,这里面的函数是讲解的重点。后面的实验中可以看到会引入多个源文件。
3.组 SYSTEM 是 ALIENTEK 提供的共用代码, 包含 Systick 延时函数, IO 口位带操作以及串口相关函数。
4.组 CORE 下面存放的是固件库必须的核心文件和启动文件。这里面的文件用户不需要修改。
5.组 FWLib 下面存放的是 ST 官方提供的外设驱动固件库文件,这些文件大家可以根据工程需要来添加和删除。每个 stm32f10x_ppp.c 源文件对应一个 stm32f10x_ppp.h 头文件。
代码层次:
代码层次

IO口相关库函数文件介绍(组FWILIB)

源文件 头文件
stm32f10x_gpio.c stm32f10x_gpio.h
misc.c misc.h
stm32f10x_rcc.c stm32f10x_rcc.h

GPIO重要库函数介绍

一个初始化函数 void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
两个读取输入电平函数 uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);
四个设置输出电平函数 void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)(BSRR); void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)(BRR);void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);

初始化函数void GPIO_Init

两个入口参数指针

GPIO_TypeDef*GPIOx
包含结构体

typedef struct
{
   
  __IO uint32_t CRL;
  __IO uint32_t CRH;
  __IO uint32_t IDR;
  __IO uint32_t ODR;
  __IO uint32_t BSRR;
  __IO uint32_t BRR;
  __IO uint32_t LCKR;
} GPIO_TypeDef;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

第一个输入参数GPIOx是用来指定 GPIO(范围从GPIOA-GPIOG)
GPIO_InitTypeDef*GPIO_InitStruct:
包含结构体

typedef struct
{
   
  uint16_t GPIO_Pin;             /*!< Specifies the GPIO pins to be configured.
                                      This parameter can be any value of @ref GPIO_pins_define */

  GPIOSpeed_TypeDef GPIO_Speed;  /*!< Specifies the speed for the selected pins.
                                      This param
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/285307
推荐阅读
相关标签
  

闽ICP备14008679号