情境一.2电子显示屏的设计.pptVIP

  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电子显示屏的设计

例如: ORG 4000H TAB: DB 73H,45,“A”,“2” TAB1:DB 101B 以上指令经汇编后,将对4000H开始的若干内存单元赋值。 (4000H)=73H,(4001H):2DH(注:45的16进制数), 5.6 定义字伪指令DW(Define Word) 格式:DW 16位二进制数表 功能:从指定的地址单元开始,定义 若干个16位数据。 格式:字符名称 BIT 位地址 5.7定义位地址伪指令BIT 功能:将位地址赋予所规定的字符名称。 AQ BIT P0.0 DEF BIT 30H 把P0.0的位地址赋给字符AQ,把位地址30H赋给字符DEF。在其后的编程中,AQ可作P0.0使用,DEF可作位地址30H使用。 6.1 要求: 占用存储空间少;运行时间短; 程序的编制、调试及排错所需时间短;结构清晰,易读、易于移植 6 程序设计方法和技巧 6.2 程序设计的一般步骤 (1) 分析工作任务,明确要达到的工作目的、技术指标等。 (2) 确定解决问题的算法。算法就是如何将实际问题转化成程序模块来处理,要对不同的算法进行分析、比较,找出最适宜的算法。 (3) 画程序流程图。其图形的符号规定均与高级语言流程图相同,如桶形框表示程序的开始或结束,矩形框表示需要进行的工作,菱形框表示需要判断的事情,指向线表示程序的流向等。 (4) 分配内存工作单元,确定程序与数据的存放地址。 (5) 编写源程序。 (6) 上机调试、修改源程序。 6.3 程序设计的一般技巧 尽量采用循环结构和子程序结构。这样可以使程序的总容量大大减少,提高程序的效率,节省内存。 尽量少用无条件转移指令。这样可以使程序条理更加清楚,从而减少错误。 对于通用的子程序,除了用于存放子程序入口参数的寄存器外,子程序中用到的其他寄存器的内容应压入堆栈,即保护现场。一般不必把标志寄存器压入堆栈。 在中断处理程序中,除了要保护中断处理程序中用到的寄存器外,还要保护标志寄存器。 用累加器传递入口参数或返回参数比较方便,在子程序中,一般不必把累加器内容压入堆栈。 汇编语言常用延时程序所用到的指令 指令 占用机器周期数 MOV Rn,#Data 1 DJNZ Rn,rel 2 RET 2 NOP 1 7 延时程序 基本延时模式及延时时间的计算: 单循环延时程序 MOV R0,#X ;1个机器周期 D1: DJNZ R0,D1 ; 2个机器周期 RET ; 2个机器周期 单延时时间:=2*X*T+1*T+2*T=(2*X+3)*T 假定晶振12MHZ时,当X =0时循环256次,最长延时515μs 当X=1时循环1次,最短延时5μs 双重循环延时程序 MOV R1,#Y ; 1个机器周期 D1: MOV R0,#X ; 1个机器周期 D2: DJNZ R0,D2 ; 2个机器周期 DJNZ R1,D1 ; 2个机器周期 RET ; 2个机器周期 双重循环延时时=(2*X+1+2)*Y*T+1*T+2*T=(2*X*Y+3*Y+3)*T 假定晶振12MHZ时,最长延时131843μs 最短延时8μs 三重循环延时程序 MOV R2,#Z ; 1个机器周期 D1: MOV R1,#Y ; 1个机器周期 D2: MOV R0,#X ; 1个机器周期 D3: DJNZ R0,D3 ; 2个机器周期 DJNZ R1,D2 ; 2个机器周期 DJNZ R2,D1 ; 2个机器周期 RET ; 2个机器周期 三重循环延时时间:=[(2*X+1+2)*Y+1+2]*Z*T+1*T+2*T=(2*X*Y*Z+3*Y*Z+3*Z+3)*T 假定晶振12MHZ时,最长延s 最短延时11μs 1、设计硬件连接图 项目实施 将单片机的P1.7端口与发光二极管的阳极相连,二极管的阴极接地。 当P1.7=1时,发光二极管点亮;当P1.7=0时,发光二极管灭。 通过延时程序实现二极管持续点亮1S。 2、编写延时程序 1s延时程序   MOV R2,#8 D1: MOV R1

文档评论(0)

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

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

1亿VIP精品文档

相关文档