《单片机与控制技术》实验指导书.doc
《《单片机与控制技术》实验指导书.doc》由会员分享,可在线阅读,更多相关《《单片机与控制技术》实验指导书.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机技术单片机与控制技术实验指导书2012.3第2版 2011.9第1版武汉工程大学电气信息学院电气工程教研室目 录实验1 P1口实验一1实验2 P1口实验二4实验3 简单I/O口扩展实验7实验4 中断实验11实验5 定时器实验12实验6 存储器扩展实验14实验7 P1口扩展键盘实验15实验8 A/D转换实验17实验9 D/A转换实验19附录:实验设备硬件系统概述21实验1 P1口实验一一、实验目的:1 学习P1口的使用方法。2 学习延时子程序的编写和使用。二、实验设备:CPU挂箱、8031CPU模块三、实验内容:1 P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。2 P1
2、口做输入口,接八个按纽开关,以实验箱上74LS273做输出口,编写程序读取开关状态,在发光二极管上显示出来。四、实验原理: P1口为准双向口,P1口的每一位都能独立地定义为输入位或输出位。作为输入位时,必须向锁存器相应位写入“1”,该位才能作为输入。8031中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写过“0”,在需要时应写入一个“1”,使它成为一个输入。可以用第二个实验做一下实验。先按要求编好程序并调试成功后,可将P1口锁存器中置“0”,此时将P1做输入口,会有什么结果。再来看一下延时程序的实现。现常用的有两种方法,一是用定时器中断来实现,一是用指令循环来实现。在系统时间允许的情况
3、下可以采用后一种方法。本实验系统晶振为6.144MHZ,则一个机器周期为126.144us即10.512us。现要写一个延时0.1s的程序,可大致写出如下: MOV R7,#X (1) DEL1:MOV R6,#200 (2) DEL2:DJNZ R6,DEL2 (3) DJNZ R7,DEL1 (4)上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需要10.256us,现求出X值:10.256+X(10.256+20010.256+10.256)=0.110指令(1) 指令(2) 指令(3) 指令(4)所需时间 所需时间 所需时间 所需时间X=(0.110-10.256)/(10
4、.256+20010.256+10.256)=127D=7FH经计算得X=127。代入上式可知实际延时时间约为0.s,已经很精确了。五、实验原理图:P1口输出实验 P1口输入实验六、实验步骤:执行程序1(T1_1.ASM)时:P1.0P1.7接发光二极管L1L8。执行程序2(T1_1.ASM)时:P1.0P1.7接平推开关K1K8;74LS273的O0O7接发光二极管L1L8;74LS273的片选端CS273接CS0(由程序所选择的入口地址而定,与CSOCS7相应的片选地址请查看第一部分系统资源,以后不赘述)。七、程序框图: 循环点亮发光二极管 通过发光二极管将P1口的状态显示八、参考程序:1
5、、循环点亮发光二极管(T1_1.ASM)NAME T1_1 ;P1口输实验CSEG AT 0000H LJMP STARTCSEG AT 4100HSTART: MOV A,#0FEHLOOP: RL A ; 左移一位,点亮下一个发光二极管 MOV P1,A LCALL DELAY;延时 0.1秒 SJMP LOOP; DELAY: MOV R1,#127 ; 延时0.1秒DEL1: MOV R2,#200DEL2: DJNZ R2,DEL2 DJNZ R1,DEL1 RET; END2、通过发光二极管将P1口的状态显示(T1_2.ASM)NAME T1_2 ;P1口输入实验OUT_PORTE
6、QU0CFA0HCSEG AT 0000H LJMP STARTCSEG AT 4100HSTART: MOV P1,#0FFH ;复位P1口为输入状态 MOV A,P1 ;读P1口的状态值入累加器A MOV DPTR,#OUT_PORT ;将输出口地址赋给地址指针DPTR MOVX DPTR,A ;将累加器A的值赋给DPTR指向的地址 SJMP START ;继续循环监测端口P1的状态 END 实验2 P1口实验二一、实验目的:1 学习P1口既做输入又做为输出的使用方法。2 学习数据输入、输出程序的设计方法。二、实验设备:CPU挂箱、8031CPU模块三、实验原理:P1口的使用方法这里不讲了
7、。有兴趣者不妨将实验例程中的“SETB P1.0, SETB P1.1”中的“SETB”改为“CLR”看看会有什么结果。另外,例程中给出了一种N路转移的常用设计方法,该方法利用了JMP A+DPTR的计算功能,实现转移。该方法的优点是设计简单,转移表短,但转移表大小加上各个程序长度必须小于256字节。四、实验原理图:P1口输入、输出实验五、实验步骤:平推开关的输出K1接P1.0;K2接P1.1;发光二极管的输入L1接P1.2;L2接P1.3;L5接P1.4;L6接P1.5。运行实验程序,K1做为左转弯开关,K2做为右转弯开关。L5、L6做为右转弯灯,L1、L2做为左转弯灯。结果显示:1:K1接
8、高电平K2接低电平时,右转弯灯(L5、L6)灭,左转弯灯(L1、L2)以一定频率闪烁;2:K2接高电平K1接低电平时,左转弯灯(L1、L2)灭,右转弯灯(L5、L6)以一定频率闪烁;3:K1、K2同时接低电平时,发光二极管全灭;4:K1、K2同时接高电平时,发光二极管全亮。六、参考程序:T2.ASMNAME T2 ;P1口输入输出实验CSEG AT 0000H LJMP STARTCSEG AT 4100HSTART: SETB P1.0 SETB P1.1 ;用于输入时先置位口内锁存器 MOV A,P1 ANL A,#03H ;从P1口读入开关状态,取低两位 MOV DPTR,#TAB ;转
9、移表首地址送DPTR MOVC A,A+DPTR JMP A+DPTRTAB: DB PRG0-TAB DB PRG1-TAB DB PRG2-TAB DB PRG3-TABPRG0: MOV P1,#0FFH ;向P1口输出#0FFH,发光二极管全灭 ;此时K1=0,K2=0 LJMP STARTPRG1: MOV P1,#0F3H ;只点亮L5、L6,表示左转弯 ACALL DELAY ;此时K1=1,K2=0MOV P1,#0FFH ;再熄灭0.5秒 ACALL DELAY ;延时0.5秒 LJMP STARTPRG2: MOV P1,#0CFH ;只点亮L7、L8,表示右转弯 ACAL
10、L DELAY ;此时K1=0,K2=1 MOV P1,#0FFH ;再熄灭0.5秒 ACALL DELAY LJMP STARTPRG3: MOV P1,#00H ;发光二极管全亮,此时K1=1,K2=1LJMP START ;DELAY: MOV R1,#5 ;延时0.5秒DEL1: MOV R2,#200DEL2: MOV R3,#126DEL3: DJNZ R3,DEL3 DJNZ R2,DEL2 DJNZ R1,DEL1 RET ; END七、程序框图: 实验3 简单I/O口扩展实验交通灯控制实验一、实验目的:1 学习在单片机系统中扩展简单I/O接口的方法。2 学习数据输出程序的设计
11、方法。3 学习模拟交通灯控制的实现方法。二、实验设备:CPU挂箱、8031CPU模块三、实验内容:扩展实验箱上的74LS273做为输出口,控制八个发光二极管亮灭,模拟交通灯管理。四、实验原理:要完成本实验,首先必须了解交通路灯的亮灭规律。本实验需要用到实验箱上八个发光二极管中的六个,即红、黄、绿各两个。不妨将L1(红)、L2(绿)、L3(黄)做为东西方向的指示灯,将L5(红)、L6(绿)、L7(黄)做为南北方向的指示灯。而交通灯的亮灭规律为:初始态是两个路口的红灯全亮,之后,东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。闪烁若干次后,东西路口红
12、灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。闪烁若干次后,再切换到东西路口方向,重复上述过程。各发光二极管的阳极通过保护电阻接到+5V的电源上,阴极接到输入端上,因此使其点亮应使相应输入端为低电平。五、实验原理图六、实验步骤:74LS273的输出O0O7接发光二极管L1L8,74LS273的片选CS273接片选信号CSO.运行实验程序,观察LED显示情况是否与实验内容相符。七、程序框图:八、参考程序:T3.ASMNAME T3 ;I/O口扩展实验一PORT EQU 0CFA0H ;片选地址CS0CSEG AT 0000H LJMP START
13、CSEG AT 4100HSTART: MOV A,#11H ;两个红灯亮,黄灯、绿灯灭 ACALL DISP ;调用273显示单元(以下雷同) ACALL DE3S ;延时3秒LLL: MOV A,#12H ;东西路口绿灯亮;南北路口红灯亮 ACALL DISP ACALL DE10S ;延时10秒 MOV A,#10H ;东西路口绿灯灭;南北路口红灯亮 ACALL DISP MOV R2,#05H ;R2中的值为黄灯闪烁次数TTT: MOV A,#14H ;东西路口黄灯亮;南北路口红灯亮 ACALL DISP ACALL DE02S ;延时0.2秒 MOV A,#10H ;东西路口黄灯灭;
14、南北路口红灯亮 ACALL DISP ACALL DE02S ;延时0.2秒 DJNZ R2,TTT ;返回TTT,使东西路口黄灯闪烁五次 MOV A,#11H ;两个红灯亮,黄灯、绿灯灭 ACALL DISP ACALL DE02S ;延时0.2秒 MOV A,#21H ;东西路口红灯亮;南北路口绿灯亮 ACALL DISP ACALL DE10S ;延时10秒 MOV A,#01H ;东西路口红灯亮;南北路口绿灯灭 ACALL DISP MOV R2,#05H ;黄灯闪烁五次GGG: MOV A,#41H ;东西路口红灯亮;南北路口黄灯亮 ACALL DISP ACALL DE02S ;延
15、时0.2秒 MOV A,#01H ;东西路口红灯亮;南北路口黄灯灭 ACALL DISP ACALL DE02S ;延时0.2秒 DJNZ R2,GGG ;返回GGG,使南北路口;黄灯闪烁五次 MOV A,#03H ;两个红灯亮,黄灯、绿灯灭 ACALL DISP ACALL DE02S ;延时0.2秒 LJMP LLL ;转LLL循环DE10S: MOV R5,#100 ;延时10秒 LJMP DE1DE3S: MOV R5,#30 ;延时3秒 LJMP DE1DE02S: MOV R5,#02 ;延时0.2秒DE1: MOV R6,#200DE2: MOV R7,#126DE3: DJNZ
16、 R7,DE3 DJNZ R6,DE2 DJNZ R5,DE1 RETDISP: MOV DPTR,#PORT ;273显示单元CPL AMOVX DPTR,ARET END实验4 中断实验 按键控制LED亮灭一、实验目的:1 学习外部中断技术的基本使用方法。2 学习中断处理程序的编程方法。二、实验设备:CPU挂箱、8031CPU模块三、实验内容:使用用单片机的INT0中断资源控制发光二极管(LED)的亮灭。当按下实验装置的单脉冲按钮时,触发单片机的INT0中断,在INT0的中断服务程序中,将LED的状态取反,即原来LED状态亮的话,将LED熄灭,反之点亮。四、实验原理:使用单片机的IO口驱动
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机与控制技术 单片机 控制 技术 实验 指导书
限制150内