您的位置 首页 分销

经过按键操控IO口操作

今天对单片机按键有了一定的认识,单片机分为独立式键盘和矩阵式键盘,独立式占用IO口资源比较大,适合按键少的控制操作,其优点是设计编程

今日对单片机按键有了必定的知道,单片机分为独立式键盘和矩阵式键盘,独立式占用IO口资源比较大,合适按键少的操控操作,其长处是规划编程一望而知,比较简略,矩阵式占用IO口比较少,合适对按键要求比较高而IO口资源比较名贵的操作,这两者各有其长处和缺陷,今后应用时要根据需求进行规划,特别是矩阵式的要使用行线,和列线的凹凸电平检测和处理数据信息的原理要记住。

下面把今日学的一个简略的经过按键操控IO口LED灯作业的程序写一下,呵呵,能够加深我对按键操作(ELSE句子)的了解。

#include
#define uint unsigned int
#define uchar unsigned char
sbit DIPswitch1=P3^0;
sbit DIPswitch2=P3^1;
sbit redLED1=P1^0;
sbit blueLED1=P1^1;
sbit greenLED1=P1^2;
sbit yellowLED1=P1^3;
sbit redLED2=P1^4;
sbit blueLED2=P1^5;
sbit greenLED2=P1^6;
sbit yellowLED2=P1^7;
void delay(void)
{uint i;
for(i=0;i<35530;i++);
}
void main(void)
{
P1=0XFF;
P3=0XFF;//置位
while(1)
{
if(DIPswitch1==0)
{
redLED1=~redLED1;
yellowLED2=~yellowLED2;//判别按钮1是否为低电平,假如是的话,完成P0口的1脚和7脚按位取反
delay();}//延时操作
else if(DIPswitch2==0)
{
P1=~P1;//按键2取低时,P0口一切位按位取反闪耀
}
else
{
P1=0X00;//假如按键1VS2都为高,则一切灯亮
}

}
}

作业原理是当按键1为低adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=17&is_app=0&jk=90ec16ab04311395&k=%B5%E7%C6%BD&k0=%B5%E7%C6%BD&kdi0=0&luki=5&n=10&p=baidu&q=98059059_cpr&rb=0&rs=1&seller_id=1&sid=95133104ab16ec90&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1831118&u=http%3A%2F%2Fwww%2E51hei%2Ecom%2Fmcu%2F1994%2Ehtml&urlid=0″ id=”3_nwl” mpid=”3″ target=”_blank”>电平常,P1口的1脚和7脚按位取反,完成LED灯的闪耀。当按键2为低电平的时分,P1口一切的灯完成按位取反功用,一切灯闪耀。当按键1和2都为高电平常,P1口为低电平,一切灯亮。

这个硬件电路是P3^0和P3^1操控按键1和2;P1口操控八个LED灯。

呵呵,数码管的动态和静态还在学习傍边,现在根本的静态操控应该是会了,动态的争夺这两天把它学完。加油。
因为时刻联系,在这就不写上单片机的作业体系了。


有了这个程序和原理图,咱们也能够根据需求适当得改写程序,到达咱们想要的意图。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/fenxiao/318120.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部