实验二单片机最小系统及流水灯电路.docVIP

  • 87
  • 0
  • 约2.08千字
  • 约 5页
  • 2016-11-23 发布于重庆
  • 举报

实验二单片机最小系统及流水灯电路.doc

实验二单片机最小系统及流水灯电路

实验 单片机最小系统及流水灯电路 一、 实验目的1.通过测量单片机最小系统参数,掌握单片机系统工作条件。 2.测绘单片机流水灯电路,掌握51单片机汇编语言程序的编辑、调试、编译的一般过程和基本操作步骤。 3.掌握单片机程序烧录基本步骤和方法,掌握单片机系统的开发过程。 图1 单片机P0口结构 P0口内部没有上拉电阻,一般必须加上拉电阻。接发光二极管时,应该使用低电平点亮发光二极管(即采用灌电流),发光二极管和限流电阻起到上拉电阻的作用,在这种情况下,可以不接上拉电阻。实验电路如图所示。 图 流水灯电路 图3 流水灯电路软件流程图 三、实验设备和软件 单片机实验开发板、计算机、Protues软件、万用表、示波器。 四、实验内容与步骤”创建软件代码文件以“流水灯.ASM”文件保存。 (3)将编制的流水灯汇编程序输入编辑器中。输入程序时注意程序格以及“0”和“O”的区别(初学者经常出现的错误)。在完成输入程序后对程序进行编译“Buidle All”。生成“流水灯.HEX”文件。 注意:编译成功只说明程序语法正确,不明程序功能已经达到了设计目标。仿真调试需要重点查看的对象是:Code区程序代码存储区间、PC值及其变化量、指令周期长度、P1口输出值、工作寄存器和及其它有关的SFR之值。通过它们分别可以看到程序段的存储空间、指令的存储地址和字长、指令的执行时间长度、有关指令和程序段的运行结果等等,这些都是调试者评估程序段功能、修改和完善程序代码的基本依据。 3.烧录程序和硬件运行 YZ200实验板单片机烧入程序的方法有两种,一种是本实验板的专用方法JRISP(采用ISP接口),一种是采用STC-ISP软件(采用RS232口),在此我们采用ISP接口。 (1)用ISP下载线将单片机实验板与计算机USB口连接在一起。 (2)利用JRISP软件,将“流水灯.HEX”文件烧入单片机中。 如果电路上电后不能运行则需要检查单片机的基本工作条件是否正常;如果只是运行现象不符合设计目标,则需要分析现象进而修改程序代码,重复上述编译、仿真调试、烧写和试运行的过程。如此反复调试,直至成功为止。参考程序1 ORG 0000H ;程序开始地址 MAIN: MOV A,#0FEH ;初值 1111 1110 送P0口,低电平点亮LED LOOP: MOV P0,A 6 LCALL DEL 7 DJNZ R5, LOOP1 8 RL A ;循环左移一次 LJMP LOOP 10 DEL: MOV R0,#20 ;循环20次 DL3: MOV R2,#50 ;循环100次 DL2: MOV R3,#250 ;循环250次 1 DEL1: DJNZ R3,DEL1 ;此指令2us,循环250次:2*250=500us 1 DJNZ R2,DL2 ;50*500us=25ms 15 DJNZ R0, DL3 ;25ms*40=1s 16 RET ;子程序返回 17 END ;程序结束 深入实问题 在参考程序中,单片机使用12MHz晶体,每一个LED点亮时间为1s。下问题,流水灯每次点亮2个LED,初值为多少? 每次点亮两个,每次跳两个LED,程序如何修改? 将延时程序修改为600ms,程序如何修改如果单片机石英晶体从12MHz改为6MHz,流水灯移动速度仍为1s,程序如何修改LED连接到P2口,其它功能不变,程序如何修改? 子程序返回后,单片机执行哪条指令?问题 参数修改 问题1 累加器A初值为: 问题2 程序需要修改:  问题3 修改指令: 问题4 修改指令: 问题5 修改指令: 问题6 执行指令: 伪指令有无机器码?不要伪指令END会产生什么问题?将伪指令ORG 0H改为ORG H会产生什么问题? 图4 发光二极管电路接地接法 4.如果程序烧录后,程序不能正常运行,应

文档评论(0)

1亿VIP精品文档

相关文档