1、 目录目录 一 标题 二 设计内容,设计要求 三 设计思路 四 工作原理 五 硬件设计 六 软件设计(含流程图) 七 调试(遇到的问题和解决方法) 八 改进意见 九 收获及体会 十 源程序(含注释) 一 标题 简易秒表 LED 数码管显示接口技术应用 二 设计内容,设计要求 内容: 1 通过简易秒表的制作,熟悉 LED 数码管与单片机的接口方式; 2 并行接口、 定时计数器、 串行通信、 查询、 中断技术的综合应用; 3 学会独立键盘的使用。 4 利用按键构成键盘实现秒表的启动、停止与复位, 5 利用 LED 数码管显示时间。 6 进行简单的串行通信。 要求: 1 如何运用单片机实现计时; 2
2、 如何显示时间; 3 如何利用按键实施对秒表的控制。 4 定时器 T0 或 Tl 的定时时间作为时钟计时的基准 5 启动与停止定时器工作实现计时。 6 先用两个数码管动态显示时间,时间范围为 0-60s 7 用三个独立式按键实现秒表的启动、停止和复位功能。 8A 机发送,B 机接收* 三 设计思路 1 根据设计的总体要求划分出各功能程序模块,分别确定主程序、子 程序及中断服务程序结构。 2 对各程序模块占用的单片机资源进行统一调配。 3 对各模块间的逻辑关系进行细化,优化程序结构; 4 设计出各模块程序结构流程图。 5 最后依据流程图编制具体程序。 6 将整个程序划分为主程序、键盘扫描程序、秒
3、计时程序三大模块。 主程序除完成初始化外,主要由动态显示程序构成。 7 秒计时程序由定时器 0 中断服务子程序构成,键盘扫描程序也由各 中断服务子程序来实现。 内存分配 地址分配 用途 初始值 20H 秒表数单元 SEC 00H 21H 50ms 重复计数单元 MSEC 14H 30H 秒个位显示缓冲区 00H 31H 秒十位显示缓冲区 00H TAB : DB 0COH , F9H , 0A4H , 0B0H , 99H DB 92H , 82H , 0F8H , 80H , 90H ;共阳极 LED 显示字形表 四 工作原理 +5V+5V+5V+5V+5V+5V a b c d e f g
4、 dp a b c d e f g dp a b c d e f g dp a b c d e f g dp a b c d e f g dp a b c d e f g dp TXD RXD R1 IN T1 OUT MAX232 T1 IN R1 OUT TXD RXD Vss Vcc +5V P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 30pF 30pF 12MHz XTAL1 XTAL2 +5V INT0 INT1 T1 S2 S3 S4 +5V RESET S1 10K 10K 22uF
5、1K1K 1K 1K1K1K 510510510510510510 10K10K 89C51 图 1 电路原理图 S2 : 启 动 按 键: 启 动 按 键 S1 : 复 位 按 键: 复 位 按 键 INT1(P3.3) INT0(P3.2) T1(P3.5) S3:暂停按键:暂停按键 S4:清零按键:清零按键 图 2 电路布线图(prote) 五 硬件设计 a bf c g d e a b c d e f g com dp dp a bf c g d e a b c d e f g com dp dp P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1
6、.6 7 P1.7 8 INT1 9 INT0 10 T0 11 T1 12 EA/VPP 13 XTAL1 14 XTAL2 15 RESET 16 RD 17 WR 18 GND 19 VCC 20 PSEN 21 ALE 22 TXD 23 RXD 24 P2.7 25 P2.6 26 P2.5 27 P2.4 28 P2.3 29 P2.2 30 P2.1 31 P2.0 32 P0.7 33 P0.6 34 P0.5 35 P0.4 36 P0.3 37 P0.2 38 P0.1 39 P0.0 40 AT89C51 a bf c g d e a b c d e f g com dp dp a bf c g d e a b c d e f g com dp dp a bf c g d e a b c d e f g com dp dp a bf c g d e a b c d e f g com dp dp R1 IN 13 R2 IN 8 T1 IN