查看: 1593|回复: 0

STM32F107VC金龙开发板 第一章 LED灯实验

[复制链接]

该用户从未签到

发表于 2015-4-7 16:50:54 | 显示全部楼层 |阅读模式
分享到:
第一章 金龙107——LED实验


1.1 GPIO简介:
GPIOGeneral Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO口一是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(UART),控制硬件工作(LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。因此,GPIO口的使用非常广泛。
1.2 实验说明:
在本实验中,主要使用到开发板上的LED灯,实现跑马灯,
主要跳线帽:JP4JP7都接在2-3
1.3 硬件描述:
图片4.png
想要控制 LED 灯,当然是通过控制 STM32 芯片的 I/O 引脚电平的高低来实现。在 STM32 芯片上,I/O 引脚可以被软件设置成各种不同的功能,如输入或输出,所以被称为 GPIO (General-purpose I/O)。而 GPIO 引脚又被分为GPIOAGPIOB„„GPIOG 不同的组,每组端口分为 0~15,共 16 个不同的引脚,对于不同型号的芯片,端口的组和引脚的数量不同,在金龙107 (stm32f107vc)上面有(A„„E)5组,80IO
1.4程序说明:
首先说明一点,STM32的启动过程,并不是从main开始的,而是从启动文件里面开始,然后又跳转到main(详细说明可以参见STM32启动文件说明),并且在启动文件中,跳转到main之前,已经调用了SystemInit();,实现对STM32的时钟配置。
然后从main函数开始说明,
第一步SystemInit();这个函数官方已经写好,其主要配置了STM32的时钟,该函数,在启动文件中已经被调用了(详见STM32启动文件的说明),所以这里可以去掉。

图片3.png
接下来是对LED的初始化,其中该函数在hw_config.h中,首先是对端口的初始化,对端口的初始化,要注意的是首先要声明定义结构体,然后开启对应端口的时钟,然后对端口的结构体进行配置(配置说明详见固件库说明)。
图片2.png
下面就是对四个LED灯的初始化,在本例程中我们采用了宏定义,如下图,详见hw_config.h
图片1.png
while循环中,实现LED灯的循环亮灭。
1.5实验现象:
LED循环点亮

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-25 13:15 , Processed in 0.106500 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.