当前位置: 首页 > news >正文

山东住房和建设厅网站首页可以发外链的论坛有哪些

山东住房和建设厅网站首页,可以发外链的论坛有哪些,wordpress系统通知邮箱,上海优化外包公司排名文章目录前言模块介绍原理图编程思路前言 昨天,通过配置通用输出模式,实现了LED灯的点亮、熄灭以及流水等操作,解决了通用输出的问题,今天我们再借用最常见的输入模块,按键来实现一个按键控制LED的功能,重…

文章目录

  • 前言
  • 模块介绍
    • 原理图
    • 编程思路

前言

昨天,通过配置通用输出模式,实现了LED灯的点亮、熄灭以及流水等操作,解决了通用输出的问题,今天我们再借用最常见的输入模块,按键来实现一个按键控制LED的功能,重点是配置GPIO为输入模式,以及如何检测GPIO的输入电平。

模块介绍

原理图

笔者用的这款最小系统有三个独立按键,可以操作,首先,第一步还是看原理图来确定我们需要使用的端口和管脚,可以看出K_UP使用的是PA0、K0使用的是PE4、KEY1使用的是PE3。
在这里插入图片描述
注意观察这三个按键的电路,其中KEY0和KEY1是没有上拉电阻的,只有按下按键直接接地这一个电平模式,这个我们在前面讲解GPIO模式的时候提到过,如果没有外部上拉的电路,想要实现高低电平的检测需要在内部编程实现上下拉,这两个按键就是需要使用到内部上拉,使得默认PE4、PE3端口默认是高电平,也就是1,只有按键按下,才会被拉到低电平,也就是0。
而K_UP,刚好相反,只有上拉电路,按下按键是高电平,不按下的时候应该要其默认状态是低,也就是说需要我们为其配置下拉。

编程思路

在看清楚检测原理后,就需要理清编程思路,根据昨天的按键技巧来,首先需要新建文件,命名保存key.c存在src文件夹下,key.h存在inc文件夹下,然后将Key.c添加到工程,再然后是定义头文件,编写初始化函数。
在这里插入图片描述
编写初始化代码:
伪代码:
①编写注释:
/***************************************************************************
*函数名 :Key_Init
*函数功能 :按键所用的管脚的初始化配置
*函数参数 :无
*函数返回值:无
*函数描述 :
KEY_UP------PA0------通用输入模式,默认状态采取内部下拉,按下按键为高电平
K0----------PE4------通用输入模式,默认状态采用内部上拉,按下按键为低电平
K1----------PE3------通用输入模式,默认状态采用内部上拉,按下按键为低电平
***************************************************************************/
②初始化函数
void Key_Init(void)
{
③使能对应端口的时钟,有两个,一个是GPIOA(昨天用过),一个是GPIOE;GPIOA对应第0位,GPIOE对应第4位。(先在数据手册查其挂接的时钟总线,然后再再第六章RCC找到对应使能进行配置)
④设置对应管脚的模式,为通用输入模式,分两组分别配置,A0:应该配置GPIOA的MODER 0 1两位,写入00;E3E4对应GPIOE的MODER的9 8 7 6 位,也都应该写入0000;
⑤设置上下拉,其中PA0设置为下拉模式,应该对GPIOA的PUPDR 的1 0两位写入10;PE4,PE3则应该将GPIOE的PUPDR 寄存器的9 8 7 6 位写入0101。
}
好了,可以发现整个配置过程比昨天的输入配置稍微简单一点,而且昨天输出使用的寄存器在按键输入上都是没有用上的。
接下来来看看代码吧。

//注释
void Key_Init(void)
{//打开AHB1上GPIOA端口RCC->AHB1ENR |= (1<<0);//打开GPIOE端口对应的AHB1时钟RCC->AHB1ENR |= (1<<4);//配置GPIOA0为通用输入模式GPIOA ->MODER &=~(3<<0);//清0  GPIOA_MODER寄存器为00通用输入模式GPIOA ->PUPDR &=~(3<<0);//清0  GPIOA_PUPDR寄存器为00 浮空GPIOA ->PUPDR|=(1<<1);//清0  GPIOA_PUPDR寄存器为10 下拉GPIOE->MODER &= ~(0XF<<6);//通用输入GPIOE->PUPDR &= ~(0XF<<6);//清零GPIOE->PUPDR |=  (0X5<<6);//写入0101配置为上拉模式
}
http://www.dinnco.com/news/76605.html

相关文章:

  • 如何做网站么微指数
  • 垃圾桶东莞网站建设seo发外链的网站
  • 通过ip访问网站需要怎么做seo关键词优化最多可以添加几个词
  • 企业网站建设的申请上海关键词seo
  • 轮播网站杭州seo关键词优化公司
  • 中英文企业网站模板产品软文范例1000字
  • 美橙互联网站管理后台搜索引擎是什么
  • seo全网营销公司百度seo网站
  • wordpress 站点地图搜索引擎培训班
  • 成都网站建设 赢展竞价关键词优化软件
  • 时时彩网站开发需要多少钱优化软件刷排名seo
  • 网站开发团队 人员杭州排名优化公司
  • 网站建设流程发布网站和网页制作seo网络推广优化教程
  • html5软件下载手机版北京谷歌优化
  • 湖南搜索引擎推广软件北京seo推广服务
  • o2o商业模式永州网站seo
  • 网站 刷流量 SEO新网站快速收录
  • 网络平台监管投诉电话seo应该怎么做
  • 做网站推广哪家公司好百度排名优化
  • 中小企业网站的建设实践报告中牟网络推广
  • 新疆交通建设有限公司主页网站网店交易平台
  • 做ps找图的网站网页搜索优化
  • WordPress网站代码修改武汉seo排名扣费
  • 微信小程序开发官方文档海淀区seo搜索引擎优化企业
  • 手机网站开发书籍如何制作网页教程
  • 银行网站建设方案最近军事新闻
  • 网站开发要求描述合肥网站建设程序
  • 武汉设计公司排名前十seo网站排名的软件
  • 网站建设彩铃语seo网络排名优化方法
  • jsp和.net做网站的区别项目推广平台有哪些