1 / 65
文档名称:

单片机开发环境的熟悉.ppt

格式:ppt   大小:7,074KB   页数:65页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机开发环境的熟悉.ppt

上传人:PAN 2020/10/28 文件大小:6.91 MB

下载得到文件列表

单片机开发环境的熟悉.ppt

相关文档

文档介绍

文档介绍:实验一、单片机开发环境的熟悉【实验目的】1、熟悉MCS-51单片机开发环境2、熟悉单片机的开发环境,掌握简单程序的编辑与调试方法以及单片机程序固化的操作技术。【实验设备】AT89C51单片机一片WH-500AP编程器一个单片机最小系统实验板一块计算机一台【实验内容】编写一个简单的流水灯程序【实验步骤】1、编写好流水灯源程序。2、将程序录入计算机,保存为文件,文件名为:**asm利用汇编程序对水*,asm进行汇编,调试。生成**hex目标文件、运行编程器软件打开生成的**hex,将目标文件固化到AT89C51单片机的ROM中。将单片机置入单片机最小系统实验板,脱机运行,检验运行结果6、如有问题,重新打开*asm源程序进行修改,重做2、3、4、5、6,直到运行正常【0000HMAIN:MOVP0.#42H实验二、模拟简单十字路口交通信号灯【实验目的】掌握单片机硬件图的认识方法,学会判断有效电平2、熟悉单片机各端口驱动电路的接法3、掌握简单的数据传送程序、子程序的调用、利用工作寄存器作计数器,设计的延时程序时间的计算方法以及单片机端口的规划的方法4、掌握多次调用子程序的方法5、掌握单片机程序写入的具体操作步骤。【实验内容】1、单片机实验板硬件图的认识。2、编制一程序,利用实验板上的LED发光二极管,模拟“十字路口的交通灯。【实验要求】在两条主干道相交构成的十字路口,如A线为南北向,B线为东西向,A线为禁止线时,B线为放行线,以定时时限为依据,使A、B线交替的成为放行线和禁止线。定时规定如下放行线:绿灯亮25秒,变为黄灯警告5秒,然后变为红灯,放行线变为禁止线。禁止线:红灯亮30秒,直接变为绿灯,禁止线成为放行线。利用单片机P0口的8只发光二极管模拟交通灯,信号灯规划如下:【解决思路】【实验步骤】参见实验【参考程序】:MOVRO.#19HMAI0:MOVPO#ODDH;A绿灯,B红灯ACALLDELADJNZRO,MAIOMOVRO#5HMAIl:MOVPO#ODBHA黄灯,B红灯ACALLDELADJNZRO,MAIlMOVRO.#19HMAI2:MOVPO,#OBEH;A红灯,B绿灯ACALLDELADJNZRO,MAI2MOVRO#5HMAl3MOVPO#7EH;A红灯,B黄灯ACALLDELADJNZRO,MAI3MOVRO#19HAJMPMAINDELA:MOVR1.#249延时1秒DELO:MOVR2,#200DEL1:MOVR3.#10DEL2:DJNZR3,DEL2DJNZR2,DELIDJNZRIDELORET【实验结论】(实验现象1)信号灯的变化规律为:程序运行正常,且与设计要求一致,实验成功!(实验现象2)信号灯无任何变化:原因:程序有问题。(实验现象3)或变化紊乱,无规律:原因:程序结构有问题,循环有问题。(实验现象4)应该亮的信号灯没有亮,不该亮的亮了:电平搞反了!(实验现象5)【改正方法】一、实验中常见的错误1、程序中指令书写错误。如:DJNZ写为DJNE系统提示:Invalidinstruction、没有定义标号而在程序中使用该标号系统提示:Undefined:DELAY3、指令中所使用的数据过大或不正确,与另一操作数不匹配系统提示:Invalidoperand:3OH4、指令中的数据没有加#号,系统把数据认作是RAM的地址而造成程序执行错误,这种错误系统没有提示定义的标号前或后有空格或标号后没有号,而在引用标号时又没有空格,造成系统提示没有定义标号系统提示:Undefined:DELAY程序中有寄存器不当的重复使用,造成数据在其他程序段中被修改,而影响本段程序的执行,造成程序执行错误,这种错误系统页不予提示。7、指令的注释前没有加“;”系统提示:Invaliddata:loop或提示其他错误。指令中应该有“,”的地方使空白如:MOVA#30H系统提示:Invalidoperand:A、重复定义标号。系统提示:Multi-defined:DELAY10、使用了指令系统中没有的指令,或指令的寻址方式不正s:CJNE30H,#00H,LOOP1系统提示:Syntaxerror11、逻辑错误,这种错误系统一般没有提示,但程序无法执行,或执行结果错误12、程序的起始地址超过了实际使用的单片机的内部ROM区域,系统也没有任何提示,造成程序无法正确固化到单片机中(单片机中没有任何程序),造成无结果13、伪指令,之间的范围又太小,造成后面的指令代码将前面的指令代码覆盖,此中错误系统也没有提示,程序无法执行或结果错误程序中的指令没有任何错误,程序也没有任何功能,只是一些正确指令的简单列举,程序也没有任何结果