欢迎来到天天文库
浏览记录
ID:61931942
大小:898.50 KB
页数:8页
时间:2021-03-31
《RFID的GPIO基础实验讲课稿.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、__________________________________________________本科生实验报告实验课程RFID学院名称信息科学与技术学院专业名称物联网工程学生姓名曹林鑫学生学号20141060301指导教师方勇实验地点6B608实验成绩二〇一六年十二月二〇一六年十二月GPIO基础实验____________________________________________________________________________________________________1.实验目的1.了解程序的整体框架。2.了解STM32的GPIO接口。3.使用GPIO接
2、口进行简单操作,控制蜂鸣器。4.了解基本的电路结构和芯片引脚。2.实验设备1.RFID创新套件实验箱2.J-Link一个3.实验原理STM32的IO口可以由软件配置成8种模式:浮空输入、带上拉输入、带下拉输入、模拟输入、开漏输出、推挽输出、复用功能的推挽输出、复用功能的开漏输出,其中模式7和模式8需根据具体的复用功能决定。对应到STM32库文件中的定义如下:typedefenum{GPIO_Mode_AIN=0x0,//模拟输入GPIO_Mode_IN_FLOATING=0x04,//悬空输入GPIO_Mode_IPD=0x28,//下拉输入GPIO_Mode_IPU=0x48,//上
3、拉输入GPIO_Mode_Out_OD=0x14,//开漏输出GPIO_Mode_Out_PP=0x10,//推挽输出GPIO_Mode_AF_OD=0x1C,//开漏复用____________________________________________________________________________________________________GPIO_Mode_AF_PP=0x18//推挽复用}GPIOMode_Typedef;STM32的GPIO端口在作为输出时,可以软件配置端口最大支持的时钟速率,有以下几种:时钟速率10MHz、时钟速率2MHz、时钟速率
4、50MHz,对应到STM32库中定义如下:typedefenum{GPIO_Speed_10MHz=1,GPIO_Speed_2MHz,GPIO_Speed_50MHz}GPIOSpeed_TypeDef;为了降低STM32处理器的功耗,可以依据实际的要求,选择合适的时钟速率,GPIO口支持的最大速率越低,它产生的功耗也越低。蜂鸣器控制管脚为PE4。蜂鸣器的电路原理图如下。在对STM32的GPIO管脚有一定了解后,我们看一个完整的GPIO端口初始化的例子。GPIO_InitTypeDefGPIO_InitStructure;//配置使用的GPIO时钟RCC_APB2PeriphCloc
5、kCmd(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_50M
6、Hz;//使蜂鸣器相关的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创新套件 3实验教程 2STM32基础实验目录下的GPIO基础实验.hex文件。4.将程序烧录到芯片中。5.可以听到蜂鸣器响起。5.程序解析voidBEEP_Config(void)
7、{GPIO_InitTypeDefGPIO_InitStructure;//配置使用的GPIO时钟____________________________________________________________________________________________________RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//配置用到的管脚GPIO_InitStruc
此文档下载收益归作者所有