




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.微型计算机原理及单片机实验报告班级:学号: 姓名:实验一 汇编语言程序设计1 分支程序设计实验1.1.1 实验目的1. 掌握分支程序的结构。2. 掌握分支程序的设计、调试方法。1.1.2 实验设备PC机一台,TD-PITE实验装置一套。1.1.3 实验内容设计一数据块间的搬移程序。设计思想:程序要求把内存中一数据区(称为源数据块)传送到另一存储区(成为目的数据块)。源数据块和目的数据块在存储中可能有三种情况,如图1.1所示。(a) (b) (c)图1.1 源数据块与目的数据块在存储中的位置情况对于两个数据块分离的情况,如图1.1(a),数据的传送从数据块的首地址开始,或从数据块的末地址开始均可。但是对于有重叠的情况,则要加以分析,否则重叠部分会因“搬移”而遭到破坏,可有如下结论:当源数据块首地址目的块首地址时,从数据块末地址开始传送数据,如图1.14(b)所示。当源数据块首地址目的块首地址时,从数据块首地址开始传送数据,如图1.14(c)所示。实验程序流程图如图1.5所示。1.1.4 实验程序如下SSTACK SEGMENT STACK DW 64 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV CX, 0010H图1.5 程序流程图 MOV SI, 6000H MOV DI, 7000H CMP SI, DI JA A2 ADD SI, CX ADD DI, CX DEC SI DEC DI A1: MOV AL, SI MOV DI, AL DEC SI DEC DI DEC CX JNE A1 JMP A3 A2: MOV AL, SI MOV DI, AL INC SI INC DI DEC CX JNE A2 A3: JMP A3 CODE ENDS END START1.1.5 实验步骤1. 按流程图编写实验程序,经编译、链接无误后装入系统。2. 用E命令在以SI为起始地址的单元中填入16个数。3. 运行程序,待程序运行停止。4. 通过D命令查看DI为起始地址的单元中的数据是否与SI单元中数据相同。5. 通过改变SI、DI的值,观察在三种不同的数据块情况下程序的运行情况,并验证程序的功能。1.1.6 实验结果 图1 图2 图3 图4 图52.循环程序设计实验1.2.1 实验目的1. 加深对循环结构的理解。2. 掌握循环结构程序设计的方法以及调试方法。1.2.2 实验设备PC机一台,TD-PITE实验装置一套。1.2.3 实验内容计算S1233445N(N1),直到N(N1)项大于200为止。编写实验程序,计算上式的结果,参考流程图如图1.6所示。1.2.4 实验程序SSTACK SEGMENT STACK DW 64 DUP(?) 图1.6 程序流程图SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX,0001H MOV BL,02H A1: MOV AL,BL INC BL MUL BL ADD DX,AX ;结果存于DX中CMP AX,00C8H ;判断N(N+1)与200的大小JNA A1 A2: JMP A2 CODE ENDS END START 1.2.5 实验步骤(1)编写实验程序,编译、链接无误后装入系统。 (2)运行程序,待程序运行停止。 (3)运算结果存储在寄存器DX中,查看结果是否正确。(4)可以改变N(N1)的条件来验证程序功能是否正确,但要注意,结果若大于0FFFFH将产生数据溢出。1.2.6 实验结果实验二 8255并行接口实验2.1 实验目的1. 学习并掌握8255的工作方式及其应用。2. 掌握8255典型应用电路的接法。2.2 实验设备PC机一台,TD-PITE实验装置一套。2.3 实验内容查询式输入输出实验。编写程序,使8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。要求将一开关设为总开关,由此开关来决定数据灯的显示是否随开关相应改变。2.4 实验步骤查询输入输出实验本实验使8255端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。具体实验步骤如下述:(1)实验接线图如图2.1所示,按图连接实验线路图。(2)编写实验程序,经编译、连接无误后装入系统。(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。图2.1 8255基本输入输出实验接线图2.5 实验程序SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOVDX, 0646H ;控制端口地址0646H送DX,因为8255的cs端口接I0Y1对应的编址空间是0640H067FH,所以这里是0646H。MOV AL, 90H ;方式选择控制字送AL OUT DX, AL ;方式选择控制字输给8255A的控制端口,完成端口A 工作在方式0 并作为输入口,端口B 工作在方式0 并作为输出口。AA1: MOV DX, 0640H ;控制端口A地址0640H送DX IN AL, DX ;将端口A连接的开关的对应状态送给AL TEST AL,80H ;检测AL的最高位 JZ AA1 ;如果为0则跳到AA1 CALL DELAY MOV DX, 0642H ;控制端口A地址0642H送DX OUT DX, AL ;将AL的数据送到8255的端口B,从而使其连接的LED的灯发光JMP AA1 DELAY: PUSH CX MOV CX, 0F00H AA2: PUSH AX POP AX LOOP AA2 POP CX RET CODE ENDS END START2.6 实验结果实验三. 8254定时/计数器应用实验3.1 实验目的1. 掌握8254的工作方式及应用编程。2. 掌握8254典型应用电路的接法。3.2 实验设备PC机一台,TD-PITE实验装置一套。3.3 实验内容计数应用实验。编写程序,应用8254的计数功能,使用单次脉冲模拟计数,使每当按动KK15次后,产生一次计数中断,并在屏幕上显示学号末两位。3.4 实验单元电路图8254实验单元电路图如下图所示:图3.1 8254实验电路原理图3.5 实验程序实验程序清单(A82541.ASM)教育资料A8254 EQU 06C0HB8254 EQU 06C2HC8254 EQU 06C4HCON8254 EQU 06C6HSSTACKSEGMENT STACKDW 32 DUP(?)SSTACKENDSCODESEGMENTASSUME CS:CODE, SS:SSTACKSTART:PUSH DSMOV AX, 0000HMOV DS, AXMOV AX, OFFSET IRQ7;取中断入口地址MOV SI, 003CH;中断矢量地址MOV SI, AX;填IRQ7的偏移矢量MOV AX, CS;段地址MOV SI, 003EHMOV SI, AX;填IRQ7的段地址矢量CLIPOP DS;初始化主片8259MOV AL, 11HOUT 20H, AL;ICW1MOV AL, 08HOUT 21H, AL;ICW2MOV AL, 04HOUT 21H, AL;ICW3MOV AL, 01HOUT 21H, AL;ICW4MOV AL, 6FH;OCW1OUT 21H, AL;8254MOV DX, CON8254MOV AL, 10H;计数器0,方式0OUT DX, ALMOV DX, A8254MOV AL, 04HOUT DX, ALSTIAA1:JMP AA1IRQ7:MOV DX, A8254MOV AL, 04HOUT DX, ALMOV AX, 014DHINT 10H;显示字符MMOV AX, 0120HINT 10HMOV AL, 20HOUT 20H, AL;中断结束命令IRETCODEENDSEND START3.6 实验结果实验四. 数据采集实验4.1 实验目的1. 掌握8254的工作方式及应用编程。2. 掌握8254典型应用电路的接法。4.2 实验设备PC机一台,TD-PITE实验装置一套。4.3 实验内容要求实现三角波的产生,并且用示波器查看波形。4.4 硬件连线图4.5 实验程序IOYO EQU 0600HDA0832 EQU IOYO+00H*2STACK SEGMENT STACK DW 32 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART :MOV AX,00H MOV DX,DA0832 mov al,00h AA1:OUT DX,AL CALL DELAY INC AL CMP AL,0FFH JZ AA2 JMP AA1 AA2:OUT DX,AL CALL DELAY DEC AL CMP AL,00H JZ AA1 JMP AA2 DELAY:PUSH CXMOV CX,03FFH AA3:PUSH AX POP AX LOOP AA3 POP CX RET CODE ENDS END START4.6 实验步骤4.7 实验结果实验五. 求和程序设计5.1 实验目的1 熟悉KEIL的软件使用环境及单片机C51语言编程;2 掌握C51环境下内存地址的访问方法及循环程序的实现方法。5.2 实验设备PC机一台5.3 实验内容内容:编写十个字节求和程序。要求:十个加数在片内RAM区20H29H单元;结果存放在片内RAM区30H,31H区。5.4 实验程序#includevoid main()int i,sum=0;for(i=0;i10;i+)sum+=DBYTE0x20+i;DBYTE0x30=sum/256;DBYTE0x31=sum%256;while(1);5.5 实验步骤开机启动Keil C51软件进入Vision2 集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接。进入DEBUG方式,打开存储器Memory 1窗口,在窗口Address栏键入D:20H;点击鼠标右键,选择最后一项Modify Memory ,输入十个加数。调试和运行程序并记录存储器Memory 1,D:30H窗口实验结果。5.6 实验结果实验六. 基于PROTEUS的60S倒计时器设计6.1 实验目的1熟悉PROTEUS的软件使用环境及单片机C51语言编程;2. 掌握C51环境下定时中断、并行接口及LED的显示方法。6.2 实验设备PC机一台6.3 实验内容60S倒计时器,利用LED显示秒数。6.4 实验电路图6.5 实验程序#includeunsigned char num,t,n;unsigned char code;table=0xc0,0x90,0x80,0xf8,0x82,0x92,0x99,0xb0,0xa4,0xf9;unsigned char code table1=0x92,0x99,0xb0,0xa4,0xf9,0xc0; void main() num=0;t=0;TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; P2=0xc0; P0=0x82; while(1) if(t=10) t=0;num+;if(num=10)num=0;P2=tablenum;if(num=1)P0=table1n;n+; if(n=6)if(num=0)while(1);void exter0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;t+;6.6 实验步骤开机启动Keil C51软件进入Vision2 集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接、生成HEX文件。启动ISIS软件链接仿真电路图,下载HEX文件,进行仿真。6.7 实验结果实验七.外中断实验7.1 实验目的1. 掌握外中断的工作方式及应用编程。2. 掌握并行接口及LED显示器的典型应用电路。7.2 实验设备PC机一台,TD-PITE实验装置一套。7.3 实验内容要求实现外部按键一次(利用KK1按键),LED显示器的值加1。7.4 实验程序#include #include unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;int num=0;sbit s1=P20;sbit s2=P21;sbit s3=P22;void delay();void display(int num);void main() IT0=1; EA=1; EX0=1; s3=1; while(1) display(num); void delay() unsigned char j; for(j=0;j60;j+);void display(int num) unsigned char bitge,bitshi; int ge,shi; shi=num%100/10; ge=num%10; bitshi=tableshi; bitge=tablege; s1=0;s2=1; P1=bitshi;/10位 delay(); s1=1;s2=0; P1=bitge;/个位 delay(); void break_timer() interrupt 0 num=num+1;7.6 实验步骤开机启动Keil C51软件进入Vision2 集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接。进入DEBUG方式,按几次KK1按键,观察LED显示器的值。7.7 实验结果实验八. 静态存储器扩展实验8.1 实验要求1. 复习单片机扩展外部数据存储器的方法。2. 复习常用数据存储器芯片的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出行安全宣导答题题库及答案解析
- 初中护理科目题库及答案解析
- 护理政治考试题库及答案解析
- 2025年国家开放大学(电大)《食品营养与安全》期末考试备考试题及答案解析
- 消防安全试题培训及答案解析
- 基金从业资格考试59分及答案解析
- 护理考研选择大题题库及答案解析
- 盐湖消防安全员考试题库及答案解析
- 2025年国家开放大学《创业管理基础》期末考试备考试题及答案解析
- 中学生安全意识测试题目及答案解析
- 中国高血压防治指南(2024年修订版)-ppt模板
- 江姐-绣红旗-红梅赞
- JTT 854-2013 公路桥梁球型支座规格系列
- 2024年高考数学一模试题分类汇编:立体几何(原卷版)
- 《名著阅读 艾青诗选》核心素养课件1(第1课时)
- 30道计量员岗位常见面试问题含HR问题考察点及参考回答
- 抖音短视频运营直播带货KPI绩效考核
- 《狗之歌》课件(湖北省县级优课)
- DB21-T 2951-2018秸秆热解制备生物炭技术规程
- 电磁阀试验操作规程
- 2024年日历工作日程计划表
评论
0/150
提交评论