微机原理大作业1

preview
需积分: 0 3 下载量 52 浏览量 更新于2022-08-03 收藏 2.31MB PDF 举报
【微机原理大作业1】涉及的知识点主要集中在嵌入式系统、硬件接口设计和中断控制方式上。在这个实验中,学生需要设计一个基于MicroBlaze微处理器的嵌入式MIMO系统,该系统需要与多种并行IO设备交互,包括LED灯、开关、按键和七段数码管。以下是详细的解释: 1. **GPIO IP核的工作原理**: GPIO(General Purpose Input/Output)是一种通用I/O端口,可以作为输入或输出使用,用于连接外部设备。在MicroBlaze系统中,GPIO核允许CPU与外部设备进行数据交换,例如读取开关状态或控制LED灯的亮灭。 2. **IO接口程序控制方法**: 在程序控制方式下,CPU会定期检查设备状态并执行相应的操作。例如,LED灯的流水灯效果可以通过CPU周期性地改变输出状态来实现。当需要改变LED亮灭速度时,CPU需要不断读取按键状态,根据按键调整定时器中断的频率。 3. **中断控制方式**: - **普通中断方式**:在普通中断模式下,外部设备触发中断请求,CPU暂停当前任务,执行中断服务程序,处理中断事件后恢复原任务。例如,按键或定时器中断可以用来改变LED的亮灭速度或更新七段数码管的显示。 - **快速中断方式**:快速中断具有更高的优先级,中断处理更快,适合处理需要快速响应的事件。在实验中,可能需要为不同的中断源(如定时器TO、T1和GPIO)编写不同的中断服务程序。 4. **定时器中断设计**: - **T0** 用于LED流水灯,其中断服务程序会点亮下一个LED并调整定时器的加载值以控制速度。 - **T1** 用于七段数码管的动态显示,中断事务处理会更新数码管的位置,保持视觉暂留效果。 5. **GPIO中断设计**: 开关和按键的中断处理涉及读取状态,更新七段数码管显示缓冲区,以及根据按键状态调整定时器设置。 6. **中断源和中断控制器INTC**: 四个中断源(T0、T1、开关和按键)在INTC中可能表现为三个中断,因为T0和T1共享一个定时器IP核。中断服务程序需要能够区分不同中断源,调用适当的处理函数。 7. **硬件接口电路设计**: 实验中需要GRIO、Timer和中断控制器IP核。GPIO_0用于16位开关和LED灯,GPIO_1用于四位七段数码管的位码和段码。接口电路设计要考虑中断源、GPIO通道的分配以及中断服务程序的实现。 实验目的旨在让学生掌握GPIO接口、中断控制方式以及如何在嵌入式系统中设计和优化这些功能。通过这个大作业,学生可以提升对硬件接口设计、软件编程和中断处理的理解,同时学习如何解决实际问题,如延迟响应和优化性能。