计算机组成原理实验报告_第1页
计算机组成原理实验报告_第2页
计算机组成原理实验报告_第3页
计算机组成原理实验报告_第4页
计算机组成原理实验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 51核发光二极管及数码管实验一 实验题目51核发光二极管及数码管实验二 实验环境 win7 MedwinV3.0中文版三 实验要求本实验分为两部分,首先进行51核的介绍,包含通常使用的51单片机及FPGA中51核的原理,通过对比,了解两者的异同。在了解了51原理后结合51核在FPGA中进行原理实现,再基于FPGA中使用工具进行51核的编程。在开发板中进行发光二极管实验,数码管实验。编写程序使led灯(LED0,LED6,LED7)每隔一段时间闪烁一次。提示:编写延时程序 delay().(用for循环实现。led灯的闪烁即是不停的亮和灭,即令通用IO口每隔一段时间的输出取反。例如:LE

2、D_1=LED_1。控制2个数码管显示数字。提示:数码管是由P1口控制的。四 实验设计1.外部发光二极管管脚:74HC245芯片提高驱动,输出高电平发光二极管亮,输出低电平发光二极管灭,引脚锁定:PIN 100 LED-D1PIN 99 LED-D2PIN 94 LED-D3PIN 92 LED-D42.数码管部分:开发板上没有固定的数码管,均需要外接。而且都是FPGA译码。在本实验中,对需要显示的数字经过DECL7S模块进行编码后输出到数码管上。如想输出数字,只需输入00001111中的任意数字,如D=0101,则显示为5,D=1100,则显示为C,FPGA输出高时点亮。3.程序架构是:#i

3、nclude<reg51.h>sbit LED_1=P36;sbit LED_2=P37; void delay_ms(int del) /延时1ms int i,j; for(i=0;i<del;i+) for(j=0;j<1000;j+);void LED_LM() /LED灯闪烁void shumaguan() /数码管显示对P1赋值 void main() while(1) 程序如图所示:五 实验仿真与测试六 实验结果分析先在程序中设置延时,使得延时1ms,再设置LED灯闪烁的程序,最后设置数码管显示数值14,将板子的USB接口与电脑的USB连接,得出实验结果。

4、七 实验小结通过这次实验,我了解了51核的原理,能够用51单片机对数码管核LED灯进行操作,也学会了如何使用开发板。但是只能进行简单的操作,所以之后需要加紧练习,争取熟练掌握51核的应用。实验二 键盘扫描一 实验名称键盘扫描二 实验环境 win7 MedwinV3.0中文版三 实验要求本实验主要进行对4*4键盘原理分析,实现对键盘扫描码的判断。要求使用查询方式进行键盘扫描码判断(数码管输出)。四 实验设计实验设计的源程序如下图所示:五 实验仿真与测试六 实验结果分析如图所示源程序,先设置键盘的行引脚和列引脚,之后设置延时,初始化时把初始值都变成1,按下哪个键,哪个位置变成0,。设置列扫描值,第

5、一列是0111,值为1;第二列是1011,值为2;第三列是1101,值为4;第四列是1110,值为8。输入值 输出值 0 1 2 3COL1 0 ROW1 0 1 1 1COL2 1 ROW2 1 0 1 1COL3 1 ROW3 1 1 0 1COL4 1 ROW4 1 1 1 0输入值 输出值 8 9 A BCOL1 1 ROW1 0 1 1 1COL2 1 ROW2 1 0 1 1COL3 0 ROW3 1 1 0 1COL4 1 ROW4 1 1 1 0然后输出键盘扫描值。结果如图所示,按下第一列第四行,数码管显示3;按下第四行第四列,数码管显示F。七 实验小结通过这次实验,我了解了键

6、盘扫描的原理,并学会如何用开发板输出源程序的结果。但是对键盘扫描的源程序理解还不能熟练编写,需要再多加练习。实验三一 实验题目中断系统和定时/计数器二 实验环境 win7 MedwinV3.0中文版三 实验要求使用定时器中断控制发光二极管每隔一段时间闪烁一次,并设置中断使数码管计数从0到59。四 实验设计80C51的中断系统有5个中断源(8052有 6个) ,2个优先级,可实现二级中断嵌套 :1.可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。2. 可由IT1(TCON.2)选择

7、其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置1,向CPU申请中断。3. TF0(TCON.5),片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。(本次实验用到该中断)4. TF1(TCON.7),片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU申请中断。5. RI(SCON.0)或TI(SCON.1),串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。80C51单片机的中

8、断优先级有三条原则:1.CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。2.正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。3.正在进行的低优先级中断服务,能被高优先级中断请求所中断。为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优先级状态触发器。其中一个置1,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。实验所需程序如下:五 实验仿真与测试六 实验结果分析在程序中设置初始化程序:1.对TMOD赋值,以确定T0和T1的工作方式。2.计算初值,并将其写入TH0、TL0或TH1、

9、TL1。3.中断方式时,则对IE赋值,开放中断。EA=1;ET0=1。4.使TR0或TR1置位,启动定时/计数器定时或计数。输入中断向量是10,则数码管输出0到9然后循环,LED灯随程序设计所示,一直闪烁。七 实验小结这次实验我学习了中断系统,并且学会如何去设计一个计数器,但是在实验过程设计中,LED灯的闪烁频率与数码管计数的频率不相同,所以无法两个同时实现,我要在今后的学习中思考这个问题。实验四一 实验题目FPGA中串口设计二 实验环境 win7 MedwinV3.0中文版三 实验要求编写程序控制串口接收主机发送的数据,例如,在数码管上显示出自己的学号。四 实验设计使用方式一:一帧10位:8

10、位数据位,1个起始位(0),1个停止位(1)。RXD:接收数据端。TXD:发送数据端。波特率:用T1作为波特率发生器,B=(2SMOD/32)×T1溢出率。发送:写入SBUF,同时启动发送,一帧发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且停止位为1 (或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI=1;否则丢弃接收数据,不置位RI。当REN=1,CPU开始采样RXD引脚负跳变信号,若出现负跳变,才进入数据接收状态,先检测起始位,若第一位为0,继续接收其余位;否则,停止接收,重新采样负跳变。数据采样速率为波特率16倍频,在数据位中间,用第7、8、9个脉冲采样3次数据位,并3中取2保留采样值。程序如下:五 实验仿真与测试六 实验结果分析在程序部分,设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论