微机原理实验 新颖 完整
- 格式:doc
- 大小:53.50 KB
- 文档页数:15
微机原理综合实验报告目录一.8255并行口实验二.8259中断实验(一)三.8253定时/计数器实验四.A/D转换实验五.步进电机实验六.综合实验:十字路口交通灯实验七.实验体会四.8255并行口实验1.实验目的:(1)学习利用并行接口芯片8255构成并行接口电路的基本方法(2)熟悉掌握并行接口芯片8255的基本性能及在时间应用中的硬件连接、初始化编程方法2.实验内容:编写程序,使8255的PB口为输出口,PA口为输入口,从PA口将K0~K7作为一个字节读入,在从PB口输出这一反码字节。
3.实验程序:CODE SEGMENTASSUME CS:CODESTART:MOV DX,21BH ;8255初始化命令字MOV AL,90HOUT DX,ALBG: MOV DX,218H ;从PA口读入数据IN AL,DXXOR AL,FFH ;求反MOV DX,219HOUT DX,AL ;从PB口输出JMP BGCODE ENDSEND START4.实验框图5. 实验电路图6.实验方法说明通过8255控制字设定PA口为输入口,PB口为数据输出口,读取PA口的数值并通过求反指令将数据取反后,经由PB口输出。
8259中断实验(一)1.实验目的:(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟悉8259中断控制器的工作原理和硬件连线方法(3)了解8259的应用和硬件编程方法了解8259中断屏蔽2.实验内容:编写中断实验程序,主程序使8255的PB口为输出口,输出0FFH,L0~L7指示灯全亮,中断服务程序从PB口输出0FFH,L0~L3亮,L4~L7灭,并延时一段时间后返回主程序。
3.实验程序INT0 EQU 220hINT1 EQU 221hP8255B EQU 219HP8255K EQU 21BHSTACK SEGMENTSTA DB 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART:CLIMOV AX,TOPMOV SP,AXPUSH DSMOV AX,0000H ;定义IRQ0中断MOV DS,AXMOV AX,OFFSET IRQ0ADD AX,0000HMOV SI,20HMOV [SI],AXMOV AX,CSMOV SI,22HMOV [SI],AXPOP DSMOV AL,13H ;对8259进行初始化ICW1MOV DX,INT0OUT DX,ALMOV AL,8 ;对8259进行初始化ICW2 MOV DX,INT1OUT DX,ALMOV CX,0FFFFHLOOP $MOV AL,9 ;对8259进行初始化ICW4 MOV DX,INT1OUT DX,ALMOV CX,0FFFFHLOOP $MOV DX,INT1MOV AL,0FEH ;对8259进行初始化OCW1OUT DX,ALMOV CX,0FFFFHLOOP $MOV DX,INT0 ;对8259进行初始化OCW2,普通EOI返回MOV AL,20HOUT DX,ALMOV CX,0FFFFHLOOP $STIMOV DX,P8255K ;对8255进行初始化MOV AL,90HOUT DX,ALDSP: MOV AL,0FFHMOV DX,P8255BOUT DX,ALJMP DSPIRQ0: STIMOV CX,0FFFFHLOOP $MOV AL,0FHMOV DX,P8255BOUT DX,ALMOV DX,INT0MOV AL,20HOUT DX,ALMOV CX,0FFFFHLOOP $MOV CX,0FFFFHLOOP $IRETCODE ENDSEND START4.实验框图5. 实验电路图6. 实验方法说明主程序使8255输出高电平,实现L0~L7指示灯全亮。
伟福 Lab8000单片机仿真实验系统 自动检测
® 恒定温度控制实验
一、实验要求
利用实验仪上显示电路,键盘电路,A/D 变换电路,完成类似恒温控制实验,可以利用实验仪上的电位器模仿温度变化,加热和致冷电机可以用发光管代替。
要求可以用键盘设定恒温温度,当外界温度超过设定温度+/-2℃时,就要启动加热或致冷电机。
二、实验目的
1.了解闭环控制的基本原理。
2.进一步熟悉A/D 变换原理和编程方法。
3.进一步了键盘扫描和LED 显示原理和编程方法。
三、实验电路及连接
LED 显示电路和键盘电路实验仪上已接好。
原理图见图1。
A/D 变换电路只要接上模拟量输入和地址选择信号即可。
四、实验说明
这是一个综合硬件实验,其中各部分实验已单独做过.现联合起来形成一个控制系统. 其中LED 显示实验和键盘扫描实验可参见硬件实验十六、十七。
A/D 变换实验可参见硬件实验十三。
I/O 口输入输出可参见8255硬件实验。
五、实验程序框图
A/D 采样子程序框图
伟福 Lab8000单片机仿真实验系统 自动检测
®
LED 显示子程序框图
键盘扫描子程序框图
®
伟福Lab8000单片机仿真实验系统自动检测
温度控制主程序框图。
一、实验目的1. 理解微机的基本组成和各部件的功能;2. 掌握微机的工作原理和指令系统;3. 熟悉汇编语言程序设计的基本方法;4. 提高动手能力和实际操作技能。
二、实验内容1. 微机系统组成实验(1)实验目的:了解微机的基本组成和各部件的功能。
(2)实验内容:观察并记录微机系统的各个部件,如CPU、内存、硬盘、主板等,并了解它们的功能。
(3)实验步骤:①观察微机系统各个部件的连接情况;②了解各个部件的功能和作用;③分析微机系统的整体结构。
2. 微机工作原理实验(1)实验目的:掌握微机的工作原理。
(2)实验内容:观察并记录微机工作过程中的各个阶段,如指令的取指、译码、执行等。
(3)实验步骤:①观察微机工作过程中的各个阶段;②了解各个阶段的功能和作用;③分析微机工作原理。
3. 指令系统实验(1)实验目的:熟悉汇编语言指令系统。
(2)实验内容:学习汇编语言的基本指令,如数据传送指令、算术运算指令、逻辑运算指令等。
(3)实验步骤:①学习汇编语言的基本指令;②编写简单的汇编语言程序,实现数据传送、算术运算、逻辑运算等功能;③调试程序,观察程序运行结果。
4. 汇编语言程序设计实验(1)实验目的:提高汇编语言程序设计能力。
(2)实验内容:编写一个汇编语言程序,实现以下功能:①计算两个数的和;②判断一个数是否为偶数;③输出程序运行结果。
(3)实验步骤:①编写汇编语言程序,实现上述功能;②调试程序,观察程序运行结果;③分析程序运行过程,确保程序正确性。
三、实验结果与分析1. 微机系统组成实验:通过观察和记录微机系统的各个部件,了解了微机的基本组成和各部件的功能。
2. 微机工作原理实验:通过观察微机工作过程中的各个阶段,掌握了微机的工作原理。
3. 指令系统实验:通过学习汇编语言的基本指令,熟悉了汇编语言指令系统。
4. 汇编语言程序设计实验:通过编写汇编语言程序,提高了汇编语言程序设计能力。
四、实验心得通过本次微机原理实验,我对微机的基本组成、工作原理和指令系统有了更深入的了解。
微计算机原理及运用实验报告目录实验一:I/O地址译码实验 (4)一、实验目的 (4)二、实验原理和内容 (4)三、实验程序 (4)四.实验总结 (5)实验二:8255并行接口实验 (6)一、实验目的 (6)二、实验原理和内容 (6)三、程序框图 (7)四.实验程序 (7)五.实验总结 (8)实验三:键盘显示控制实验 (9)一、实验目的 (9)二、实验内容及原理 (9)三、流程图 (10)四.程序 (10)五.实验总结 (13)实验四:8254定时器/计数器实验 (14)一、实验目的 (14)二、实验原理和内容 (14)三、实验程序 (14)四.实验总结 (15)实验五:继电器控制实验 (16)一、实验目的 (16)二、实验原理和内容 (16)三、实验中使用的程序 (16)四.实验总结 (18)实验六:DMA传送 (18)一、实验目的 (18)二、实验原理和内容 (18)三、程序 (19)四.实验总结 (20)实验七:8259 中断控制实验 (20)一、实验目的 (20)二、实验原理和内容 (21)三、流程图 (21)四.程序 (21)五.实验总结 (25)实验八:8255中断实验 (25)一、实验目的 (25)二、实验原理和内容 (25)三.实验程序 (26)四.实验总结 (27)实验一:I/O地址译码实验一、实验目的掌握I/O地址译码电路的工作原理。
二、实验原理和内容实验电路如附图1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。
译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
附图1 I/O地址译码电路利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
微机原理的实验报告一、实验目的本实验旨在深入理解微机原理的相关知识,并通过实践操作,掌握微机原理的实验方法与技巧。
二、实验内容1. 搭建微机实验系统:根据实验所需,搭建适当的微机实验系统,包括各种硬件设备的连接与设置。
2. 硬件接口的实验:通过连接不同的硬件接口,进行实验操作,学习硬件接口的使用方法和原理。
3. 程序设计与调试实验:使用相应的汇编语言或高级语言,编写程序并进行调试,观察程序的执行结果。
4. 中断实验:通过调用不同的中断服务例程,进行实验操作,学习中断的使用原理和应用场景。
三、实验步骤与结果1. 实验步骤:(1) 搭建微机实验系统:按照实验指导书的要求,连接各种硬件设备,确保能够正常工作。
(2) 硬件接口的实验:选择一个硬件接口,例如并行口,通过编写相应的程序,实现读取和输出数据的功能。
观察实验现象并记录。
(3) 程序设计与调试实验:根据实验要求,选择适当的编程语言,编写相应的程序,并进行调试。
观察程序的执行结果,并记录相关数据。
(4) 中断实验:选择一个中断服务例程,例如键盘中断,通过编写相应的程序,实现对键盘输入的响应。
观察实验现象并记录相关数据。
2. 实验结果:(1) 硬件接口的实验结果:通过编写程序并连接硬件接口,成功读取和输出数据,实现了相应的功能。
(2) 程序设计与调试实验结果:编写的程序能够正确执行,并得到了预期的结果。
(3) 中断实验结果:编写的程序能够响应相应的中断信号,并实现了对键盘输入的处理。
四、实验分析与讨论1. 实验分析:通过本次实验,我们深入了解了微机原理的相关知识,并通过实践操作,掌握了微机原理的实验方法和技巧。
2. 实验讨论:在实验过程中,我们遇到了一些困难和问题,例如硬件接口的连接和调试,程序的编写和调试等。
但通过彼此的合作与讨论,我们最终解决了这些问题,并成功完成了实验。
五、实验总结通过本次实验,我们对微机原理有了更深入的理解,并通过实践操作,掌握了微机原理的实验方法和技巧。
软件实验报告软件实验一一、实验目的1.熟悉软件实验的基本步骤和汇编程序的调试方法;2.了解内存块的移动方法;3.了解将十六进制数转换成ASCII值的方法。
二、实验原理用MOV和MOVX指令可以进行数据的赋值和移动,用循环可以完成大量数据的复制。
三、实验内容及步骤1、软件设置为模拟调试状态,在所建的Project文件中添加例程1的源程序进行编译,编译无误后,可以选择单步或跟踪执行方式或全速运行程序。
打开CPU窗口,观察CPU窗口各寄存器的变化。
打开View菜单中的Memory Window,可以观察内部RAM、外部RAM的数据和程序存储器中的程序。
在Address窗口输入X:8000H后回车,观察8000H-800FF起始的256个字节单元的内容。
2、新建一个Project文件,添加例程2的源程序进行编译,编译无误后,可以选择单步或跟踪执行方式或全速运行程序。
打开View菜单中的Memory Window,在Address 窗口的Memory#1输入X:3000H后回车,点击运行按钮后, 在Memory#2输入X:4000H后回车,观察外部RAM3000H和4000H中的内容。
3、添加将片内30H-3FH单元的内容复制片外片外1030H~103FH中的源程序,编译运行,观察比较30-3FH单元中的内容和片外1030H-103FH中的内容。
4、添加将30H、31H单元中的十六进制数,转换成ASCII码,存放到40H开始的4个单元中的源程序,编译运行,观察结果。
5、添加求内部RAM 30H—37H单元中8个无符号数的算术和的源程序,8个无符号数设定为25H,36H,4AH,65H,7FH,82H,9BH,1DH,观察39H,38H中的数字是否分别为02H,C3H。
四、实验结果1.步骤1的结果为8000H-80FFH的内容都为1.2.步骤2的结果为3000H起始的256个字节存储块与4000H起始的256个字节存储块各单元内数据对应相同。
实验题目8253定时/计数器实验一、实验目的与要求:1。
学会8253芯片和微机接口原理和方法。
2. 掌握8253定时器/计数器的工作方式和编程原理。
二、实验内容:1、实验原理本实验原理图如图1所示,8253A的A0、A1接系统地址总线A0、A1,故8253A 有四个端口地址,如端口地址表1所示.8253A的片选地址为48H~ 4FH。
因此,本实验仪中的8253A四个端口地址为48H、49H、4AH、4BH,分别对应通道0、通道1、通道2和控制字.采用8253A通道0,工作在方式3(方波发生器方式),输入时钟CLK0 为1MHZ, 输出OUTO 要求为1KHZ的方波,并要求用接在GATE0引脚上的导线是接地(”0"电平)或甩空(”1"电平)来观察GATE对计数器的控制作用,用示波器观察输出波形。
2、实验线路连接(1) 8253A芯片的CLK0引出插孔连分频输出插孔1MHZ。
(2) 8253A的GATE0接+5V.3、实验步骤(1) 按图1连好实验线路(2)运行实验程序1.按“调试”按钮2。
选“窗口”“进入示波器窗口",然后最小化3。
按“运行按钮”4.将模拟示波器窗口打开,选择“串行口2",再按ctrl+F2 按钮即可看到波形图1显示“8253-1”用示波器测量8253A的OUT2输出插孔,应有频率为1KHZ的方波输出,幅值0~4V三、实验代码:CODE SEGMENTASSUME CS:CODETCONTRO EQU 004BHTCON2 EQU 004AHCONTPORT EQU 00DFHDATAPORT EQU 00DEHDATA1 EQU 0500HSTART: JMP TCONTTCONT:CALL FORMATCALL LEDDISPMOV DX,TCONTROMOV AL,0B6H ;要使用方式2,0B6H要改为0B4HOUT DX,ALMOV DX,TCON2MOV AL,00 ;输入频率(即时间常数)OUT DX,AL ;要修改频率,只需更改送给AL的值(注意先送低8位,MOV AL,10H ;后送高8位)OUT DX,ALHLTLEDDISP:MOV AL,90H ;显示数据方式命令字送8279控制字MOV DX,CONTPORT ;8279命令状态口OUT DX,ALMOV BYTE PTR DS:[0600H],00 ;置显示位数初值为0 LED1: CMP BYTE PTR DS:[0600H],07H ;判断显示位数满8为否?JA LED2 ;满8位转子程序返回MOV BL,DS:[0600H] ;未满8位从数据区取数MOV BH,0HMOV AL,CS:[BX+DATA1]MOV DX,DATAPORT ;8279数据口OUT DX,ALADD BYTE PTR DS:[0600H],01H ;显示位数加1JNZ LED1LED2: RET ;子程序返回FORMAT: MOV BX,0 ;显示8253———1 MOV WORD PTR DS:[BX+0500H],4006HADD BX,2MOV WORD PTR DS:[BX+0500H],4040HADD BX,2MOV WORD PTR DS:[BX+0500H],6D4FHADD BX,2MOV WORD PTR DS:[BX+0500H],7F5BHRETCODE ENDSEND START四、思考题若改用方式2,并改变时间常数,如何编写程序。
本科实验报告实验名称:基于并行接口的键盘控制实验一基于并行接口的键盘控制一、实验目的1、掌握简单并行接口(8255)的工作原理及使用方法。
2、了解小键盘的工作原理,学会设计小键盘的接口技术。
3、利用8255并行接口芯片作为小键盘的接口电路,掌握它们之间的线路连接。
4、程序实现实验系统上的4×4键盘输入。
二、实验内容与步骤1、接线:PA0-PA3 /8255 接行0-行3 /4×4键盘PB0-PB3 /8255 接列0-列3 /4×4键盘CS /8255 接YI/IO地址2、编程:实现在按下小键盘上的任意键后,在微机屏幕上显示相应的字符。
输入输出关系如下:小键盘显示小键盘显示0 -- 0 8 -- 81 -- 1 9 -- 92 -- 2 A -- A3 -- 3 B -- B4 -- 4 C -- C5 -- 5 D -- D6 -- 6 E -- E7 -- 7 F -- F三、实验原理1、熟悉8255A-5芯片工作方式的设置(1)基本控制字基本控制字的格式如下:各位含义如下:D7:设定工作方式标识,1有效。
D6、D5:A组方式选择:00--方式0 01--方式1 1X—方式2D4:端口A功能(1=输入,0=输出)D3:端口C高四位功能(1=输入,0=输出)(2)端口C置位/复位控制字端口C置位/复位控制字如下:各位含义如下:D7:位置0位置1标识,0有效。
D6、D5、D4:不用,可人任意值。
D3、D2、D1:端口C的每位选择,由111—000分别表示第7位—第0位。
D0:位置1/置0,1=置1,0=置0.2、键盘阵列由8255芯片控制,并将行列连接到8255芯片的A口、B口,还需要连接8255芯片的片选到YI/IO地址(288H~28FH),以使键盘阵列由8255芯片控制。
其线路连接图如下:3、编程方法对于片选信号根据设置的YI/IO地址来具体连接相应的输出端口。
实验名称:汇编语言程序设计实验日期:2023年3月10日实验地点:计算机实验室实验者:张三一、实验目的1. 熟悉汇编语言的基本语法和指令系统。
2. 掌握汇编语言程序设计的基本方法。
3. 通过实验,加深对微机原理的理解。
二、实验内容本次实验主要涉及以下内容:1. 数据传送指令的应用2. 算术运算指令的应用3. 控制转移指令的应用4. 子程序设计三、实验步骤1. 编写一个简单的程序,实现以下功能:(1)将数据0x1234存入寄存器AX;(2)将数据0x5678存入寄存器BX;(3)计算AX和BX的乘积,并将结果存入寄存器DX;(4)将乘积的高16位和低16位分别存入寄存器CX和AX。
2. 编写一个程序,实现以下功能:(1)将数据0x1A2B3C4D存入内存单元[0x1000];(2)从内存单元[0x1000]开始,读取连续4个字节的数据;3. 编写一个程序,实现以下功能:(1)定义一个子程序,实现两个整数的加法运算;(2)在主程序中调用该子程序,实现两个整数的加法运算。
四、实验结果与分析1. 数据传送指令的应用(1)将数据0x1234存入寄存器AX;MOV AX, 0x1234(2)将数据0x5678存入寄存器BX;MOV BX, 0x5678(3)计算AX和BX的乘积,并将结果存入寄存器DX;MUL BX(4)将乘积的高16位和低16位分别存入寄存器CX和AX; MOV CX, DXMOV AX, DX2. 算术运算指令的应用(1)将数据0x1A2B3C4D存入内存单元[0x1000];MOV [0x1000], 0x1A2B3C4D(2)从内存单元[0x1000]开始,读取连续4个字节的数据; MOV AX, [0x1000]MOV BX, [0x1000+2]MOV CX, [0x1000+4]MOV DX, [0x1000+6]MOV AH, 0x0EINT 0x103. 控制转移指令的应用(1)定义一个子程序,实现两个整数的加法运算;ADD procedure:ADD AX, BXRET(2)在主程序中调用该子程序,实现两个整数的加法运算;MOV AX, 0x1MOV BX, 0x2CALL ADDMOV CX, AX五、实验心得通过本次实验,我深刻理解了汇编语言的基本语法和指令系统,掌握了汇编语言程序设计的基本方法。
实验一8255输入、输出实验一、实验要求:1、利用8255可编程并行口芯片,实现输入/输出实验,2、实验中用8255PA口作输出,PB口作输入。
二、实验目的:1、了解8255芯片结构及编程方法。
2、了解8255输入/输出实验方法。
三、实验原理:8255的CS/接地址译码/CS0,则命令字地址为8003H,PA口地址为8000H,PB口地址为8001H,PC口地址为8002H。
PA0-PA7(PA口)接LED0-LED7(LED)PB0-PB7(PB口)接K0-K7(开关量)。
数据线、读/写控制、地址线、复位信号板上已接好。
可编程通用接口芯片8255A有三个八位的并行I/O口,它有三种工作方式。
本实验采用的是方式0:PA,PC口输出,PB口输入。
很多I/O实验都可以通过8255来实现。
四、程序代码1、流水灯程序code segmentAssume cs:codestart proc nearStart:mov al, 82hmov dx, 8003hout dx, al ; 输出控制字mov al, 80Hmov cx, 08Hmov dx,8002hout dx,alOutA:mov dx, 8000hout dx, alshr al, 1 ; 移位mov ah,100call delay ; 延时loop OutAjmp startendpdelay proc nearpush axmov al,0push cxmov cx,axloop $pop cxpop axretdelay endpcode endsend start2、按键控制小灯程序code segmentassume cs:codestart proc nearStart:mov al, 82hmov dx, 8003hout dx, al ; 输出控制字mov dx, 8001hin al, dx ; 读入PortBmov dx, 8000hout dx, al ; 输出到PortAmov ah, 200call delayjmp Startendpdelay proc nearpush axmov al,0push cxmov cx,axloop $pop cxpop axretdelay endpcode endsend start实验二8253定时器实验一、实验要求:用8253对标准脉冲信号进行计数,就可以实现定时功能。