单片机
返回首页

STM32-点亮LED灯(GPIO配置)

2018-08-15 来源:eefocus

点亮LED灯应该是每一人学习硬件的第一个实验了吧!从51到32在到ARM,废话少说,下面开始使用STM32点亮LED灯。 
GPIO:又叫通用输入输出口,是微控制器必不可少的外设单元,用来和外界进行信号传递,数据交互的接口。 
STM32的GPIO根据型号的不同分为A-H组,每一组都称为GPIOx组,每组都有独立的寄存器,因为相对于寄存器,函数版的使用还是比较容易入门的,尤其是有些编程基础的人来讲,但是寄存器是不可以忽视的,学会了基础的函数操作还是要回头去看看具体寄存器是如何运行的,这点很重要,高手和菜鸟的区别吧! 
STM32的GPIO还具有十分强大复用功能,这点以后会介绍和使用到。现在就把它的GPIO当成一个可输出高低电平的引脚就可以了。 
首先,看一下相关的寄存器,先了解既可。 
这里写图片描述
在看一关于GPIO的所有方法。 
这里写图片描述
其中在第一个实验中用到的函数,也就几个,比如GPIO_Init()用来初始化IO口,GPIO_SetBits(),GPIO_ResetBits(),用来置位和复位IO口的电平。GPIO_WriteBits(),和GPIO_Write()也可以用来改变GPIO的电平,具体的差别就要去看手册是了解了。

#include 'stm32f10x.h'

/**

  * @brief  ³õʼ»¯GPIO£¬Ä¬ÈÏËÙ¶ÈΪGPIO_Speed_50MHz;

  *         

  * @param  GPIO·Ö×é

  * @param  GPIOÒý½Å

    * @param  GPIOÒý½Åģʽ

  * @retval None

  */

void GPIO_init(GPIO_TypeDef * GPIOx,u16 GPIO_Pin,GPIOMode_TypeDef Mode)

{

    GPIO_InitTypeDef GPIO_InitStruct;                                       

    GPIO_InitStruct.GPIO_Mode=Mode;                         

    GPIO_InitStruct.GPIO_Pin=GPIO_Pin;

    GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;

    GPIO_Init(GPIOx,&GPIO_InitStruct);

}


int main()

{


        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);

        GPIO_init(GPIOA,GPIO_Pin_0,GPIO_Mode_Out_PP);

        GPIO_ResetBits(GPIOA,GPIO_Pin_0);

        while(1);

}


以上代码是将GPIOA0引脚设置为低电平。


进入单片机查看更多内容>>

上一篇:STM32-串口程序

下一篇:STM32-时钟树

相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • PIC单片机控制的遥控防盗报警器电路

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 如何构建一个触摸传感器电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章