8279单片机程序实现的多功能电子秒表

需积分: 11 44 下载量 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接口、中断系统、定时器应用、键盘扫描和数码管显示,是学习单片机控制系统设计的一个典型实例。