Protues 中AT89C51驱动6个数码管电路.docVIP

  • 24
  • 0
  • 约 6页
  • 2016-12-23 发布于贵州
  • 举报
Protues 中AT89C51驱动6个数码管电路 软件说明 p1:字型控制口; p2:字位控制口; 要显示的内容分别存放在30H,31H,32H单元。先将每个存储单元中要显示的内容(二进制数)转换成2位BCD码,再用查表程序查出2位BCD码分别对应的控制数码管的控制信号,分时送p1,同时分别将对应的位选信号送p2。循环显示3个单元内容。 30H,31H,32H:分别存放欲显示的内容; 40H:转换成BCD码时的暂存单元; 41H:转换成数码管控制信号的暂存单元; 50H:字位控制信号暂存单元; r0:间址显示内容单元; r6:6位数码管是否循环完控制单元;由于显示子程序中每次显示一个存储单元内容,即显示2个数码管内容,故6/2=3,r6中设置循环次数为03H。 r7:循环系数。 图1 主程序流程图 图2 BCD码转换子程序流程图 图3 显示子程序流程图 ;主程序 ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV SP,#60H MOV 30H,#24H MOV 31H,#30H MOV 32H,#0CH LOOP:MOV 50H,#01H MOV R0,#30H MOV R6,#03H MOV R7,#03H LOOP1:MOV A,@R0 LCALL B_D LCALL DIP DJNZ R7,NEXT1 LJ

文档评论(0)

1亿VIP精品文档

相关文档