欢迎来到天天文库
浏览记录
ID:52085713
大小:354.50 KB
页数:20页
时间:2020-03-31
《《按键控制LED灯》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、任务五按键控制LED灯在单片机应用系统中,通常都要求单片机有人机对话功能。需要输入信息,实现对系统的控制,这时就需要键盘。单片机的端口除了做输出外也可用做输入。本任务通过制作一个使用按键控制LED灯,来学习单片机端口输入的使用方法,同时学习常用的输出设备:LED数码管。硬件知识1、硬件电路原理图2、89S51单片机端口的输入方法89S51单片机的外部端口均为双向端口,即:既可以用做输出,也可以用做输入。用做输入揣口时应当注意以下问题。(1)端口用于输入前必须向端口写“1”(2)P0口中无上拉电阻,用做开关输入时必须外加上拉电阻,而其他端口内部含
2、有上拉电阻阻,用做开关输入时可不必外接上拉电阻。3、开关输入的连接方法当需要使用的开关数量较少时,一般直接使用独立式按键输入,每个开关占用一个端口,其优点是编程简单,缺点是占用端口资源多。当需要的开关数量较多,CPU端口不够用时,使用矩阵式输入,其优点是占用端口资源少,缺点是编程比较复杂。本任务中使用独立式按键输入方法。图5-2所示为一个独立式按键输入的常用连接方法,当按键按下时CPU端口为“0”,当按键松开时CPU端口为“1”。通过程序读取端口状态就能知道开关的状态。图5-2独立式按键输入端口在上拉电阻的作用下保持为高电平按键按下端口为低电平
3、状态,输入逻辑“0”输入逻辑“1”89S51单片机中各端口用做输入时除P0端口外,其他端口内部都具有上拉电阻,因此使用这些端口做开关输入时可不用外接上拉电阻。由于实验板上的按键使用了P3口的4根I/O口线,因此可以省略外接上拉电阻。4、LED数码管LED数码显示器是一种由LED发光二极管组合显示字符的显示器件。它使用了8个LED发光二极管,其中7个发光二极管构成字形“8”的各个笔画(段)a~g,另1个用于显示小数点dp,故通常称之为8段发光二极管数码显示器。其内部结构如图5-3(a)所示。LED数码显示器有两种连接方法:(1)共阴极接法。把发光
4、二极管的阴极连在一起构成公共阴极,使用时公共阴极接低电平。每个发光二极管的阳极通过电阻与输入端相连。如图5-3(b)所示。当笔画(字段)接高电平时被点亮。(2)共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接高电平,每个发光二极管的阴极通过电阻与输入端相连。如图5-3(c)所示。当笔画(字段)接低电平时被点亮。LED数码显示器的结构与显示段码【软件知识】1、用于输入的指令功能指令举例指令功能读取一个端口的状态MOVC,bitMOVC,P3.2把P3.2端口的状态送到C读取一组端口的状态MOVA,directMOVA,P3把P
5、3中8个端口的状态送到累加器A中根据端口状态进行转移操作JBbit,标号JBP0.1,L1如果P0.1为状态“1”,则转移至L1,如果P0.1为状态“0”,则顺序执行JNBbit,标号JNBP1.6,L2如果P1.6为状态“0”,则转移至L2,如果P1.6为状态“1”,则顺序执行2、其他指令功能指令举例指令功能把Cy的内容传送给指定位MOVbit,CMOVC,P0.0把C的值传送到P0.0端口输出把指定位清0CLRbitCLRP0.0P0.0清0,输出低电平把指定位置1SETBbitSETBP0.1P0.1置1,输出高电平把立即数送内部存储单元
6、MOVdirect,#dataMOVP0,#0F9H把立即数0F9H送给P0端口输出3、位操作与字节操作从上表中可以看出:指令MOVC,P3.2与MOVA,P3有一个很大的不同就是操作的对象不同。MOVC,P3.2一次操作一位,而MOVA,P3一次操作一个字节。类似的以位作为操作对象的指令一共有17条,称为位处理指令。例如JBP0.1,L1,就是一条位处理指令。位处理指令操作的对象是可直接寻址位,其寻址范围是00H—0FFH,共256位。其中低128位的地址是连续的,地址范围是00H—7FH。地址在80H以上的位都是特殊功能寄存器里的可直接寻址
7、位,这些特殊功能寄存器的共同特点是其地址(注意:是特殊功能寄存器自己的字节地址,不是位地址)能被8整除,这样的特殊功能寄存器有12个,共有93个可直接寻址位(有3个位IP.7、IP.6、IE.6没有定义)。因此80H以上的位地址并不连续。详见任务三的相关部分。下表中列出了P0~P3口字节地址与位地址的关系。字节地址位地址PX.7PX.6PX.5PX.4PX.3PX.2PX.1PX.0P080H87H86H85H84H83H82H81H80HP190H97H96H95H94H93H92H91H90HP20A0H0A7H0A6H0A5H0A4H0A
8、3H0A2H0A1H0A0HP30B0H0B7H0B6H0B5H0B4H0B3H0B2H0B1H0B0H【实训内容与步骤】按键控制对应LED灯点亮参考
此文档下载收益归作者所有