单片微机原理与接口技术(第2版) 程序附件.docVIP

  • 6
  • 0
  • 约5.34万字
  • 约 55页
  • 2021-11-13 发布于安徽
  • 举报

单片微机原理与接口技术(第2版) 程序附件.doc

程序附件 程序附件1. 第5章【例5.14】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。2 程序附件2. 第7章【例7.3】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 程序附件3. 第8章【例8-3】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8 程序附件4. 第8章【例8-8】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。11 程序附件5. 第9章【例9.12】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。14程序附件6. 第9章【例9.15】程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。17 程序附件7. 第11章电子密码锁程序。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。18 附 1 51单片机指令集 按功能排列速查表。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。35 附 2 C51常用函数附录。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。38 附 3 常用芯片资料。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。42 程序附件1 第5章【例5.14】双字节二进制数转换成BCD码。 设(R2R3)为双字节二进制数,(R4R5R6)为转换完的压缩型BCD码。 十进制数B与一个8位的二进制数的关系可以表示为: 只要依十进制运算法则,将bi(i=7,6,…,1,0)按权相加,就可以得到对应的十进制数B(逐次得到:b7×20;b7×21+b6×20;b7×22+b6×21+b5×20;…)。 DCDTH: CLR A MOV R4,A ;R4清0 MOV R5,A ;R5清0 MOV R6,A ;R6清0 MOV R7,#16 ;计数初值 LOOP: CLR C MOV A,R3 RLC A MOV R3,A ;R3左移一位并送回 MOV A,R2 RLC A MOV R2,A ;R2左移一位并送回 MOV A,R6 ADDC A,R6 DA A MOV R6,A ;(R6)乘2并调整后送回 MOV A,R5 ADDC A,R5 DA A MOV R5,A ;(R5)乘2并调整后送回 MOV A,R4 ADDC A,R4 DA A MOV R4,A ;(R4)乘2并调整后送回 DJNZ R7,LOOP 程序附件2 第7章【例7.3】在某个会场上,专门设置了人员入口和出口,为了安全需要,会场内只允许1000人同时在场。当人数到达1000人时,入口亮红灯,门卫阻止人员进入。 现使用80C51进行设计,统计人数。为了简化程序,暂时不考虑中途有人退场的情况。系统使用定时/计数器0工作,每次进入一人,人员统计的传感器就向T0(P3.4)脚输出一个负脉冲,在仿真中,我们用一个按钮来产生下降沿。门口的红灯由P1.0引脚控制,高电平灯亮。 本系统中,使用定时/计数器0统计外部事件用作计数器,需要选择外部时钟,不需要使用中断;计数值最大为1000,使用方式1和方式0都可以,在此选用方式1。TMOD05H,把人数统计的高8位放在30H,低8位放在31H。 仿真系统图见图7.21。为方便验证,设初值人数为995人,当人数达到1000人,数码管轮流显示数字和英文HOLD,并且红灯亮。在系统中还另外加了一个按钮输入负脉冲到外部中断0输入引脚,这个按钮是用来清零的,使数码管显示人数为0

文档评论(0)

1亿VIP精品文档

相关文档