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

肖港网站开发福建省建设执业注册资格管理中心网站

肖港网站开发,福建省建设执业注册资格管理中心网站,广州正规网站建设哪家好,sem是做什么的目录 1.按键简介 2.独立按键控制LED亮灭 3.独立按键控制LED移位 1.按键简介 在生活中#xff0c;我们常常会见到各种按键#xff0c;我们的开发板上也有按键#xff0c;就在左下角有四个按键#xff0c;我们把它们叫做独立按键。 独立按键的原理比较简单…    目录 1.按键简介      2.独立按键控制LED亮灭 3.独立按键控制LED移位 1.按键简介      在生活中我们常常会见到各种按键我们的开发板上也有按键就在左下角有四个按键我们把它们叫做独立按键。 独立按键的原理比较简单大概就是按下独立按键按键就会把电路连通松开按键又会恢复原样。 按键的内部结构是一个有弹性的金属片按下会连接电路松开之后又会恢复原样所以电路又会断开。在单片机中我们的按键对应的GPIO管口是下面这样的 你会发现这里其实有一点不太一样的东西就是K1和K2对应的GPIO口好像有点不太一样是反过来的这个具体的原因我们不得而知但是我们使用的时候需要记住我们两个按键对应控制的端口是不一样的就行了。 这里这里我们按下K1电路连接P31管脚就会接收到低电平信号也就是P31会由默认的高电平1变成0所以我们使用的时候只需要判断端口的值是1还是0就行了。 其次金属按键还有一个性质——按下抖动 这也是一个按键的弊端按键按下和松开时的抖动会导致控制的变化比如我们定义按下按键灯就亮那么存在抖动的情况下我们的灯可以在前面的这段抖动的时间里面不断变化也就是暗亮交替闪烁之后再保持稳定所以按键中一大重要的操作就是按键消抖。 2.独立按键控制LED亮灭 这里我们使用KEY1来控制LED1的亮灭按键1对应的端口是P31LED1对应的端口是P20我们先考虑一下如何使用按键。 首先我们使用按键就要检测按键的按下按键按下的时候把LED1的状态更改这样就好了单在细节方面还需要补充比如我们的按键需要消抖防止出现因为按键抖动导致的差错所以我们需要在检测到按键按下之后暂停20ms进行消抖处理在按键松开之后再进行消抖处理这样就免除了按键抖动对我们操作的干扰了。 其次按键按下之后松开之前会一直处于按下的状态也就是说我们如果在这里设置LED变为LED即LED由1变0由0变1这样的话我们在按下按键之后松开之前会一直进行判断KEY而且每次都会成功然后变化LED状态这并不是我们想要的。所以我们就要使用while循环把按键处于按下状态锁定起来循环内部不使用任何操作也就是写一个while(KEY0);这样我们就可以让按键按下的时候始终处于这个循环里按键松开之后再执行相应操作。 然后我们就可以实现我们的代码了 #include REGX52.H #include INTRINS.Hsbit KEY1 P3^1; sbit LED1 P2^0;void Delay(unsigned int xms) //11.0592MHz {while(xms--){unsigned char i, j;_nop_();i 2;j 199;do{while (--j);} while (--i);} }void main() {LED1 1;while(1){if(KEY1 0){Delay(20);//消抖while(KEY1 0);//检测按键松开Delay(20);//消抖LED1 !LED1;//变化状态}} } 这里我们的代码中使用了 sbit KEY1 P3^1; 和 sbit LED1 P2^0;这两句代码定义端口其实我们也可以直接对两个端口赋值但是我们的格式就要变了比如我们使用P3_1和P2_0而不是P3^1和P2^0,因为这两种表示方式在51里是不一样的。 3.独立按键控制LED移位 这里模仿LED流水灯的效果我们使用按键检测来让LED移位思路是KEY1控制左移KEY2控制右移初始LED默认在LED1的位置处于亮的状态。 这样我们就可以实现代码了 我们需要控制整个LED串所以就选择对P2端口直接赋值初始值需要是只有LED1亮那么输入的数据就要是1111 1110也就是初始化P2为0xFE然后就是LED的左右移动使用_crol_()和_cror_()函数即可按键的消抖和KEY1P31与KEY2P30对应的端口也要注意一下并且数据输入的是反过来的数据所以我们的左移右移操作也要相反即KEY1使用右移函数实现LED左移KEY2使用左移函数实现LED右移这样就可以完成我们的操作 #include REGX52.H #include INTRINS.Hsbit KEY1 P3^1; sbit KEY2 P3^0;void Delay(unsigned int xms) //11.0592MHz {while(xms--){unsigned char i, j;_nop_();i 2;j 199;do{while (--j);} while (--i);} }void main() {P2 0xFE;while(1){if(KEY1 0){Delay(20);while(KEY1 0);Delay(20);P2 _cror_(P2,1);}if(KEY2 0){Delay(20);while(KEY2 0);Delay(20);P2 _crol_(P2,1);}} }然后上电测试就完成了独立按键部分的内容
http://www.pierceye.com/news/556112/

相关文章:

  • 网站建设的案例教程视频教程兴平市住房和城乡建设局门户网站
  • cps推广网站怎么制作网站图片不显示
  • 手机网站设计图尺寸网站里的课程配图怎么做
  • 网站建设贰金手指下拉贰拾烟台酒店网站建设
  • 哈尔滨建设工程信息网站青岛网络宣传
  • 阿里云网站建设部署与发布网站没备案怎么做淘宝客
  • 潍坊建设银行网站珠海新盈科技 网站建设
  • 金华金东区建设局网站wordpress打开乱码
  • 创建一个网站的条件有哪些网站建设知名
  • 网站目录管理模版昆明大型网站建设费用
  • 莆田高端网站建设wordpress 表情没反应
  • 深圳做网站推广哪家好传奇网站模板怎么做的吗
  • 石景山区网站建设网线制作方法及步骤
  • 做网站端口内容无法替换做微信公众号网站
  • 电商网站首页怎么制作做网站用什么语言高效
  • 广州自助建设网站平台天津做网站美工
  • js 捕获网站异常插件网站商城怎么做
  • 北辰网站开发淮北哪有做淘宝网站
  • 建设银行e路通网站室内设计师证需要学哪些课程
  • 舟山市建设信息港网站打不开如何建设一个收费的影视图文网站
  • 内蒙建设信息网站网页制作作品阐述
  • 天津网站seo策划服装定制项目计划书
  • 常州网站建设大全买奢侈品代工厂做的产品的网站名
  • 建设网站如入什么费网站建设体会doc
  • 不备案怎么做淘宝客网站吗深圳华强北新闻最新消息今天
  • 梅兰商贸网站开发设计外国网站在中国做推广
  • 有无专门做网站会员人数迅速增加的方法北京单页营销型网站
  • 岳阳网站开发网站运营怎么做建设网站设计
  • 能打开各种网站的浏览器下载合集建设农产品网络营销网站
  • 陕西网站建设方案优化如何做网站挂qq