实验2单片机仿真软件protues的使用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验2单片机仿真软件protues的使用

实验二:⑴单片机仿真软件protues的使用 ⑵I/O口简单流水灯实验 实验目的 通过学习专业仿真软件protues,使学生理解和掌握protues窗口菜单和工具条的使用、元件的查找和调用、电源符号的调用、电路连线技巧、元件参数修改、单片机程序的加载以及系统的仿真运行等。 初步掌握MCS-51单片机的电路设计原理和方法,加深对单片机应用系统中软件、硬件相结合的认识和理解。 理解和掌握指令的含义和使用,进一步提高编程的技巧和水平。 实验仪器、材料 微型计算机(PⅣ以上) 编程、汇编与模拟平台软件Keil uVision3 电子技术专业仿真软件protues运行平台 实验内容 学习电子技术专业仿真软件protues的使用方法和技巧; 针对AT89C51单片机进行最小系统电路设计,有目的的进行简单外围电路设计; 借助Keil程序设计与汇编平台,结合课本实例,完成针对硬件电路的程序设计、汇编; 在仿真软件protues中的硬件电路中,运行汇编后的单片机程序,观察软件的运行过程; 修改程序-仿真运行-再修改程序-再仿真运行…。 实验步骤与实验结果: 仿真软件protues的简单使用操作 在桌面的“开始”程序菜单中,在桌面上选择【开始】→【程序】→“Proteus 7 Professional”,打开设计界面。 用鼠标左键单击界面左侧预览窗口下面的“P”按钮,弹出“Pick Devices” 元件拾取 对话框。 通过按类别查找和拾取元件或直接查找和拾取元件,把元件从元件拾取对话框中拾取到图形编辑界面的对象选择器中。单片机、晶振、电阻、电容、发光二极管等 把相应元件从对象选择器中放置到图形编辑区中,调整元件摆放位置和放置方向,进行电路连接,编辑修改元件参数,完成电路设计。 在资料盘上建立一个单独的文件夹,并进行取名存盘。 借助Keil程序设计与汇编平台,结合课本实例,完成针对硬件电路的程序设计、汇编,注意汇编后产生的“.HEX”文件的存储路径。 在protues系统中,加载单片机软件,观察程序运行效果。 “修改程序-仿真运行-再修改程序-再仿真运行;” 汇编语言源程序设计 已知,P1口中可以有高电平“1”,有低电平“0”,“1”和“0”的位置和多少可以任意组合,实现不带Cy或带Cy的左循环、右循环、从中心分散循环、从两端到中心循环、高4位和低4交换位等流水灯显示。电路设计上实现发光二极管可高电平点亮或低电平点亮,观察软硬件的运行特点。 ORG 0000H MOV A,#80H LOOP1:MOV P1,A ACALL Delay1s RR A SJMP LOOP1 Delay1s:MOV R6,#04H //延时1S子程序 Delay1:MOV R7,#0FFH Delay2:MOV R2,#0FFH Delay3:DJNZ R2,Delay3 DJNZ R7,Delay2 DJNZ R6,Delay1 RET END 试设计16位二进制加法计数器和减法计数器,用P0和P1口接16位发光数码管进行模拟显示,完成程序设计并在Keil平台进行调试模拟,观察运行特点。 ORG 0000H MOV A,#00H ;减法用MOV A,#0FFH MOV R0,#00H ;减法用MOV R0,#0FFH CLR C LOOP1:MOV P1,A MOV P1,R0 ACALL Delay1s INC A ;减法用DEC A JNC LOOP1 INC R0 ;减法用DEC R0 CLR C SJMP LOOP1 Delay1s:MOV R6,#04H //延时1S子程序 Delay1:MOV R7,#0FFH Delay2:MOV R2,#0FFH Delay3:DJNZ R2,Delay3 DJNZ R7,Delay2 DJNZ R6,Delay1 RET END 【例4.13】已知R0低4位有一个十六进制数(0~F中的一个),请编写他的转换成相应的ASCLL码并送入R0的程序。 解: 1 计算求解1:由ASCLL码字符表可知0~9的ASCLL码为30H~39H,A~F的ASCLL为41H~46H.因此,计算求解的思路是:若R0 9,则R0内容只需加30H,若R0 9,则R0需加37H。相应程序为: ORG 0400H MOV A,R0 ;取转换值到A ANL A,#0FH ;屏蔽高4位 CJNE A,#10,NEXT1 ;A和10比较 NEXT1: JNC NEXT2 ;若A 9,则转NEXT2 ADD A,#30H ;若A 10,则A←A+30H SJMP DONE ;转DONE NEXT2: ADD A,#37H ;A←A+37H DONE: MOV R0,A ;存结果 SJMP $ EN

文档评论(0)

kaiss + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档