233-本章介绍了单片机的选型及应用系统的设计过程。通过一个综合实例,.ppt

233-本章介绍了单片机的选型及应用系统的设计过程。通过一个综合实例,.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章学习目标 : 本章介绍了单片机的选型及应用系统的设计过程。通过一个综合实例,完整地介绍了89C51与外围电路的硬件接口及软件设计。通过对本章的学习,读者应达到以下目标: 能熟悉单片机系统设计的基本要求及研发过程 学会正确选择单片机的型号 能看懂设计实例,并尝试对具体课题进行总体设计 8155的地址分配如下: ● 控制寄存器:8000H,定义为PORT ● A口:8001H,定义为PORTA ● B口:8002H,定义为PORTB ● C口:8003H,定义为PORTC 3. 4×3键盘输入电路: 采用4×3键盘,包括0~9十个数字键(键号为00H~09H)、C/R键(时间设定/启动计时键,键号为0AH)和ALM键(闹钟设置/启闹/停闹键,键号为0BH)。 4. LED数码显示电路: 采用共阴极数码管实现时钟显示,6位LED从左到右依次显示时、分和秒,采用24小时计时。 5. 蜂鸣器启闹电路: 由89C51的P1.0控制驱动蜂鸣器(低电平有效)。 图9—5 数字钟硬件电路图 9.3.4 程序设计 1.系统资源分配 定时器T0按照定时方式1工作,片内RAM及标志位的分配与定义见表9—1。 地 址 功 能 名 称 初始值 30H-35H 显示缓冲区,时、分、秒(高位在前) DISP0-DISP5 00H 3CH-3FH 计时缓冲区,时、分、秒、100ms HOUR,MIN,SEC,MSEC 00H 40H-42H 闹钟值寄存区,时、分、秒 AHOUR,AMIN,ASEC FFH 50H-7FH 堆栈区 ? ? PSW.5 计时显示允许位(1:禁止,0:允许) F0 0 PSW.1 闹钟标志位(1:正在闹响,0:未闹响) F1 0 表9—1 片内RAM及标志位的分配 2.主要程序设计 (1)主程序 实现初始化与键盘监控,流程图如图9—6所示。 (2)定时器T0中断服务程序 实现计时功能,同时刷新计时缓冲区。流程图如图9—7所示。 定时器T0每隔100 ms溢出中断一次(设系统使用6 MHz晶振,定时器T0工作在方式1的定时器初值为3CB0H,即TH0=3CH,TL0=0B0H),每循环中断10次则延时时间为1s,重复60次为1分,分计时60次为1小时,小时计时24次则时间重新回到00:00:00。 图9—6 主程序流程图 图9—7 计时流程图 (3)时间设置与闹钟设置子程序 实现当前时间及定时启闹时间的键盘输入设置。流程图如图9—8所示。 图9—8 时间设置/闹钟定时流程图 其功能是用键盘设置子程序将键入的6位时间值送入键盘设置缓冲区,用合字子程序将键盘设置缓冲区中的6位BCD码合并为3位压缩BCD码,送入计时缓冲区或闹钟值寄存区。若键盘输入的小时值大于23,分和秒值大于59,则不合法,将取消本次设置,清零重新开始计时。 (4)键盘扫描子程序 图9—9 键盘扫描程序流程图 作用: 判断是否有键按下,无键按下则循环等待,有键按下则求取键号后返回。流程图如图9—9所示。 图9—10 显示程序流程图 (5)显示子程序 实现显示缓冲区的6位BCD码的动态扫描方式显示。 (6)定时比较子程序 实现当前时间(计时缓冲区的值)与预设的启闹时间(闹钟设置寄存区的值)的比较,若二者完全相同时,启动蜂鸣器鸣叫并置位闹钟标志位。当重新按下ALM键时,停闹并清零闹钟标志。流程图如右图所示。 (7)其它辅助功能子程序 ●键盘设置子程序:将键入的6位时间值送入键盘设置缓冲区,流程图见图9—12所示。 ● 拆字子程序:将3字节计时缓冲区中时、分和秒压缩BCD码拆分为6字节BCD码并刷新显示缓冲区。 ● 合字子程序:将键盘设置缓冲区中6位BCD码合并为3位压缩BCD码,送入计时缓冲区或闹钟值寄存区,同时检测时间值的合法性。 图9—12 键盘设置子程序流程图 3.源程序清单 主程序: ORG 0000H AJMP MAIN ORG 000BH AJMP CLOCK ORG 0030H PORT EQU 8000H PORTA EQU 8001H PORTB EQU 8002H PORTC EQU 8003H DISP0 EQU 30H DISP1 EQU 31H DISP2 EQU 32H DISP3 EQU

文档评论(0)

小玉儿 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档