本帖最后由 zl2168 于 2016-10-11 21:53 编辑
实例5 4种不同方式键控信号灯
按键按能否锁定可分为有锁按键和无锁按键。有锁按键是按下即能锁定闭合状态,只有再次按一下才能解除闭合状态,回归断开状态。无锁按键不能锁定闭合状态,除非按住键不予释放,典型的例子就是电脑键盘上的按键。
单片机应用系统中,根据按键闭合和释放状态,有多种不同的键控方式,可编写不同的程序予以实现。本例要求按以下4种不同方式分别键控VD0~ VD3。
⒈ 电路设计 P1.0~P1.3分别接VD0~VD3发光二极管,输出低电平时亮,输出高电平时暗。R0~R3为限流电阻,取330Ω。S0~S3为无锁按键,键信号输入端分别为P1.4~P1.7,按键闭合时输入0,按键断开时输入1。R4~R7为上拉电阻,取10kΩ,接+5V,如图3-7所示。
① 无锁按键:S0按下,VD0亮;S0释放,VD0暗;
② 无锁按键(前沿有效):S1按下,VD1亮;S1释放,VD1延时2s后暗。
③ 无锁按键(后沿有效):S2按下,VD2不亮;S2释放,VD2亮,并延时2s后暗。
④ 模拟有锁按键:S3按第一次,VD3亮,并继续保持;按第二次,VD3才暗。
先Proteus仿真一下,确认有效。
以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil C和Proteus》清华大学出版社ISBN 978-7-302-41682-1
书中电路和程序设计有详细说明,程序语句条条有注解。
|