基于单片机的学校作息时间控制内容摘要:
可驱动(吸收或输出电流) 4个 TTL 逻辑门电路。 对P3 口写入“ 1”时,它们被内部上拉电阻拉高并可作为输入端口。 此时,被外部拉低的P3 口将用上拉电阻输出电流。 P3口除了作为一般的 I/O 口线外,还具有的第二种功能,如下表所示: 7 表 第二功能 此外, P3 口还接收一些用于 FLASH 闪存编程和程序校验的控制信号。 键盘部分 在单片机应用系统中,除了复位键有专门的复位电路以及专一的复位功能以外,其他的按键或键盘都是以开关状态来控制功能或输入数据的。 键盘是人机交互的一个重要工具。 键盘有两种基本类型:编码键盘和非编码键盘。 编码键盘本身除了按键以外,还包括产生键码的硬件 电路。 这种键盘使用非常方便,但价格相对较高。 非编码键盘是靠软件来识别键盘上的闭合键,由此计算出编码。 非编码键盘几乎不需要附加硬件逻辑,在单片机应用系统中被普遍使用。 本设计中也是采用非编码键盘。 1)按键的分类 按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点开关按键,如电气式按键、磁感应按键等。 前者造价低,后者寿命长。 目前,微机系统中常用的是第一类。 按照接口原理可分为编码键盘与非编码键盘两类,两类键盘的区别是键符识别及给出相应键码的方法。 2)键输入原理 端口引脚 第二功能 RXD(串行输入口 ) TXD(串行输出口 ) INTO(外中断 0) INT1(外中断 1) TO(定时 /计数器 0) T1(定时 /计数器 1) WR(外部数据存储器写选通 ) RD(外部数据存储器读选通 ) 8 当所设置的功能键(复位键单独)或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。 对于一组键或一个键盘,总有一个接口电路与 CPU 相连。 CPU 可以采用查询或中断方式了解有无将键输入并检查是哪一个键按下,将该键号送入累加器 ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。 3)按键结构与特点 微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。 也就是说,它能提供标准的 TTL 逻辑电平,以便与通用数字 系统的逻辑电平相容。 机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。 抖动时间的长短与开关的机械特性有关,一般为 510ms。 在触点抖动期间检测按键的通与断状态,可能导致判断出错。 即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。 为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施,可从硬件、软件两方面予以考虑。 在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。 软件上采取的措施是:在检测到有按键按下时,执行一个 10ms 左右(具体时间应视所使用的按键进行调整)的延时程序后,再确认该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平,则确认该键处于闭合状态;同理,在检测到该键释放后,也应采用相同的步骤进行确认,从而可消除抖动的影响。 4)按键编码 一组按键或键盘都要通过 I/O 口线查询按键的开关状态。 根据键盘结构的不同,采用不同的编码。 无论有无编码,以及采用什么编码,最后都要转换成为与累加器中数值相对应的键值,以实现按键功能程序的跳转。 5)编制键盘程序 一个完善的键盘控制程序应具备以下功能: ( 1)检测有无按键按下,并采 取硬件或软件措施,消除键盘按键机械触点抖动的影响。 ( 2)有可靠的逻辑处理办法。 每次只处理一个按键,其间对任何按键的操作对系统都无影响,且无论一次按键时间有多长,系统仅执行一次按键功能程序。 ( 3)准确输出按键值(或键号),以满足跳转指令要求。 9 独立式按键是指各按键相互独立地接通一条输入数据线,如图 所示。 这是最简单的键盘结构,该电路为查询方式电路。 当任何一个键按下时,与之相连的输入数据线即被清 0(低电平 ),而平时该线为 1(高电平 )。 要判别是否有键按下,用单片机的位处理指令十分方 便。 这种键盘结构的优点是电路简单;缺点是当键数较多时,要占用较多的 I/O线。 图 独立式键盘接口电路 行列式键盘 为了减少键盘与单片机接口时所占用 I/O 线的数目,在键数较多时,通常都将键盘排列成行列矩阵形式。 图 所示的就是本设计所采用的 4 4 键盘接口电路图,下面就说明一下行扫描法识别哪一个按键被按下的工作原理。 图 行列式式键盘接口电路 首先判别键盘中有无键按下,由单片机 I/O 口向键盘送 (输出 )全扫描字,然后读入 10 (输入 )列线状态来判断。 方法是:向 行线 (图中水平线 )输出全扫描字 00H,把全部行线置为低电平,然后将列线的电平状态读入累加器 A 中。 如果有按键按下,总会有一根列线电平被拉至低电平,从而使列输入不全为 1。 判断键盘中哪一个键被按下是通过将行线逐行置低电平后,检查列输入状态实现的。 方法是:依次给行线送低电平,然后查所有列线状态,称行扫描。 如果全为 1,则所按下的键不在此行;如果不全为 1,则所按下的键必在此行,而且是在与零电平列线相交的交点上的那个键。 1) 行扫描法识别键号(值)的工作原理 将第 0行变为低电平,其余行为高电平时,输出编码为 1110。 然后读取 列的电平,判别第 0 行是否有键按下。 在第 0 行上若有某一按键按下,则相应的列被拉到低电平,则表示第 0行和此列相交的位置上有按键按下。 若没有任一条列线为低电平,则说明 0行上无键按下。 将第 1 行变为低电平,其余行为高电平时,输出编码为 1101。 然后通过输入口读取各列的电平。 检测其中是否有变为低电平的列线。 若有键按下,则进而判别哪一列有键按下,确定按键位置。 将第 2 行变为低电平,其余行为高电平时,输出编码为 1011。 判别是否有哪一列键按下的方法同上。 将第 3 行变为低电平,其余行为高电平时,输出编码为 0111。 判别是否 有哪一列键按下的方法同上。 在扫描过程中,当发现某行有键按下,也就是输入的列线中有一位为 0 时,便可判别闭合按键所在列的位置,根据行线位置和列线位置就能判断按键在矩阵中的位置,知道是哪一个键按下。 2) 键盘扫描工作过程 ( 1) 判断键盘中是否有键按下; ( 2)进行行扫描,判断是否键按下,若有,则调用延时子程序去抖动; ( 3)读取按键的位置码; (4)将按键的位置码转换为键值(键的顺序号) 0、 2„ 、 F。 3)键的位置码及键值的译码过程 上述行扫描过程结束后得到的行号和列号存放在不同的寄存器中。 键值(号)的 获得(译码)通常采用计数译码法。 这种方法根据矩阵键盘的结构特点,每个按键的值 =行号每行的按键个数 +列号,即键号(值) =行首键号 +列号,由此: 第 0 行的键值为: 0行 4+列号( 0~ 3)为 0、 3; 第 1 行的键值为: 1行 4+列号( 0~ 3)为 7; 第 2 行的键值为: 2行 4+列号( 0~ 3)为 A、 B; 11 第 3 行的键值为: 3行 4+列号( 0~ 3)为 C、 D、 E、 F。 4 4键盘行首键号为 0、 C,列号为 0, 1, 2, 3。 编制程序时可以把键号制成表,查表实现键功能的处理或直接用跳转程 序的处理。 显示部分 显示器是计算机的主要输出设备,它把运算结果、程序清单等以字符的形式显示出来,以供用户查阅。 目前常用的显示器有数码管显示器( LED 显示器)、液晶显示器( LCD显示器)和 CRT 显示器等,本设计中采用的是 LED 显示器。 下面就相信介绍 LED 显示器的结构和工作原理。 LED 显示器简介 1) 数码管结构 数码管由 8 个发光二极管(以下简称字段)按“日”字形排列构成,其中 7 个发光二极管组成“日”字形的笔画段,另一个发光二极管为圆点形状。 通过不同的组合可用来显示数字 0 ~字符 A ~ F、 H、 P等、符号 “ ” 及小数点 “ .”。 数码管又分为共阴极和共阳极两种结构。 2) 数码管工作原理 共阳 (阴 )极数码管的 8 个发光二极管的阳极(阴极)连接在一起。 通常,公共阳(阴)极接高(低)电平,其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为低(高)电平时,则该端所连接的字段导通并点亮。 根据发光字段的不同组合可显示出各种数字或字符。 此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 (注:二极管阳(阴)极为二极管正(负)端,高电平一般指接电源,低电平一 般指接地。 ) 3) 数码管字形编码 当某一二极管导通时,相应的字段发亮。 这样,若干个二极管导通,就构成了一个字符。 在共阴极数码管中,导通的二极管用“ 1”表示,其余的用“ 0”表示。 这些“ 1”,“ 0”数符按一定的顺序排列,就组成了所要显示字符的显示代码。 例如,对于共阴极数码管来说,阳极排列顺训为 h、 g、 f、 c、 e、 d、 c、 b、 a。 这样,字符 1的显示代码为 00000110,字符 F 的显示代码为 11110001,用十六进制表示分别为 06H 和 71H。 若要显示某一个字符,就在二极管的阳极按显示代码加以高电平,阴极加低电平 即可。 12 LED 静态显示法接口设计 所谓静态显示,就是每一个显示器各笔画段都要独占具有锁存功能的输出口线, CPU把欲显示的字形代码送到输出口上,就可以使显示器显示所需的数字或符号,此后,即使 CPU 不再去访问它,因为各笔画段接口具有锁存功能,显示的内容也不会消失。 静态显示法的优点是显示程序十分简单,显示亮度大,由于 CPU 不必经常扫描显示器,所以节约了 CPU 的工作时间。 但是其主要缺点是占用的 I/O 口线较多,硬件成本较高。 所以静态显示法常用在显示器数目较少的应用系统中。 LED 动态显示法接 口设计 动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。 通常,各位数码管的段选线相应并联在一起,由一个 8位的 I/O 口控制;各位的位选线(公共阴极或阳极)由另外的 I/O 口线控制。 [10]动态方式显示时,各数码管分时轮流选通,要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码。 依此规律循环,即可使各位数码管显示将要显示的字符。 虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够 短就可以给人以同时显示的感觉。 采用动态显示方式比较节省 I/O 口,硬件电路也较静态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时, CPU 要依次扫描,占用 CPU 较多的时间。 本设计 显示电路采用简单实用的 8 位共阳 LED 数码管,段码 由 P0 口输出, 用 74LS244驱动 ; 位码 由 P2 口输出, 用 PNP 三 极管 驱动。 其 显示电路 原理图 如图 所示。 图 显示电路 原理图 13 74LS244 芯片 AT89S52 外部扩展空间很大,但数据总线口和控制信号线的负载能力有限的。 如果扩展的芯片较多, AT89S52 总线 接 口负载 就会 过重, 不利于系统的正常运行。 此时,就需要 扩展 接 口, 同时提高其驱动能力 ,以减轻总线 接 口的负担。 因此,本设计中的显示电路,就利用 74LS244 来扩展单片机的 P0口,以满足八个 LED 数码显示器的驱动。 实际上,我在自制的电路板上验证过,不加此芯片也可以正常显示,只是效果不太好而已。 下面就简单的介绍一下 74LS244。 1)功 能特性 74LS244 是 一种三态输出的 8总线缓冲驱动器,无锁存功能, 8个三态门分为两组,每组 4个 , 使用时可分别以 1G 和 2G 作为它们的选通工作信号。 当 1G 和 2G都为低电平时,输出端 Y 和输入端 A状态相同;当 1G 和 2G 都为高电平时,输出呈高阻态。 74LS244的驱动能力比较强,因此适合单片机并行接口的扩展。 2) 引脚 功能 74LS244 是 20 引脚的 双列 直 插 芯片,其封装形式如图 所示。 下面结合图 来介绍一下各引脚的功能。 图 74LS244 逻辑及管教图 ( 1)电源引脚 Vcc( 20 脚): 主电源正端,接 +5V 电源。 GND( 10 脚):主电源负端,接地。 ( 2)控制引脚 1G( 1脚): 1Y11Y4 输出控制 端 ,低电平有效,高电平高阻。 2G( 19 脚): 2Y12Y4 输出控制 端 ,低电平有效,高电平高阻。 ( 3) I/O 引脚 14 输入引脚 ( 1 1 1 17 脚 ): 1A11A4,2A12A4。 输出引脚 (1 1 14。基于单片机的学校作息时间控制
相关推荐
. 知识管理 文档管理是对个人、单位、公文、项目文档进行集中式信息管理,并可以授权下级部门的文档管理员,实现不同部门或下级单位的多文档员的管理。 另外,协同信息也可以预归档至文档系统;文档系统提供全面综合查询,并提供公文的组合查询。 文档管理系统采用了类 WINDOWS资源管理器的文档夹结构进行管理,同时文档信息来源于协同工作、公文流转,也可以是直接上传的 WINDOWS 文件如 WORD、
论证一些国际航线,根据重庆经济发展与对外交流的需要,及市政府的要求,开通一定数量的国际和港澳航线 ,并计划在这几年内开通数条由重庆始发经停国内某地到东南亚的国际航线。 深航还将在重庆大力发展航空运 输配套产业,并在 2~ 3 年内使深航在重庆的航空旅游、航空物流、及航空服务链达到一定的规模。 (二)第二阶段, 3~ 7 年时间( 2020 年前),深航在重庆基地的运力投入将达到 30 架左右飞机
外部中断 1 T0 定时器 0的外部输入 T1 定时器 1的外部输入 WR 外部数据存储器写选通 11 数据总线是由 P0 口提供的, P0 口本身能以多种方式提供数据总线和地址总线。 当 ALE 输出信号为高电平时, P0 将输出的数据锁入总线驱动器中作为地址的低 8 位,然后和 P2 送出来的高 8 位地址一起组成一个完整的 16 位地址,以寻址到外部的 64KB 的地址空间。 ( 3)
19 DS18B20 温度传感器主要程序 20 第 6 章 系统测试 24 测试方案及测试用例 24 电源 监测 24 LED 检测 24 通过 RS485 连接 ARM 共同检测 24 第 7 章 结 论 25 附 录 26 参考文献 28 致 谢 错误 !未定义书签。 1 第 1 章 绪 论 本篇论文介绍将通过一个单片机系统作为温度采集的一个节点,单片机系统内通过温度传感器 DS18B20
烯烃在合成油中的应用 ............................... 错误 !未定义书签。 国内外润滑油市场的发展趋势 ....................... 错误 !未定义书签。 国内外 PAO 合成润滑油的生产 ....................... 错误 !未定义书签。 PAO 合成润滑油的地位 ..............................