机械单片机实验报告-单片机IO口控制及定时器应用.doc

上传人:e****s 文档编号:61851394 上传时间:2022-11-21 格式:DOC 页数:16 大小:263KB
返回 下载 相关 举报
机械单片机实验报告-单片机IO口控制及定时器应用.doc_第1页
第1页 / 共16页
机械单片机实验报告-单片机IO口控制及定时器应用.doc_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《机械单片机实验报告-单片机IO口控制及定时器应用.doc》由会员分享,可在线阅读,更多相关《机械单片机实验报告-单片机IO口控制及定时器应用.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、班 级姓 名学 号同组者姓名实验日期实验工程单片机IO口控制及定时器应用实验目的熟悉并掌握如何控制IO口,利用定时器控制IO口系列实验长春大学光华学院实验报告用纸实验内容一I/O口输出上下电平什么是单片机IO口?如何利用IO口输出上下电平。例如:ORG 0000END二I/O口点亮/熄灭LEDIO口控制实验,点亮/熄灭IO口控制的LED。例如:ORG 0000CLR P1 / SETB P1END三闪烁灯1 实验任务如图1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为1秒。2 电路原理图图13 系统板上硬件连线把“单片机系统“八路发光二极管指示模块区域

2、中的L1端口上。4 程序设计内容(1) 延时程序的设计方法作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁时间间隔为1秒,相对于微秒来说,相差太大,所以我们在执行某一指令时,插入延时程序,来到达我们的要求,但这样的延时程序是如何设计呢?下面具体介绍其原理:如下图的石英晶体为12MHz,因此,1个机器周期为1微秒因此,上面的延时程序时间为10.002ms。由以上可知,当R610、R7248时,延时5ms,R620、R7248时,延时10ms,以此为根本的计时单位。当R6=200、R7=248时,延时100ms。如本实验要求1秒1000ms,100msR51000ms,那么R

3、510,延时子程序如下:DELAY:MOV R5,#10D1:MOV R6,#200D2:MOV R7,#248DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RET(2) 输出控制如图1所示,当P1.0端口输出高电平,即P1.01时,根据发光二极管的单向导电性可知,这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.00时,发光二极管L1亮;我们可以使用SETBP1.0指令使P1.0端口输出高电平,使用CLRP1.0指令使P1.0端口输出低电平。5 程序框图如图2所示图26、 汇编源程序ORG 0000LCALL DELAYLCALL DELAYLJMP STARTDELAY

4、:MOV R5,#10;延时子程序,延时1秒D1:MOV R6,#200D2:MOV R7,#248DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND四广告灯的左移右移1 实验任务做单一灯的左移右移,硬件电路如图1所示,八个发光二极管L1L8分别接在单片机的P1.0P1.7接口上,输出“0P1.0亮,重复循环。2 电路原理图同 实验三图13 系统板上硬件连线把“单片机系统“八路发光二极管指示模块区域中的L1L8端口上,要求:P1.0对应着L1,P1.1对应着L2,P1.7对应着L8。4 程序设计内容我们可以运用输出端口指令MOVP1,A或MOVP1,DATA,只要给累加器值

5、或常数值,然后执行上述的指令,即可到达输出控制的动作。每次送出的数据是不同,具体的数据如下表1所示说明L8L7L6L5L4L3L2L111111110L1亮11111101L2亮11111011L3亮11110111L4亮11101111L5亮11011111L6亮10111111L7亮01111111L8亮表15 程序框图图26 汇编源程序ORG 0000START:MOV R2,#8MOV A,#01HLOOP:MOV P1,ALCALL DELAYRLC ADJNZ R2,LOOPMOV R2,#8LOOP1:MOV P1,ALCALL DELAYRRC ADJNZ R2,LOOP1LJ

6、MP STARTDELAY:MOV R5,#10;D1:MOV R6,#200D2:MOV R7,#248DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND五广告灯利用查表方式1 实验任务利用取表的方法,使端口P1做单一灯的变化:左移2次,右移2次,闪烁2次延时的时间0.5秒。2 电路原理图图13 系统板上硬件连线把“单片机系统“八路发光二极管指示模块区域中的L1L8端口上,要求:P1.0对应着L1,P1.1对应着L2,P1.7对应着L8。4 程序设计内容在用表格进行程序设计的时候,要用以下的指令来完成(1) 利用MOVDPTR,DATA16指令来使数据指针存放器指到表的开

7、头。(2) 利用MOVCA,ADPTR的指令,根据累加器的值再加上DPTR的值,就可以使程序计数器PC指到表格内所要取出的数据。因此,只要把控制码建成一个表,而利用MOVCA,ADPTR做取码的操作,就可方便地处理一些复杂的控制动作,取表过程如下列图所示:5 程序框图图26 汇编源程序ORG 0000START:MOV DPTR,#TABLELOOP:CLR AMOVC A,A+DPTRCJNE A,#01H,LOOP1JMP STARTLOOP1:MOV P1,AMOV R3,#50LCALL DELAYINC DPTRJMP LOOPDELAY:MOV R4,#20D1:MOV R5,#2

8、48DJNZ R5,$DJNZ R4,D1DJNZ R3,DELAYRETTABLE:DB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHDB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 07FH,0BFH,0DFH,0EFHDB 0F7H,0FBH,0FDH,0FEHDB 00H, 0FFH,00H, 0FFHDB 01HEND六利用定时器实现LED500ms闪烁定时点亮灯:ORG 0000HMAIN :MOV A, #0FF

9、HLP0: MOV P1,A ACALL DELAY CPL A AJMP LP0DELAY:MOV R3,#10 MOV TMOD, #10H MOV TH1,#3CHMOV TL1,#0B0HSETB TR1LP1: JBC TF1,LP2 SJMP LP1LP2: MOV TH1, #3CHMOV TL1,#0B0H DJNZ R3,LP1RET END七定时流水灯:ORG 0000HMAIN :MOV A, #01H MOV R7,#8LP0: MOV P1,A ACALL DELAY RL A DJNZ R7,LP0 AJMP MAINDELAY:MOV R3,#10 MOV TMO

10、D, #10H MOV TH1,#3CHMOV TL1,#0B0HSETB TR1LP1: JBC TF1,LP2 SJMP LP1LP2: MOV TH1, #3CHMOV TL1,#0B0H DJNZ R3,LP1RET END八利用定时器实现把戏灯ORG 0000HMAIN :MOV R7,#5 MOV A, #0AHLP0: MOV P1,A ACALL DELAY RL ADJNZ R7,LP0NEXT1:MOV A, #0AAH MOV P1,A ACALL DELAYMOV A, #55HMOV P1,A ACALL DELAYMOV A ,#0FFHMOV P1,AACALL

11、DELAYMOV P1,#00HMOV P1,AACALL DELAYAJMP MAINDELAY:MOV R3,#10 MOV TMOD, #10H MOV TH1,#3CHMOV TL1,#0B0HSETB TR1LP1: JBC TF1,LP2 SJMP LP1LP2: MOV TH1, #3CHMOV TL1,#0B0H DJNZ R3,LP1RET END开 始A的值放入P1口定时1s左移1位判断常数5-1不等于0那么跳转YN将AA放入A定时1s将55放入A定时1s将FF放入A定时1s将00放入A定时1s(九)继电器控制一、实验目的1、学习I/O端口的使用方法。2、掌握继电器的控制的

12、根本方法。3、了解用弱电控制强电的方法。二、实验原理现代自动控制设备中,都存在一个电子电路与电气电路的互相连接问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件电动机,电磁铁,电灯等,另一方面又要为电子线路的电气电路提供良好的电气隔离,以保护电子电路和人身的平安。继电器便能完成这一桥梁作用。说明:1、本实验用单片机的端口,输出电平控制继电器的吸合和断开,实现对外部装置的控制。采用的继电器其控制电压是5V,控制端为高电平时,继电器工作常开触点吸合,连触点的LED灯被点亮。当控制端为低电平时,继电器不工作。执行时,对应的LED将随继电器的开关而亮灭。1、 实验电路及连线连线连接孔1连接孔

13、21继电器输入25V继电器常闭输入3L0继电器中间输入2、 实验框图开始继电器吸合延时继电器断开延时3、 汇编语言源程序:OUTPUT EQU P1.0 LOOP: CLR C MOV OUTPUT,C CALL DELAY SETB C MOV OUTPUT,C CALL DELAY LJMP LOOPDELAY:MOV R5,#10;D1:MOV R6,#200D2:MOV R7,#248DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND三、实验仪器1、LAB6000 通用微控制器实验系统。2、计算机,WAVE 集成调试软件。3、连线假设干。四、实验步骤:1、连接系统,

14、设置好仿真器和编译选项。2、建立新程序和新工程,编译程序。3、编译成功后进行调试,观察LED的闪烁。十外部中断实验一、实验目的1、学习外部中断技术的根本使用方法。2、学习中断处理程序的编程方法。二、实验原理中断效劳程序的关键是:1、保护进入中断时的状态,并在退出中断之前恢复进入时的状态。2、必须在中断程序中设定是否允许中断重入,即设置EXO位。一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的存放器。本例的中断程序保护了PSW,ACC等三个存放器并且在退出前恢复了这三个存放器。另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。说明:1、 本实验用单次脉冲申请中断

15、,在中断处理程序中对输出信号进行反转。本例中使用了INTO中断,INTOP32端接单次脉冲发生器。P1.0接LED灯,以查看信号反转。连线连接孔1连接孔21L02单脉冲输出INT0 (51系列)2、实验电路与连线3、实验框图LEDBUF EQU 0 LJMP START ORG 0003HINTERRUPT0: PUSH PSW ; 保护现场 CPL LEDBUF ; 取反LED MOV C, LEDBUF MOV LED, C POP PSW ; 恢复现场 RETISTART: CLR LEDBUF CLR LED MOV TCON, #01H ; 外部中断0下降沿触发 MOV IE, #81H ;翻开外部中断允许位(EX0)及总中断允许位(EA) LJMP $ END

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理手册

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁