RFID的GPIO基础实验_第1页
RFID的GPIO基础实验_第2页
RFID的GPIO基础实验_第3页
RFID的GPIO基础实验_第4页
RFID的GPIO基础实验_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科生实验报告实验课程RFID学院名称信息科学与技术学院专业名称物联网工程学生姓名曹林鑫学生学号20141060301指导教师方勇实验地点 6B608实验成绩二一六年十二 月二一六年十二月GPIO 基础 实验1. 实验目的1了解程序的整体框架。2了解 STM32 的 GPIO 接口。3使用 GPIO 接口进行简单操作,控制蜂鸣器。4了解基本的电路结构和芯片引脚。2.实验设备1. RFID 创新套件实验箱2. J-Link 一个3. 实验原理STM32 的 IO 口可以由软件配置成 8 种模式:浮空输入、带上拉输入、 带下拉输入、模拟输入、 开漏输出、 推挽输出、 复用功能的推挽输出、 复用功能

2、的开漏输出,其中模式 7 和模式 8 需根据具体的复用功能决定。对应到 STM32 库文件中的定义如下:typedef enumGPIO_Mode_AIN = 0x0, /模拟输入GPIO_Mode_IN_FLOATING = 0x04, /悬空输入GPIO_Mode_IPD = 0x28, /下拉输入GPIO_Mode_IPU = 0x48, /上拉输入GPIO_Mode_Out_OD = 0x14, /开漏输出GPIO_Mode_Out_PP = 0x10, /推挽输出GPIO_Mode_AF_OD = 0x1C, /开漏复用GPIO_Mode_AF_PP = 0x18 /推挽复用 GPI

3、OMode_Typedef;STM32 的 GPIO 端口在作为输出时,可以软件配置端口最大支持的时钟速率,有以下几种:时钟速率 10MHz、时钟速率 2MHz、时钟速率 50MHz,对应到 STM32 库中定义如下:typedef enumGPIO_Speed_10MHz = 1,GPIO_Speed_2MHz,GPIO_Speed_50MHz GPIOSpeed_TypeDef;为了降低 STM32 处理器的功耗,可以依据实际的要求,选择合适的时钟速率,GPIO 口支持的最大速率越低,它产生的功耗也越低。蜂鸣器控制管脚为 PE4。蜂鸣器的电路原理图如下。在对 STM32 的 GPIO 管脚

4、有一定了解后,我们看一个完整的 GPIO 端口初始化的例子。GPIO_InitTypeDef GPIO_InitStructure;/配置使用的 GPIO 时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);/配置用到的管脚GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;/配置 GPIO 口输出模式GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;/配置 GPIO 口速率GPIO_InitStructure.GPIO_Speed = GPIO_Speed_5

5、0MHz;/使蜂鸣器相关的 GPIO 口初始化GPIO_Init(GPIOE, &GPIO_InitStructure);/关闭蜂鸣器,使对应的 GPIO 口输出为 0。GPIO_ResetBits(GPIOE, GPIO_Pin_4);4. 实验步骤1. 在 STM32 实验平台上插上 J-Link 烧录线,接通 RFID 创新套件实验箱电源。2. 打开实验箱开关以及 STM32 实验平台的开关。3.在J-Flash中打开光盘RFID创新套件03 实验教程02 STM32基础实验目录下的GPIO基础实验.hex 文件。4. 将程序烧录到芯片中。5. 可以听到蜂鸣器响起。5.程序解析v

6、oid BEEP_Config(void)GPIO_InitTypeDef GPIO_InitStructure;/配置使用的 GPIO 时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);/配置用到的管脚GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;/配置 GPIO 口输出模式GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;/配置 GPIO 口速率GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;/使蜂鸣

7、器相关的 GPIO 口初始化GPIO_Init(GPIOE, &GPIO_InitStructure);/关闭蜂鸣器,使对应的 GPIO 口输出为 0。GPIO_ResetBits(GPIOE, GPIO_Pin_4);/* Function Name : main* Description : Main program.* Input : None* Output : None* Return : None*/void main(void) /STM32 串口初始化函数UART_Config();/配置蜂鸣器的 GPIO 管脚 PE4BEEP_Config();show_menu();/关闭液晶显示屏的背光turnoff_lcd();/关闭蜂鸣器GPIO_SetBits(GPIOE, GPIO_Pin_4);while (1);6实验结果1、程序烧录2、实验效果蜂鸣器响7实验总结学生实验 心得通过这次的实验在一定程度上,了解了GPIO原理,进一步熟悉了STM32开发板基本组成电路,并且能够通过使用手册和自己所掌握的编程基础,对该芯片进行编程从而达到实验要求。在实验过程中也遇到过一些问题,比如一开始没有GPIO_Mode_IN_FLOATING = 0x04, /悬空输入,使得程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论