|
第一章 金龙107——LED实验 1.1 GPIO简介: GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO口一是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。因此,GPIO口的使用非常广泛。 1.2 实验说明:在本实验中,主要使用到开发板上的LED灯,实现跑马灯, 主要跳线帽:JP4和JP7都接在2-3上 1.3 硬件描述:
想要控制 LED 灯,当然是通过控制 STM32 芯片的 I/O 引脚电平的高低来实现。在 STM32 芯片上,I/O 引脚可以被软件设置成各种不同的功能,如输入或输出,所以被称为 GPIO (General-purpose I/O)。而 GPIO 引脚又被分为GPIOA、GPIOB„„GPIOG 不同的组,每组端口分为 0~15,共 16 个不同的引脚,对于不同型号的芯片,端口的组和引脚的数量不同,在金龙107 (stm32f107vc)上面有(A„„E)5个组,80个IO。 1.4程序说明:首先说明一点,STM32的启动过程,并不是从main开始的,而是从启动文件里面开始,然后又跳转到main(详细说明可以参见STM32启动文件说明),并且在启动文件中,跳转到main之前,已经调用了SystemInit();,实现对STM32的时钟配置。 然后从main函数开始说明, 第一步SystemInit();这个函数官方已经写好,其主要配置了STM32的时钟,该函数,在启动文件中已经被调用了(详见STM32启动文件的说明),所以这里可以去掉。
接下来是对LED的初始化,其中该函数在hw_config.h中,首先是对端口的初始化,对端口的初始化,要注意的是首先要声明定义结构体,然后开启对应端口的时钟,然后对端口的结构体进行配置(配置说明详见固件库说明)。
下面就是对四个LED灯的初始化,在本例程中我们采用了宏定义,如下图,详见hw_config.h。
在while循环中,实现LED灯的循环亮灭。 1.5实验现象:LED循环点亮
【01】金龙107_LED.rar
(1.53 MB, 下载次数: 8)
|
支持下 |
![]() 多谢支持 |
| 请问“STM32启动文件说明”在哪? |
STM32启动文件分析.pdf
(137.62 KB, 下载次数: 2)
|
STM32
超强工具——STM32CubeMX 你会用吗?
集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀
关于STM32启动文件的几个小问题
【银杏科技ARM+FPGA双核心应用】STM32H7系列35——USB_VCP_FS
【银杏科技ARM+FPGA双核心应用】STM32H7系列28——USB_HID
粉丝分享 | 图说CRC原理应用及STM32硬件CRC外设
STM32L151进入低功耗,并由RTC唤醒的故事
[转]stm32控制NFC模块(PN532)源码(P2P,模拟卡,读写卡等
STM32G070RB+LVGL移植
微信公众号
手机版