8279单片机程序实现的多功能电子秒表
需积分: 11 189 浏览量
更新于2024-08-02
收藏 64KB DOC 举报
"这篇资源是关于使用单片机设计电子秒表的程序,采用8279芯片进行显示控制,具备显示时间、修改时间、设置闹钟和倒计时以及定时触发灯闪烁等功能。程序中定义了各个接口和变量,包括8279的状态/命令口、数据口、显示模式、键盘扫描方式以及蜂鸣器、工作指示灯等的端口定义。同时,定义了用于存储时间、倒计时和闹钟数值的内存地址。程序流程包括初始化、时间转换、定时器中断处理、显示、键盘扫描和设置功能。"
在单片机设计的电子秒表程序中,涉及的知识点主要有以下几个方面:
1. **8279芯片**:8279是一种专门用于显示器管理的接口芯片,它可以控制数码管的显示,并处理键盘输入。在这个项目中,8279被用来控制显示时间和接收按键输入。
2. **显示控制**:程序中定义了显示模式(LEDMODE)和清除显示RAM指令(LEDCLSEQ),通过向8279发送特定命令来实现数码管的显示与清零。
3. **键盘扫描**:通过定义外部译码键扫描方式,实现双键互锁功能。在程序中,K1-K4分别定义为四个键盘输入,通过键盘扫描子程序(KEY_SCAN)来检测按键输入。
4. **定时器中断**:使用定时器中断(TIMER_0)来实现时间的递增和定时触发功能。定时器0(TM0)设置为方式1,定时50ms,通过设置TH0和TL0的初值实现定时。
5. **中断系统**:初始化中断优先级IP和中断允许寄存器IE,使能定时器0中断。中断服务子程序包括时间转换(CONV)、定时3秒处理(TI3)、闹钟判断(RING)和显示更新(DISP)。
6. **时间处理**:定义了秒(SEC0)、分钟(MM_DEQU)、小时(HH_DEQU)和倒计时变量(SEC_DEQU、MM_DEQU、HH_DEQU),以及闹钟时间变量(HHE、MME、SSE)。这些变量用于存储当前时间及设置的闹钟时间。
7. **程序流程**:程序从主函数(MAIN)开始,首先进行8279初始化,然后进入主循环,依次执行时间转换、定时处理、闹钟判断、显示更新和键盘扫描。如果检测到按键输入,会跳转到设置键处理子程序(SET_KEY)。
8. **存储器组织**:堆栈初始化在060H地址,各变量和寄存器的存储位置也进行了明确的定义。
这个项目的实现涵盖了单片机编程的基础知识,包括I/O接口、中断系统、定时器应用、键盘扫描和数码管显示,是学习单片机控制系统设计的一个典型实例。
2011-10-26 上传
2019-05-02 上传
2011-05-08 上传
2011-04-16 上传
2023-02-27 上传
2021-09-30 上传
2020-09-10 上传
2023-07-06 上传
2022-07-08 上传
kittywxy
- 粉丝: 0
- 资源: 1
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍