资源描述
班级: 姓名: 学号:单片机实验1 汇编语言程序设计实验- 存储器块清零或赋值一实验目的1 熟悉存储器的读写方法,熟悉51汇编语言结构。2 熟悉循环结构程序的编写。3 熟悉编程环境和程序的调试。二实验内容指定存储器中某块的起始地址和长度,要求将其内容清零或赋值。例如将4000H开始的100个字节内容清零或全部赋值为33H。三实验仪器微机、VW,WAVE6000编程环境软件,(单片机实验箱)仿真器-仿真器设置-Lab6000/Lab6000通用微控制器 MCS51实验 程序框图: 主程序及注释:10-r033h-a33h-4000hDjnz r0 loopResult 拓展A 987654321五 实验注意事项1 文件不要用中文名称保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。2 查看存储器菜单使用:窗口-数据窗口-XDATA 观察存储器内容3 查看SFR:窗口-CPU窗口 查看CPU寄存器SFR4 单步执行:执行-单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。5利用多种执行方法和观察各种窗口调试程序,直至程序满意为止。班级:自动1505 姓名:许振鹏 学号:201523020503单片机实验2 存储块移动一实验目的1 熟悉51汇编语言程序结构。2 熟悉循环结构程序的编写,进一步熟悉指令系统。3 熟悉编程环境和程序的调试。二实验内容将指定源地址(3000H)和长度(10字节)的存储块移动到目的地址(3050H)。三实验仪器微机、WAVE6000软件,(单片机实验箱)四参考程序与流程图:3000R7-AA-3000H3000H-AA-3050HINC R1 R3LOOP RESULT:五 实验注意事项在编程环境中,可以通过软件仿真,单步调试观察程序运行情况。班级:自动1505 姓名:许振鹏 学号:201523020503单片机实验3 数据排序一实验目的1了解数据排序的常用算法,掌握冒泡算法。2 进一步熟悉编程环境和调试方法。3 熟悉汇编程序设计。二实验内容将 50H开始的10个随机数按从小到大的顺序排列。三实验仪器 微机、WAVE6000编程环境四参考程序与流程图:调试:ro=50H,r7=9a=06R2=06R0=51HB=02A,B互换R7-1不为0跳转完成一次内循环,9被放到了最后跳转到外循环SORTResult:Nice try五 实验注意事项由于上电后数据都一样,所以需要手动修改50H后10个数据(要排序的数)方法是:窗口-数据窗口-DATA 找到50H开始的10个2位16进制数,双击,修改其数值班级:自动1505 姓名:许振鹏 学号:201523020503单片机实验4 P1口输入输出实验一实验目的1熟悉P1 口的功能。2熟悉延时子程序或定时中断程序的编写和使用。3初步熟悉单片机软硬件设计方法。二实验内容(两内容分开做)硬件实验需要连接硬件仿真器,连接方式如下:实验箱的 仿真器/仿真器设置:选择仿真器 选择仿真头 选择CPULAB6000/LAB8000通用微控制器 MCS51实验 8031/321P1口做输出口接八只发光二极管,编写程序,使发光二极管循环亮灭。注意:实验箱(LAB6000)的发光二级管LED是高电平点亮,低电平灭。2P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管。编写程序读取开关状态,将此状态在发光二极管上显示出来。三实验仪器微机,WAVE6000/VW编程环境、实验箱四参考程序与流程图主程序: 8 次左移后进入右移:右移完成,再次进入左移,开始循环:内容二:五 实验注意事项当P1口用作输入口时,必须先对它置”1”。编程时应注意P1.0,P1.1作为输入时应先置1,才能正确读入值。班级:自动1505 姓名:许振鹏 学号:201523020503实验五 计数器实验 一实验目的1 熟悉计数器的使用方法。2 熟悉计数器的硬件电路连接。3 熟悉计数器的软件设计。二实验内容硬件实验需要连接硬件仿真器,连接方式如下:菜单: 仿真器/仿真器设置:选择仿真器 选择仿真头 LAB8000/LAB6000通用微控制器 MCS51实验 8031内部定时计数器0,按计数器模式和工作方式2工作,对P3.4(计数器1计数脉冲输入T1)引脚进行计数。脉冲次数的计数数值按二进制数用P1口驱动LED灯显示出来。方案2例程中每计满10次将P2.0位取反,然后重新开始计数,这样的话所以最多可以计数10。自己可以修改计满次数,计算对应的计数初值,相应修改程序。最多256次 ?三实验仪器微机、WAVE8000编程环境,伟福8000实验箱 注意:P3.4接单次脉冲实验连线如图:程序流程图:主程序:调试: 按十二次按钮后:十二次亮灭完成:再次循环:五 实验注意事项P3.4接单次脉冲采用查询计数溢出标志位方式确定计数次数班级:自动1505 姓名:许振鹏 学号:201523020503实验六 外部中断实验一实验目的1 熟悉外部中断的硬件电路,中断技术的基本使用方法。2 熟悉外部中断的软件设计。二实验内容硬件实验需要连接硬件仿真器 ,连接方式如下:菜单: 仿真器/仿真器设置:选择仿真器 选择仿真头 LAB8000/ LAB6000通用微控制器 MCS51实验 利用实验箱上的单脉冲按键和发光二极管,蜂鸣器,实现:用单次脉冲申请中断,在中断服务程序中对输出信号进行翻转(每当输出一个单次脉冲时(产生低电平一个脉冲),发光二极管(L0)亮灭变化一次。参考程序2中并使蜂鸣器响一段时间,修改相关参数使蜂鸣器响的时间频率改变。 参考程序2蜂鸣器是在哪里关闭的?三实验仪器微机、VW, WAVE6000编程环境,实验箱四参考程序与流程图主程序:五 实验注意事项中断服务程序(ISR)关键:1 保护进入中断时的现场,现场是指中断发生时各个寄存器,数据存储区的内容,为了能够继续完成没完成的工作状态,在退出中断之前需恢复现场(还原在中断程序中修改的而在主程序用到的寄存器,存储器的内容)。本例中保护CPU状态寄存器PSW,R0,R1,等的内容。(例程中R2没有被保护,它的值是不是被中断服务程序修改了,可以修改程序看看与保护后的结果的不同)。2中断重入的设置中断相关寄存器的设置:中断寄存器IE,中断触发方式的设置。3中断程序和子程序的区别。中断程序不是程序调用的,中断发生时,开中断情况下,CPU就执行相应中断服务程序,每个中断对应固定的开始地址,每个中断向量8个字节空间。
展开阅读全文