版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验一内部RAM数据传送程序设计一、实验目的1学习MCS-51微控制器汇编语言的编写。2了解51微控制器内部 RAM的读写及调试方法。二、实验设备用 wave 模拟软件进行实验 .三、实验原理51微控制器片内 RAM低 128字节(00H7FH)包含工作寄存器区(00H仆H)、位操作区(20hH 2FH)和数据区(307FH)。对该128字节的RAM区,均可采用直接寻址和间接寻址方式,若采 用间接寻址用 R0或R1作间址寄存器。特殊功能寄存器占用片内 RAM地址空间80HFFH,对它 只能采用直接寻址方式。数据传送指令是汇编语言程序设计的基本要素,数据块传送也是程序 设计的基本技巧之 矚慫润厲
2、钐瘗睞枥庑赖賃軔朧。四、实验内容及要求试编写程序:先把内部 RAM的30H7FH单元清零,然后将 30H-7FH单元内55H的值.五、实验步骤1 打开计算机,打开 wave软件,进入仿真环境,选择软件模拟器,选择 CPU。2打开实验程序/8051程序/RAM.asm”程序3 按照程序注释设置断点。4 点击工具条的运行按钮,程序运行到第一个断点处,打开窗口察30H-7FH单元的值。聞創沟燴鐺險爱氇谴净祸測樅。5 然后再点击运行按钮,程序会运行到第二个断点处,此时,观察六、实验报告要求1 整理实验程序程序,理解程序。2如果把程序1中(30H7FH单元的内容改为 66H,如何修改程序。3 理解数据指
3、针:数据块传送若在内部RAM中进行,用什么作数据指针?若在外部RAM或 ROM中进行,用什么作数据指针? 残骛楼諍锩瀨濟溆塹籟婭骒東。4存储器和数据存储器的地址空间可以重叠,对此如何解释?七、实验参考程序ORG 0000HCLEAR: MOV R0,#30H ;30H 送 R0寄存器MOV R6,#50H ;4FHCLR1: MOV A,#00H ;00MOV R0,A ;00INC R0 ;R0 加DJNZ R6,CLR1 ;NOP选择仿真器,仿真头选择,-data 数据观察窗口,进行观30H-7FH单元的值变化。送 R6 寄存器(计数) 送累加器 A 送到 1 不到30H-7FH 单元;此
4、处设断点观察4F 个字节再清30H-7FH单元的值MOV R0,#30HMOV R6,#50HLOOP: MOV A,#55HMOV R0,A56 / 45INC R0DJNZ R6,LO OPAJM P $;此处设断点观察 30H-7FH单元的值END-JzrtnZ厂tt*UIt疯r耳日莎北百迥 gCM 外矶list t fe| 口 - H Jg I B |m H 卜 afc gg T I.E ams BBS 固Kw s one口 DODK匸1_CJLP.J riov ro ffiauCLR:rccv rtcc rcuvINCSEBS3EZEHb6h*wbjLd.MH,口odf.JClir|
5、X_Kl, A : jui JUK -iTltM JTL BD : FOSriF:占rLCzl :不尊1耳11丰弔再霜aaniinrLOOT:Rfi.riSDK I#55U BPDEKI Rfi, LPEND旦2. Mr寸bPoj*J HndoiWt T;JDP-miomcn 卜:001 阳肚L6:3时上卫J M卩 4 _I .:;!)師IjtfcFtg码电 :JhW冷11*丹vje.UMfcTm.图1实验二算术运算程序设计一、实验目的1. 学习单片机算术运算、逻辑运算等指令。2. 练习其指令的使用和编程方法。二、实验设备使用WAV肪真器的软件模拟器进行实验。三、实验原理微控制器具有较强的加、
6、减、乘、除等数学运算功能,这些运算可直接对8位无符号二进制数应用算术运算指令要注意使用条件,要靠灵活运 酽锕极額閉镇桧猪訣锥顧荭钯。进行运算。利用溢出标志,还可以把加、减法运算用于有符号数的运算;用十进制调整指令, 又可使运算直接用十进制(BCD码)来进行。用指令,进行适当的编程才能得到正确结果。四、实验内容及要求R0加数首地址;R1被加数首地址;R2字节1. 试编写多字节十进制加法程序:入口参数:数;出口参数:R0和首地址。彈贸摄尔霁毙攬砖卤庑诒尔肤。2 .试编写双字节无符号整数相乘程序:入口参数:(R2R3被乘数;(R6R7乘数;出口参数:(R4R5R6R7乘积。謀养抟箧飆鐸怼类蒋薔點鉍杂
7、。五、实验步骤建立项目文件,建立汇编源文件;启动编译、连接;1. 打开计算机,进入 wave仿真软件环境, 进入调试状态。厦礴恳蹒骈時盡继價骚卺癩龔。R0 R1、R2置成20、30、02;在片内数据区(20H2. 据实验内容要求,在寄存器窗口分别将ADD.ASM检21H),( 30H31H)单元分别置入加数和被加数,用连续或单步的方式运行程序 查程序及结果是否正确。 茕桢广鳓鯡选块网羈泪镀齐鈞。3. 实验内容要求,在寄存器窗口分别给R2R3和R6R7设置数据,运行程序 实验程序/8051程序/RAM MUL.ASM,检查程序及结果是否正确。鹅娅尽損鹤惨歷茏鴛賴縈诘聾。六、实验报告要求1 画出程
8、序框图,整理实验程序。 2若进行多字节二进制加法,程序1 应如何修改?编写程序,并运行验证。3每一实验程序做出 3 到 5 组实验数据,验证实验程序及结果是否正确,并记录。七、实验参考程序ADD.ASMI多字节十进制加法程序ORG 0000HCLR CLOOP: MOV A,R0;取低位加数ADDC A,R1 ;低位相加DA A ;调整MOV R0,A;低位和送 R0地址NC R0INC R1DJNZ R2,LOOPNOPENDMUL.ASIM双字节无符号整数相乘程序ORG 0000HQKUL: MOV A,R3MOV B,R7MUL AB ;R3*R7的低字节的高字节的高字节XCH A,R7
9、 ;R7=(R3*R7)MOV R5,B ;R5=(R3*R7)MOV B,R2MUL AB ;R2*R7ADD A,R5MOV R4,ACLR AADDC A,BMOV R5,A ;R5=(R2*R7)MOV A,R6MOV B,R3MUL AB ;R3*R6ADD A,R4XCH A,R6XCH A,BADDC A,R5MOV R5,AMOV PSW.5,C ;存 CYMOV A,R2MUL AB ;R2*R6ADD A,R5MOV R5,ACLR AMOV ACC.0,CMOV C,PSW.5 ;加上一次加法的进位 .ADDC A,BMOV R4,ASJMP $END实验三数据处理程序设
10、计一、实验目的1学习数据检索的方法和程序设计技巧。 2学习数据交换及逻辑运算指令的使用。3学习数据比较指令的使用,熟悉冒泡法排序编程。二、实验设备使用 wave 软件模拟仿真器三、实验原理 实际应用当中,多数情况下在进行核心算法之前,要进行数据准备,比如数据检索;按某种规 律将一组数据排序;有时还要将一个字节的 8 位数据打乱,按某种规律重新排序。当然数据传 送也是一种准备,诸多方式的数据准备统称为数据处理。 籟丛妈羥为贍偾蛏练淨槠挞曉。 数据检索:指在数据区查找关键字的操作。数据排序:数据排序的方法很多,本实验以冒泡法为例。所谓冒泡法是一种相邻数据互换的排 序方法,其过程类似水中汽泡上浮。此
11、方法排序效率较高。 預頌圣鉉儐歲龈讶骅籴買闥龅。四、实验内容1试编写程序:关键字检索,将实验数据存入50H单元开始的内存区,数据长度存入60H单元, 关键字存入61H单元,检索到关键字后,62H单元存入关键字所在的地址;若未检索到,则62H单元内容置 0。 渗釤呛俨匀谔鱉调硯錦鋇絨钞。2. 试编写程序:拼字程序。把30H, 31H单元的低位内容合并成一个字节,送70H单元。本程序一般用在读显示缓冲区。 铙誅卧泻噦圣骋贶頂廡缝勵罴。3 试编写程序:将R5中的单字节8位数据反序排列,原顺序为D7DO,排序后顺序为DOD7; 结果存入寄存器 R6中。擁締凤袜备訊顎轮烂蔷報赢无。五、实验步骤在窗口 /
12、数据窗口 /DATA的50H-5EH60H 单元置 08h,61H 单元置 05,运62H单元的值是否为 55H,结果是否1. 打开WAV肪真软件,选择模拟仿真,根据实验内容要求, 设置 OO O1 O2 O3 O4 O5 O6 O7 O8 O9 Oa Ob Oe的数据,行实验程序 /8O51 程序 /jiansuo.asm 源程序,停止后查看 正确。 贓熱俣阃歲匱阊邺镓騷鯛汉鼉。2 的程序,31H 单元置89H。坛搏乡2. 打开WAV仿真软件,选择模拟仿真,点击文件/新建文件/在编辑窗口输入程序保存为后缀为 .asm 的文件,然后编译,在窗口 / 数据窗口 /DATA 的 30h 单元置 2
13、8H, 置49H值,运行程序后暂停,查看窗口/数据窗口 /XDATA的8000H单元的值是否为囂忏蒌鍥铃氈淚跻馱釣。3.根据实验内容要求,在窗口/CPU窗口 /REG/R5中,将R5赋值,运行程序 3,观察窗口 /CPU窗口 /REG/R6的值是否正确。蜡變黲癟報伥铉锚鈰赘籜葦繯。六、实验报告要求1 画出程序框图,整理实验程序。2每一实验程序做出 3 到 5 组实验数据,验证实验程序及结果是否正确,并记录。七、实验参考程序程序 1 :关键字检索程序:ORG 0000HMOV R0,#50HMOV R1,60H LOOP: MOV A,R0 CJNE A,61H,LOOP1MOV 62H,R0S
14、JMP HERE LOOP1: INC R0DJNZ R1,LOOP NEXT: MOV 62H,#00H HERE: SJMP HEREEND程序 2:拼字程序ORG 0000HAJMP MAINORG 0030H MAIN: NOP PZCX: MOV A,30H ;ANL A,#0FH ;SWAP A ;MOV B,A ;MOV A,31H ;ANL A,#0FH ;ORL A,B ;AMOV DPTR,#8000H读 30H 单元内容到 A屏蔽了 A的高位 高低位交换 暂时存放在 B 中 读31H的内容到A 屏蔽了 A的高位和 B 进行或操作MOVX DPTR,A ; 结果送入 800
15、0H WAIT: SJMP WAITEND程序 3:单字节 8 位数据反序排列ORG 0000HAJMP MAINORG 0030HMAIN:MOV R2,#08HMOV A,R5MOV R7,ALOOP: MOV A,R7RLC AMOV R7,AMOV A,R6RRC AMOV R6,ADJNZ R2,LOOPAJMP $END实验四数制转换程序设计一、实验目的 1学习 ASCII 码与十六进制互换算法及程序设计方法。2.学习十六进制与 BCD码互换算法及程序设计方法。二、实验设备Wave软件模拟仿真器。三、实验原理人们在日常生活中习惯使用十进制, 而计算机键盘和显示常采用二进制编码的十进
16、制数 (即 BCD 码)或 ASCII 码。因此各种代码之间的转换是回避不了的。学习程序设计就应该掌握数字之间 的转换。 買鲷鴯譖昙膚遙闫撷凄届嬌擻。1十六进制数与 ASCII 码的转换依据下面对应关系进行:十六进制数 0129 ABFASCII 码 30 31 32394142462单字节 16 进制数转换成 10 进制数,依据的算法是:将 16 进制数除以 100,商作百位数, 将余数除以 10,商作十位数,余数即个位数。綾镝鯛駕櫬鹕踪韦辚糴飙钪麦。四、实验内容1. 多位十六进制数转换成 ASCII码:入口参数:R0十六进制数地址指针; R2字节数;出口参 数:(R1)转换后 ASCII码
17、的地址指针。 驅踬髏彦浃绥譎饴憂锦諑琼针。2. 八位二进制数转换成压缩 BCD码:入口参数:R2存放八位二进制数; 出口参数:寄存器R3R4 中存放压缩BCD码。猫虿驢绘燈鮒诛髅貺庑献鵬缩。分别在片内数据区和寄存器区赋值, 分别在片内数据区和寄存器区赋值,运行程序 1,查看程序及结果是否正确。 运行程序 2,查看程序及结果是否正确。五、实验步骤1 .根据实验内容,2.根据实验内容,六、实验报告要求编写程序。1 .画出程序框图,2. 将程序1中A+ PC变址寻址方式改为 A+D PT变址方式,修改程序并运行验证。3. 每一实验程序做出 3 到 5 组实验数据,验证实验程序及结果是否正确,并记录。
18、4比较两种变址寻址方式的编程方法有何差别?七、实验参考程序程序 1:多位十六进制数转换成 ASCII 码ORG 0000HAJMP STARTORG 0030HSTART: MOV A,R0ANL A,#0FH查表得低四位 ASCII 码MOV DPTR,#TABMOVC A,A+DPTR ;MOV R1,AINC R1MOV A,R0SWAP AANL A,#0FHMOV DPTR,#TABMOVC A,A+DPTR ;MOV R1,AINC R0查表得高四位 ASCII 码没转换完继续INC R1DJNZ R2,START ;AJMP $NOPTAB: DB 30H,31H,32H,33H
19、,34H,35H,36H,37H,38H,39HDB 41H,42H,43H,44H,45H,46HEND程序2 :八位二进制数转换成 BCD码的程序:ORG 0000HAJMP STARTORG 0100HSTART: MOV A,R2 MOV B,#100 DIV ABANL A,#0FHMOV R3,AMOV A,BMOV B,#10 DIV ABANL A,#0FHSWAP AMOV R4,AMOV A,BANL A,#0FH ORL A,R4 MOV R4,A AJMP $ END 实验五 P1 口控制实验一、实验目的 1学习51微控制器P1 口的使用方法。 2学习软件延时程序的设计
20、方法。二、实验设备 1用到的模块有 “PMC-201 8051 模块”、“503 LED 显示模块 ”。 28P 的数据线一根。三、实验原理I/O 口使用,本实验就是将 P1 口分别作为输出51 微控制器的 P1 口是一个准双向口,作通用的 进行练习。实验原理参看附图。四、实验内容使其从左到右循环点亮, 显示出流水灯效果。试编写程序:设P1 口做输出,接8个发光二极管,503 LED 显示模块 ”安装到对应的位置上。锹籁五、实验步骤 1把实验用到的模块:“PMC-201 8051 模块 ”、饗迳琐筆襖鸥娅薔嗚訝摈。2.把实验模块插放到相应的实验挂箱上,确保无误后,用1根8P排线,将PMC-20
21、1 8051模块”的JP1插座和503 LED显示模块”1上。構氽頑黉碩饨荠龈话骛門戲鷯。3456将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。 检查模块及接线无误后,打开屏上电源,控制器单元的开关,打开仿真器电源。 打开计算机上的 wave 软件,运行 “实验程序 /8051 程序 /p1test2.asm ”源程序。 观察上的发光二极管的亮灭变化情况。六、实验报告要求1 .画出程序框图,编写程序。2. 试回答:延时时间怎么计算。七、实验参考程序ORG 0000HAJMP MAINORG 0100HMAIN: MOV A,#01hLOOP: MOV P1,A ACALL
22、DELAYRL ACJNE A,#00H,LOOPAJMP MAINDELAY:MOV R3,#5A4: MOV R4,#200A3: MOV R5,#250DJNZ R5,$DJNZ R4,A3DJNZ R3,A4RETEND实验六 P1 口输入输出实验一、实验目的1学习51微控制器P1 口的使用方法。2学习软件延时程序的设计方法。二、实验设备1.用到的模块有 PMC-201 8051模块” PMC-2主控制单元”的开关量输出模块”、开关量输 入模块 ”。 輒峄陽檉簖疖網儂號泶蛴镧釃。2一号导线 8 根。三、实验原理51 微控制器的 P1 口是一个准双向口,作通用的 I/O 口使用,本实验就
23、是将 P1 口分别作为输入 和输出进行练习。 尧侧閆繭絳闕绚勵蜆贅瀝纰縭。作输入时,把开关作为输入装置,由P1 口读取开关状态。作输出时,控制LED发光二极管。四、实验内容试编写程序:P1.0P1.3作输入,读取开关S1S4状态;P1.4P1.7作输出,连接LED1LED4, 根据开关S1S4的状态,分别控制 LED1LED4的亮灭。识饒鎂錕缢灩筧嚌俨淒侬减攙。五、实验步骤1实验用到的模块: “PMC-2 控制器单元 ”, “PMC-201 8051 模块”。2把实验模块插放到相应的实验挂箱上,确保无误后, 用四根一号导线, 将 8051 模块的 P1.0、P1.1、P1.2、P1.3分别接在
24、接在开关量输出模块的(在控制器单元上)S1、S2、S3 S4;再用四根 1 号导线将 8051 模块的 P1.4、 P1.5、 P1.6、 P1.7 分别接在开关量输入模块(在控制器单 元上)的 L1、 L2、 L3、 L4。 凍鈹鋨劳臘锴痫婦胫籴铍賄鹗。345将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。 检查模块及接线无误后,打开屏上电源,控制器单元的开关,打开仿真器电源。打开计算机上的 wave 软件,运行 “实验程序 /8051 程序 /p1test1.asm 文件。6拨动S1、S2、S3 S4观察L1、L2、L3、L4上的发光二极管的亮灭是否随之变化。六、实验报告
25、要求1 画出程序框图,编写程序。2试回答: 51 微控制器的 P1 P3 口的位结构有什么不同?七、实验参考程序ORG 0000HAJMP MAINORG 0100HMAIN: MOV P1,#0FFHMOV A,P1SWAP AANL A,#0F0HMOV P1,AACALL DELAYAJMP MAIN的输出实验DELAY: MOV R3,#10 A4: MOV R4,#200 A3: MOV R5,#250 DJNZ R5,$ DJNZ R4,A3 DJNZ R3,A4 RET END 实验七 8255I/O 接口芯片 8255 的性能及硬件设计方法。I/O 接口芯片 8255 的程序设
26、计方法。一、实验目的 1学习可编程 2掌握可编程 3了解 8255 扩展接口的三种工作方式。二、实验说明1实验中用到的模块有 PMC-201 8051模块” 204译码模块” PMC-2主控制器单元”的8255A 模块 ”和“开关量的输入模块 ”。恥諤銪灭萦欢煬鞏鹜錦聰櫻郐。2一号导线四根。三、实验原理8255是一个通用的可编程并行 I/O接口芯片,它具有3个8位的并行I/O 口,分别称为PAD、 PB 口和PC口,其中PC口又分为高4位和低4位。由于8255与微控制器系统总线直接相连, 又可以通过编程方便地将各个口设置成输入或输出,所以在微控制器的I/O 扩展中, 8255 通常被人们首选。
27、对 8255 的编程也是通过对一些命令字的设定来实现。在做实验前,应详细阅读 8255 器件手册,才能有较大收获。 鯊腎鑰诎褳鉀沩懼統庫摇饬缗。实验原理及接线图见图 7-1 :8255 控制字地址为 8403H8255 的端口地址:8400H口地址为 8401H8402H8255 A 口地址为8255 B8255 C 口地址为四、实验内容及要求编写程序:设定用 8255的方式0, PA口输出方式,接4个指示灯,让四个灯循环点亮。五、实验步骤1实验中用到的模块有 “PMC -201 8051 模块 ” 204 译码模块 ”,将其插到相应的位置上。2.将切换模块的 SW1拨到ON一端,SW2的7、
28、8接ON 1-6接OFF端、WS3全 ON SW4全 OFE将PMC-2控制器单元”上的8255A模块”的PA0 PA1、PA2、PA3用一号导线分别接在 开关量的 输入模块”的L1、L2、L3、L4上,将 204译码模块”的J1、J2短接2、3, J3短接1、2。硕癘鄴 颃诌攆檸攜驤蔹鸶胶据。3.4.5.6.将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。 检查模块及接线无误后,打开屏上电源,控制器单元的开关,打开仿真器电源。打开计算机上的 wave软件,运行 实验程序/8051程序/8255.asm文件” 观察L1、L2、L3、L4上的发光二极管的亮灭是否轮流循环点亮。六
29、、实验报告要求1画出程序框图,整理实验程序。2编写程序,设定从PC(PC3 口读入4个开关通断状态,然后由出4个开关的状态。阌擻輳嬪諫迁择植秘騖輛埙鵜。七、实验参考程序;*8255 PA 口输出测试程序PC4PC7 口输出,发光管指*COM8255 EQU 8403HPA8255 EQU 8400HPB8255 EQU 8401HPC8255 EQU 8402HORG 0000HAJMP MAINORG 0100HMAIN: MOV DP TR,#COM8255MOV A,#80HMOVX DP TR,A;送控制字,设置PA 口为工作模式00,输出方式MOV A,#01HAA: MOV DP
30、TR,# PA8255MOVX DP TR,A;送01到A 口,点亮PA.1 一个灯ACALL DELAYRL ACJNE A,#00H,AA;PA.4上的灯MOV A,#01HAJMP AA延时0.5秒子程序*依次点亮 PA.1、PA.2、PA.3、DELAY: MOV R3,#5A4: MOV R4,#200A3: MOV R5,#250DJNZ R5,$DJNZ R4,A3DJNZ R3,A4RETEND 实验八 8255 一、实验目的 1学习可编程 2掌握可编程流程图:的输入输出实验I/O 接口芯片 8255 的性能及硬件设计方法。I/O 接口芯片 8255 的程序设计方法。I/O 扩
31、展中, 8255 通常 在做本实验前, 应详细阅读3了解 8255扩展接口的三种工作方式。二、实验说明 1实验中用到的模块有 “PMC -201 8051 模块”、“204 译码模块 ”、“503 LED 显示模块 ”、“504 开关量模块 ”。 氬嚕躑竄贸恳彈瀘颔澩纷釓鄧。 2两根 8p 的数据线。三、实验原理8255是一个通用的可编程并行 I/O接口芯片,它具有3个8位的并行I/O 口,分别称为PAD、 PB 口和PC口,其中PC口又分为高4位和低4位。由于8255与微控制器系统总线直接相连, 又可以通过编程方便地将各个口设置成输入或输出,所以在微控制器的 被人们首选。 对 8255 的编
32、程也是通过对一些命令字的设定来实现。8255 器件手册,才能有较大收获。 釷鹆資贏車贖孙滅獅赘慶獷緞。 实验原理图可参看附图。在实验系统中 8255的端口地址: 8255 控制字地址为 8403H口地址为 口地址为 口地址为8255 PA8255 PB8255 PC四、实验内容及要求 编写程序:设定用 8255的方式0, PB口输入方式接8个开关量, 让开关控制灯的亮灭。 怂阐譜鯪迳導嘯畫長凉馴鸨撟。五、实验步骤 1实验中用到的模块有 “PMC -201 8051 模块”、 “204 译码模块8400H8401H8402HPC 口输出方式接8个指示灯,”、“503 LED 显示模块 ”、“50
33、4开关量模块 ”将其找出并插到相应的位置上。 谚辞調担鈧谄动禪泻類谨觋鸾。2. 将切换模块的 SW1全拨到 ON一端,SW2的7、8接ON, 1-6接OFF端、SW3全 ON SW4全 OFE用8P的数据线将 PMC-2控制器单元”上的8255A模块”的J1插座连在504开关量模块”的J1上,8255A模块”的J2插座连在503 LED显示模块”的J1上,将204译码模块”的J1、J2短接2、 3, J3 短接 1 、 2。 嘰觐詿缧铴嗫偽純铪锩癱恳迹。3. 将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。4. 检查模块及接线无误后,打开屏上电源,控制器单元的开关,打开仿真器
34、电源。5. 打开计算机上的 wave 软件,运行所编写的程序或运行 “实验程序 /8051 程序 /8255 I_O.asm ” 文件。 熒绐譏钲鏌觶鷹緇機库圆鍰缄。6. 按动504开关量模块”的KEY1KEY8勺开关,观察 503 LED显示模块”上的LED1LED8发光 二极管的亮灭是否随之变化。 鶼渍螻偉阅劍鲰腎邏蘞阕簣择。六. 实验报告要求1 .画出程序框图,整理实验程序。2. 编写程序,设定从PCQ-PC3 口读入4个开关通断状态,然后由 PC4PC7口输出,发光管指 出4个开关的状态。 纣忧蔣氳頑莶驅藥悯骛覲債鴛。七、实验参考程序;*8255 PB 口输入,PC 口输出测试程序*C
35、OM8255 EQU 8403HPA8255 EQU 8400HPB8255 EQU 8401HPC8255 EQU 8402HORG 0000HAJMP MAINORG 0100HMAIN: MOV DP TR,#COM8255MOV A,#82HMOVXDP TR,A;00,输出方式AA: MOV DP TR,# PB8255MOVX A,D PTR;MOV DP TR,# PC8255 MOVX DP TR,A;ACALL DELAY;送控制字,设置PB 口为工作模式从PB 口读入一个资料将数据从PC 口送出00,输入方式,PC 口为工作方式AJMP AA延时0.5秒子程序DELAY:
36、MOV R3,#5A4: MOV R4,#200A3: MOV R5,#250DJNZ R5,$DJNZ R4,A3DJNZ R3,A4RETIEND实验九8279显示实验一、实验目的1. 了解8279键盘/显示接口芯片的基本原理和功能。2 .掌握8279与51微控制器接口硬件连接和软件设计方法。二、实验设备1用到的实验模块有:PMC-2主控制器单元”上的8279模块”、PMC-201 8051模块”、204译码模块”、402动态显示模块”。颖刍莖峽饽亿顿裊赔泷涨负這。2长的20P的数据线一根。三、实验原理8279芯片是一种通用的可编程键盘、显示接口器件,能完成对64位按键和16位LED显示器
37、的管理。8279有多种功能和多种工作模式,其功能和模式靠设定命令字来确定。 8279的命令字近10 种,所以使用 8279 之前,应详细阅读其器件手册。 濫驂膽閉驟羥闈詔寢賻減栖綜。 8279 实验原理图参看附图:实验系统中的地址:8279 状态 / 命令口地址 8602H8279 数据口地址 8600H四、实验内容及要求试编写8279初始化程序,并向 8279缓冲区写入显示字符,采用 8位LED右端送入方式显示, 程控循环显示 8 个相同 1-F 字符。 銚銻縵哜鳗鸿锓謎諏涼鏗穎報。五、实验步骤”的显示模块接口位置1将PMC-201 8051模块” 204译码模块”分别插到 PMC-2主控制
38、器单元”CPU模块接口和译 码模块接口位置上,将 “402 动态显示模块 ”插到 “PMC-4 显示与键盘单元 上。 挤貼綬电麥结鈺贖哓类芈罷鸨。注意:404 CP LD接口模块”不要插在 PMC-4显示与键盘单元”上。WS3全 ON SW4全 OFE ”的 J2 上,将 “204 译码2.将切换模块的 SW1拨到ON-端,SW2的7、8接ON 1-6接OFF端、用20p数据线将8279模块上的J5插座连在PMC-4显示模块与键盘单元 模块 ”的 J1 、 J2 短接 2、 3, J3 短接 1 、 2。 赔荊紳谘侖驟辽輩袜錈極嚕辫。3456将WAV仿真器头插在8051模块的紧锁插座内,通讯线
39、接在计算机上。 检查模块及接线无误后,打开屏上电源和控制器单元的开关,再打开仿真器电源。打开计算机上的 wave软件,运行 实验程序/8051程序/8279显示.asm”文件。 观察402动态显示模块”变化,8个数码管同时显示,显示数在0F循环变化。六、实验报告要求1 .画出程序框图,整理实验程序。F”的程序。2. 练习编程:编写由左至右循环显示字符3. 消除键盘的机械抖动有哪些方法?七、实验参考程序 实验十 8279 键盘实验 -、实验目的1. 了解 8279键盘 /显示接口芯片的基本原理和功能。2. 掌握 8279 与 51 微控制器接口硬件连接和软件设计方法。二、实验设备1. PMC-2
40、主控制器单元”上的8279模块” PMC-2018051模块” 204译码模块”、402动态 显示模块 ” PMC-405 键盘模块 ”。 塤礙籟馐决穩賽釙冊庫麩适绲。2. 20P的数据线一根,8P的数据线一根。三、实验原理8279芯片是一种通用的可编程键盘、显示接口器件,能完成对64位按键和16位LED显示器的管理。 8279 有多种功能和多种工作模式, 其功能和模式靠设定命令字来确定。 8279 的命令字近 10种,所以使用 8279之前,应详细阅读其器件手册。 裊樣祕廬廂颤谚鍘羋蔺递灿扰。8279 实验原理及接线图如下:具体可参看附图。 实验系统中的地址: 8279 状态/命令口地址 8
41、602H;8279 数据口地址 8600H 。四、实验内容及要求用MCS-51控制8279芯片扫描键盘并将按下的键在动态显示模块上显示出来。五、实验步骤1. 将PMC-201 8051模块” 204译码模块”分别插到PMC-2主控制器单元” CPU模块接口和译 码模块接口位置上,将 402 动态显示模块 ”插到 PMC-4 显示与键盘单元 ”的显示模块接口位置 上。 仓嫗盤紲嘱珑詁鍬齊驁絛鯛鱧。注意:404 CP LD接口模块”不要插在 PMC-4显示与键盘单元”上。2. 将切换模块的 SW1拨到ON一端,SW2的7、8接ON 1-6接OFF端、WS3全 ON SW4全 OFE 用短路帽短接
42、204译码模块”的J1的2、3端和J2短接的2、3端,J3短接1、2。用20p数据 线将8279模块上的J5插座连在PMC-4显示模块与键盘单元”的J2上,用8P的数据线将8279 模块上的J4插座连在PMC-4显示模块与键盘单元”的J4上。绽萬璉轆娛閬蛏鬮绾瀧恒蟬轅。3456将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。 检查模块及接线无误后,打开屏上电源和控制器单元的开关,再打开仿真器电源。打开计算机上的 wave软件,运行 实验程序/8051程序/8279键盘显示.asm”文件程序。 观察 402 动态显示模块 ”变化, 8 个数码管同时显示,显示按下的键值。六、实验
43、报告要求1 画出程序框图,整理实验程序。F”的程序。2练习编程:编写由左至右循环显示字符 3消除键盘的机械抖动有哪些方法?七、 实验参考程序( 实验程序/8051程序/8279键盘显示.asm文件程序) 实验十一 8254 定时器实验一、实验目的1了解可编程定时 / 计数器 8254的性能及硬件设计方法。2掌握 8254 的工作方式及程序设计方法。二、实验说明1实验用到 PMC-2主控制器单元”上的8254模块” PMC-2018051模块” PMC-203译码模 块 ”。 骁顾燁鶚巯瀆蕪領鲡赙骠弒綈。2示波器一台。三、实验原理要想用好瑣钋濺8254 也是可编程计算机接口芯片,尤其是 51 微
44、控制器由于内部定时器数量有限,在遇到定时 器扩展时, 8254 通常作为首选。 8254 内部有 3 个计数器, 它们的结构完全相同。既可以作为定 时器使用, 也可以作为计数器。 在本实验中将对 8254的两种工作方式分别进行实验, 8254,首先要对 8254 相关命令字有较透彻的了解,做实验前,请详细阅读该器件手册。 暧惲锟缟馭篩凉貿锕戧。可编程定时器 8254 具有以下功能: 三个独立的 16 位计数器:1 每个计数器可按二进制或十进制编程 2每个计数器可编程以 6 种不同方式工作 方式 0:计数结束中断方式 1 :可编程单稳方式 2:频率发生器方式 3:方波频率发生器方式 4: 用软件
45、 “触发 ”产生选通信号方式 5:用硬件触发产生选通信号 鎦诗涇艳损楼紲鯗餳類碍穑鳓。3每个计数器计数频率最高为10MHz4可读回状态5定时器占用 4 个 I/O 地址。8254 端口地址: 定时/计数器 0 寄存器 = 85F9H 定时 /计数器 1 寄存器 = 85FBH 定时/计数器 2 寄存器 = 85FDH 定时/计数器控制寄存器 = 85FFF 电路图见附图。四、实验内容及要求编写程序:设定 8254的0通道,CLK0输入时钟为4MHz计数器工作在方式 3,选定适当的计 数器初值,使 OUT0引脚输出各种频率(小于 4MHZ的方波。栉缏歐锄棗鈕种鵑瑶锬奧伛辊。五、实验步骤1 按要求
46、编写程序。“204 译码模块 ”的 J1、 J2 短接 2、3,J3 短接 1、2,将切换模6、7、8接ON 1-5接OFF端、SW3全ON SW4全OFF。辔烨棟剛2. 将PMC-2018051模块” PMC-203译码模块”分别安装到 PMC-2主控制器单元”的CPU模块 接口和译码模块接口位置上,将 块的SW1拨到ON端,SW2的殓攬瑤丽阄应頁諳绞。模块的紧锁插座内,通讯线接在计算机上。3. 将 WAV仿真器头插在 8051 4检查模块及接线无误后,打开屏上电源和控制器单元的开关,再打开仿真器电源。5. 打开计算机上的 wave软件,运行 实验程序”文件夹下的“8051程序”中的8254
47、方波.asm” 源程序。 峴扬斕滾澗辐滠兴渙藺诈機愦。6. 运行程序,用示波器观察 “8254 模块 ”上的 XF11 插针的最右侧针上输出波形的频率。六、实验报告要求1 .画出程序框图,整理实验程序。2.回答下列问题:如果用8254的1通道,计数器工作在方式 3,使OUT1引脚输出10KHz、1KHz 的方波,应如何编写程序及计算计数器初值。 詩叁撻訥烬忧毀厉鋨骜靈韬鰍。七、实验参考程序COM8254 EQU 085FFHTIME0 EQU 085F9H TIME1 EQU 085FBHTIME2 EQU 085FDHMAIN: MOV DPTR,#COM8254 MOV A,#3EH ;
48、MOVX DPTR,A ;ORG 0000H指向 8254 的控制口地址计数器 0工作方式 3 二进制元计数方式 00110110B 方式控制字送入指向计数器 0低八位送入高八位送入MOV DPTR,#TIME0MOV A,#0A0H MOVX DPTR,AMOV A,#0FH MOVX DPTR,A AJMP $实验十二 8259 中断扩展实验一、实验目的 1了解可编程中断扩展芯片 8259A 的性能及硬件设计方法。 2掌握 8259A 的工作方式及程序设计方法。二、实验说明实验用到 PMC-2主控制器单元”上的8259模块” PMC-2018051模块” PMC-203译码模块” “开关量
49、输入模块 ”、 “脉冲模块 ”。 则鯤愜韋瘓賈晖园栋泷华缙輅。三、实验原理(IRR) 同时MCS-51系列单片机内部提供了两个外部中断源,但在某些复杂的外部中断系统中还是不够的, 就要进行外部中断扩展。 8259是一种可编程的中断控制器。每块芯片可管理 8级向量中断,同 时,可通过多片级连实现多达64级的中断管理。PC/AT中使用两片8259,对15级向量中断进行管理。 中断控制器支持 8级中断请求, 可通过编程设定优先级, 8位的中断请求寄存器 将8个中断请求信号锁存其中(有请求相应位置1 ”,IRR可以编程为边沿或电平触发。即全嵌支持级连工作方式,允许把附加的控制器加到系统内,这样就可以扩
50、充外部中断请求信号的数 目,比如PC/AT系统就支持这种级连工作方式。中断控制器8259有四种主要工作方式,套、循环优先级、特定屏蔽和程序查询方式。同时,它还有一 4 种从属工作方式,即结束中断、 读状态、中断请求触发和数据缓冲方式。此外它分单片系统和多片级连系统两大类,在多片级 连系统中还允许主片选择特殊全嵌套方式。这些工作方式都可以通过编程选择。中断方法是解 决外部设备和系统连接的很好途径,它有效地实现了外部设备与CPU的并行工作。在实际应用中,除了要考虑如何对中断控制器编程进行的问题,还要对采用中断方式进行I/O 控制的接口电路进行设计。 胀鏝彈奥秘孫戶孪钇賻锵咏繞。 实验中用的是单片
51、8259,通过译码电路后, 8259的地址是: 8100H 电路图参看附图。当 /INT1四、实验内容及要求 编写程序:使用8259的/INTO、/INT1两个中断源,当/INTO中断发生时让一个灯闪三次, 发生中断时另一个灯闪三次。 鳃躋峽祷紉诵帮废掃減萵輳慘。五/实验步骤 1 按要求编写程序。2. PMC-201 8051模块” 204译码模块”分别安装到 PMC-2主控制器单元”的CPU模块接口和译码模块接口位置上,将切换模块的SW1的1-8拨到on端;SW2的1-5拨到off端,6-8拨到on端;SW3的全拨到on端;SW4全将off端;用短路帽将 204译码模块”的J1的2/ 3短接
52、, J2的2/ 3端短接,J3的1 /2短接,用一号导线将8259模块”/INT0插座与脉冲模块”的P+相连,PMC-201 8051模块”的P1.0与 开关量输入模块”的L1相连,P1.1与L2相连。稟虛嬪赈 维哜妝扩踴粜椤灣鲳。3. 将WAV仿真器头插在8051模块的紧锁插座内,通讯线接在计算机上。4. 检查模块及接线无误后,打开屏上电源和控制器单元的开关,再打开仿真器电源。5. 打开计算机上的 wave 软件,运行 实验程序 /8051 程序 /8259test.asm ”源程序。6. 按一下脉冲模块的 S9按键,观察L1灯是否闪三次。7. 然后把8259模块”/INT1与脉冲模块”的P
53、+上相连,重新运行后,再按动S9键,观察L2 灯是否闪动。 陽簍埡鲑罷規呜旧岿錟麗鲍轸。六/实验报告要求画出程序框图,整理实验程序。七、实验参考程序( “实验程序 /8051 程序 /8259test.asm ”源程序)。实验十三EEP OROM外部程序存储器实验一、实验目的1掌握MCS-51系列单片机的程序内存扩展方法。2了解EEPRO的使用方法。二、实验说明1 .实验用到 PMC-201 8051模块”、503 LED显示模块”。2. 8P的数据线一根。三、实验原理MCS-51系列的单片机中,8031没有内部程序内存,89C51单片机内部虽有 4K的EEPROM但对 一些大型应用程序,还是不够用,需要扩展的,程序内存扩展也是很重要的。MCS-51系列的单片机可寻址的范围是 OOOOH-OFFFFH,共64K空间,因此最多可以扩展 64k。对89c51就扩展60K, 其中4K在片内,60K在片外。8031内部没有程序内存,全部在片外。当单片机的 /EA引脚接高 电平时,先访问内部的的 EEPROJM在访问外部的EEPROM当/EA接地时,只访问外部的EEPRO.寸 8O31 芯片, /EA 只能接地。 沩氣嘮戇苌鑿鑿槠谔應釵蔼绋。实验中采用 27512 EEPROMT展芯片,64K,地址为 0000H-0FFFFH 地址线 A0-A15。钡嵐縣緱虜荣 产
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 4s店售后服务部投诉奖惩制度
- c产品品质奖惩制度
- gsp考核奖惩制度
- 2026届豫东名校生物高一下期末调研模拟试题含解析
- 企业法务主管职位的培训内容与任务要求
- 浙江省台州市温岭市2026届生物八年级第二学期期末达标检测模拟试题含解析
- 华为网络工程师岗位培训要点详解
- 浙江省金华市聚仁教学集团2026届5月初三第三次联考生物试题试卷含解析
- 抚州市重点中学2026年初三下学期第八次月考生物试题含解析
- 广东省潮州湘桥区六校联考2025-2026学年中考全国卷信息归集与中考命题预测-生物试题卷含解析
- 2026年常州信息职业技术学院单招职业技能测试题库及答案1套
- 2026年江苏卫生健康职业学院单招职业适应性测试题库附答案
- 景泰地区地质勘探与三叠系南营儿群研究
- 2025年相控阵超声检测真题及答案
- 驾考宝典2025全部试题(附答案)
- 赌场合作合同模板范本(3篇)
- 大单元体育教学设计解读
- 礼品行业薪酬管理办法
- 基于PLC技术的电动汽车充电系统设计
- 体检中心业务知识培训课件
- 项目部管理人员安全教育内容
评论
0/150
提交评论