欢迎来到天天文库
浏览记录
ID:37831505
大小:85.41 KB
页数:7页
时间:2019-06-01
《嵌入式系统原理实验五按键实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、WORD格式-专业学习资料-可编辑实验五按键输入实验实验目的:-学习资料分享----WORD格式-专业学习资料-可编辑利用板载的4个按键,来控制板载的两个LED的亮灭和蜂鸣器的开关。通过本实验,将了解-学习资料分享----WORD格式-专业学习资料-可编辑到STM32F1的IO口作为输入口的使用方法。-学习资料分享----WORD格式-专业学习资料-可编辑内容要点:-学习资料分享----WORD格式-专业学习资料-可编辑1.STM32IO口简介-学习资料分享----WORD格式-专业学习资
2、料-可编辑STM32F1的IO口在上一章已经有了比较详细的介绍,这里我们不再多说。STM32F1的IO口做-学习资料分享----WORD格式-专业学习资料-可编辑输入使用的时候,是通过调用函数GPIO_ReadInputDataBit()来读取IO口的状态的。了解了这点,就可以开始我们的代码编写了。这一个实验,我们将通过ALIENTEK战舰STM32开发板上载有的4个按钮(WK_UP、KEY0、KEY1和KEY2),来控制板上的2个LED(DS0和DS1)和蜂鸣器,其中WK_UP控制蜂鸣器,按一次
3、叫,再按一次停;KEY2控制DS0,按一次亮,再按一次灭;KEY1控制DS1,效果同KEY2;KEY0则同时控制DS0和DS1,按一次,他们的状态就翻转一次。有源蜂鸣器自带了震荡电路,一通电就会发声2.硬件设计本实验用到的硬件资源有:1)指示灯DS0、DS12)4个按键:KEY0、KEY1、KEY2、和WK_UP。DS0、DS1以及蜂鸣器和STM32的连接在上两章都已经分别介绍了,在战舰STM32开发板上的按键KEY0连接在PE4上、KEY1连接在PE3上、KEY2连接在PE2上、WK_UP连接在PA0上。如图
4、所示:-学习资料分享----WORD格式-专业学习资料-可编辑按键与STM32连接原理图这里需要注意的是:KEY0、KEY1和KEY2是低电平有效的,而WK_UP是高电平有效的,并且外部都没有上下拉电阻,所以,需要在STM32内部设置上下拉。3.软件设计key.h#ifndef__KEY_H-学习资料分享----WORD格式-专业学习资料-可编辑#define__KEY_H#include"sys.h"-学习资料分享----WORD格式-专业学习资料-可编辑#defineKEY0GPIO_ReadInputDa
5、taBit(GPIOE,GPIO_Pin_4)//#defineKEY1GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_3)//#defineKEY2GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2)//读取按键读取按键读取按键012-学习资料分享----WORD格式-专业学习资料-可编辑#defineWK_UPGPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0)//读取按键3(WK_UP)-学习资料分享----WORD格式-专
6、业学习资料-可编辑#defineKEY0_PRES1//KEY0按下#defineKEY1_PRES2//KEY1按下#defineKEY2_PRES3//KEY2按下#defineWKUP_PRES4//WK_UP按下(即WK_UP/WK_UP)-学习资料分享----WORD格式-专业学习资料-可编辑voidKEY_Init(void);//IO初始化-学习资料分享----WORD格式-专业学习资料-可编辑u8KEY_Scan(u8);//按键扫描函数-学习资料分享----WORD格式-专业学习资料-可编
7、辑#endif这段代码里面最关键就是4个宏定义:#defineKEY0GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_4)//读取按键0#defineKEY1GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_3)//读取按键1#defineKEY2GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2)//读取按键2-学习资料分享----WORD格式-专业学习资料-可编辑#defineWK_UPGPIO_ReadInputDataBit(G
8、PIOA,GPIO_Pin_0)//读取按键3(WK_UP)-学习资料分享----WORD格式-专业学习资料-可编辑然后我们打开USER文件夹Template.uvprojx,按新建按钮新建一个文件,然后保存在HARDWARE->BEEP文-学习资料分享----WORD格式-专业学习资料-可编辑件夹下面,保存为key.c。在该文件中输入如下代码:#include"stm
此文档下载收益归作者所有