微机原理中6 位 7 段 LED 数码管显示课程设计
### 微机原理中6 位 7 段 LED 数码管显示课程设计 #### 一、设计目的概述 本课程设计旨在让学生通过实践掌握定时器与时基信号的使用方法,并深入理解LED数码管的工作原理。在此基础上,学生需学会如何使用SPCE061A单片机来控制LED数码管的显示。 #### 二、设计环境 1. **硬件配置**:本实验需要使用装有Windows系统的PC机,以及配备µ’nSP™IDE仿真环境的PC机和一个µ’nSP™十六位单片机实验箱。 2. **实验箱硬件模块**:实验箱包含SPCE061A核心及其周边电路模块(具备32个I/O口)和6位8段数码管电路模块。 #### 三、设计要求 1. **编程要求**:主程序需使用C语言编写,中断服务程序则采用汇编语言编写。 2. **实现功能**:利用SPCE061A单片机控制6个LED数码管的显示。 3. **实验现象**:启动后,所有数码管均显示数字0并持续1秒。随后,第一位数码管从0至9依次显示,每次显示间隔为0.5秒,其余数码管均显示0。当第一位数码管显示完9后,第一位保持显示9,第二位数码管从0至9显示,以此类推,直至第六位数码管显示完9,此时所有数码管显示9,之后再次显示0,循环往复。其中,1秒和0.5秒的时间间隔由2Hz的时基信号(IRQ5)提供。 #### 四、设计相关知识 1. **时间基准信号** - **定义**:时间基准信号来源于32768Hz实时时钟,通过不同的频率选择组合而成。 - **应用**:时基信号产生器不仅为TimerA提供时钟来源,还为中断系统提供中断源信号(IRQ6)。此外,它还可以通过分频产生不同频率的时基信号(2Hz、4Hz、1024Hz、2048Hz以及4096Hz),这些信号可以作为中断系统中的实时中断源(IRQ4和IRQ5)。 - **配置**:通过对P_Timebase_Setup(写)(700EH)单元编程来选择所需的频率。而P_Timebase_Clear(写)(700FH)单元用于控制时基计数器的复位和时间校准,写入任何数值后,时基计数器会被设为“0”。 2. **Timer定时器/计数器** - **介绍**:SPCE061A单片机配备了两个16位的计时/计数器:TimerA和TimerB。TimerA为通用计数器,TimerB为多功能计数器。 - **工作原理**:定时器在选定的时钟频率下开始计数,达到最大值后产生溢出信号(TAOUT/TBOUT),触发中断请求,由CPU中断系统处理。定时器还可以触发ADC输入的自动转换过程或DAC输出的数据锁存。 - **配置**:要启用定时器,需要将计数值N写入P_TimerA_Data(读/写)(700AH)或P_TimerB_Data(读/写)(700CH)单元,并选择合适的时钟源。例如,TimerA的时钟源由时钟源A和时钟源B进行“与”操作组成。时钟源A和时钟源C来自PLL锁相环的晶体振荡器输出Fosc,而时钟源B来自32768Hz实时时钟系统。 #### 五、编程实现 1. **主程序**:使用C语言编写主程序,负责初始化硬件资源,包括设定定时器和时基信号。 2. **中断服务程序**:使用汇编语言编写中断服务程序,用于处理定时器产生的中断请求,更新LED数码管的显示内容。 #### 六、总结 本课程设计通过理论讲解与实践操作相结合的方式,使学生深入了解定时器与时基信号的工作原理,以及如何利用SPCE061A单片机实现对LED数码管的精确控制。通过完成这个课程设计,学生能够提高编程能力,并且掌握单片机控制数码管显示的基本技能,为进一步学习和研究微机原理奠定坚实的基础。
剩余11页未读,继续阅读
- liumuliang2012-11-29程序编写的很成功,运行没有问题,完美的解决了我的问题
- 粉丝: 1
- 资源: 13
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助