单片机原理实验精选.docx
文本预览下载声明
《单片机原理及应用》 实 验 报 告 册系别:电 气 学 院 班级: 自 动 化142 姓名: 学号:实验一:熟悉keil c51 集成开发环境及常用指令实验目的:了解80c51典型应用系统的开发过程,熟悉keil c51集成开发环境;掌握单步执行程序,查看专用寄存器和单片机RAM的执行结果;掌握80c51的寻址方式及常用指令的使用方法。实验内容基本指令练习;数据转送(循环方式)。思考题分别执行以下程序,在调试状态下观察有关单元的内容顺序执行的程序:ORG 00HSJMP MAINORG 30HMAIN: MOV SP,#60H MOV R0,#40H MOV R1,#30H MOV 30H,#50H MOV A,#40H MOV @R0,A ;R0与A内容相等为40H INC A MOV A,@R1 ;A的内容为30H,R1的内容给A PUSH ACC ;61H给A POP 32H ;60H给30H MOV A,#5FH SWAP A ;高四位低四位交换,A为F5H MOV DPTR,#0030H MOVX @DPTR,A循环程序:XUNHUAN1: MOV R0,#30H ;要赋值的首地址 MOV R2,#10H ;一共赋值16次 CLR A ;从0开始赋值LOOP1: MOV @R0,A ;赋值16次后停止赋值 INC A ;32H=2,37H=7,3BH=0B,3FH=0F INC R0 DJNZ R2,LOOP1 XUNHUAN2: MOV R0,#30H MOV R1,#40H MOV R2,#10HLOOP2: MOV A,@R0 ;从40H开始一直赋值 MOV @R1,A ;赋的值从30H开始 INC R0 ;就是40H=30H,41H=31H INC R1 ;一直到R2=0 DJNZ R2,LOOP2 ;就是4FH=3FH汇编程序3:PANDUAN1: MOV 30H,#10H MOV 31H,#4BH MOV R0,#30H MOV R1,#31HPAN0: MOV A,@R0 CLR C ;进位位清零 SUBB A,@R1 ;带进位位的加法 JNC PAN1 ;判断进位位C,不为零跳转 MOV A,@R0 ;所以当C等于零时,将 MOV 40H,@R1 ;30H和30H的内容互换 MOV @R0,40H MOV @R1,APAN0: NOP END编程完成:单片机内部RAM40H~4FH置初值A0H~4FH的内容传送到外部RAM中的2000H~200FH单元,在把外部RAM中的2000H~200FH单元的内容传送到单片机内部RAM的50H~5FH单元。汇编代码: ORG 00HAJMP MAINORG 30HMAIN:MOV R0,#40HMOV R1,#16MOV A,#01HMOV DPTR,#2000HLOOP1:MOV @R0,AMOVX @DPTR,AINC DPTRINC R0INC ADJNZ R1,LOOP1MOV R0,#50HMOV R1,#16MOV DPTR,#2000HLOOP2:MOVX A,@DPTRMOV @R0,AINC DPTRINC R0DJNZ R1,LOOP2END实验二:中断、定时器与I/O口控制实验目的 (1)掌握定时器/计数器、中断初始化程序设计的方法; (2) 掌握定时/计数器方式2的编程方法; (3)掌握中断的编程方法; (4)掌握使用单片机P1口和P3口做I/O输出,各参数的配置。实验任务完成在每隔50MS/1S下接在P1口的八个发光二极管循环亮灭程序设计和调试。要求:1、选择定时器T0方式一定时,中断方式产生50MS,使P1口的八个发光二极管循环亮灭。 2、用定时器与计数器的方式,使T0工作定时产生50MS,使T1工作与计数器,计数10次,每次T0溢出后从P3.0给T1
显示全部