收藏 分销(赏)

单片机芯片.doc

上传人:s4****5z 文档编号:8073504 上传时间:2025-02-03 格式:DOC 页数:8 大小:289.50KB 下载积分:10 金币
下载 相关 举报
单片机芯片.doc_第1页
第1页 / 共8页
单片机芯片.doc_第2页
第2页 / 共8页


点击查看更多>>
资源描述
行列式键盘接口: 行列式键盘接口程序: ORG 0000H AJMP 0030H ORG 0003H LJMP SERVE ORG 001BH RETI ORG 0030H MAIN:MOV P1,#0FFH   ;接收线置1 MOV P2,#0        ;扫描线置0 SETB EA      ;开中断 SETB IT0      ;置INT0边沿触发 SETB EX0      ;开INT0的中断 ……. ;测试子程序 SCAN:MOV R7,#0;计数单元清0 JB 20H.0,ONE;测试20H单元位(1号线) INC R7;1号线为0,计数单元加1 MOV R6,#1 ;存线号1 ONE:JB 20H.1,TWO ;测试20H单元位(2号线) INC R7 ;2号线为0,计数单元加1 MOV R6,#2 ;存线号2 TWO:JB 20H.2,THREE INC R7 MOV R6,#3 THREE:JB 20H.3,FOUR INC R7 MOV R6,#4 FOUR:JB 20H.4,FIVE INC R7 MOV R6,#5 FIVE:JB 20H.5,SIX INC R7 MOV R6,#6 SIX:JB 20H.6,SEVEN INC R7 MOV R6,#7 SEVEN:JB 20H.7,EIGHT INC R7 MOV R6,#8 EIGHT:RET ;延时子程序(晶振12MHZ,定时20ms) DELAY:MOV TMOD,#10H  ;设置T1为方式1定时 MOV TL1,#0E0H;B1E0H取反加1=0100 1110 0001 1111+1=4E20H MOV TH1,#0B1H;16384+3584+31=19999=20000us=20ms SETB ET1      ;开T1中断 SETB PT1      ;置T1中断为高优先级 SETB TR1      ;启动T1定时 ORL PCON,#1    ;启动空闲方式 CLR TR1 CLR PT1 CLR ET1 RET ;按键所引起的中断服务程序: SERVE:LCALL DELAY  ;延时去抖动 MOV 20H,P1   ;读接收线 LCALL SCAN   ;调用测试子程序 DJNZ R7,REJ   ;多键按下,不作处理 MOV 31H,R6   ;单键按下,接收线号送31H单元 MOV P2,#0FFH  ;扫描线写1 MOV P1,#0    ;接收线写0 MOV 20H,P2   ;读扫描线 LCALL SCAN   ;调测试子程序 DJNZ R7,REJ   ;多键按下,不作处理 XCH A,R6    ;单键按下,扫描线号送A SWAP A      ;扫描线号移到高4位 ORL 31H,A    ;求得按键特征值 XCH A,R6; MOV P1,#0FFH  ;接收线复位 MOV P2,#0    ;扫描线复位 REJ:JNB P3.2,$    ;等待按键释放(INT0引脚置1) LCALL DELAY   ;延时去抖动 CLR IE0      ;清中断标志位 RETI 7211(A)真值表 DS1 DS2 CS1 CS2 功能 0 0 0 0 数据存储在D4 0 1 0 0 数据存储在D3 1 0 0 0 数据存储在D2 1 1 0 0 数据存储在D1 X X 其他 未选中 LCD7211子程序: LCD:MOV DPTR,#8000H;置8255PA口地址 MOV R0,#20H;显示数据缓冲区首地址送R0 MOV R1,#04H;设置7211(2)的位数 MOV R2,#07H;设置D1显示特征 LP1:MOV A,#0FFH;禁止7211操作 MOVX @DPTR,A; MOV A,R2;形成Di显示字高位 SWAP A;A=70H ORL A,@R0;A或﹝﹝R0﹞﹞送A MOVX @DPTR,A;送Di显示字 DEC R2; INC R0; DJNZ R1,LP1; MOV R1,#04H;设置7211(1)的位数 MOV R2,#0BH;设置D4显示特征 LP2: MOV A,#0FFH;禁止7211操作 MOVX @DPTR,A; MOV A,R2; SWAP A; ORL A,@R0; MOVX @DPTR,A; DEC R2; INC R0; DJNZ R1,LP2; RET Centronics 并行接口标准。 Centronics标准定义了36芯插头座,其中数据线8根,控制输入线4根,状态输出线5根,+5V电源线l根,地线15根,另有3根空闲。 采用8255实现单片机与uP打印机接口: ORG 0000H LJMP MAIN ORG 0013H LJMP INTS MAIN:MOV R0,#7FH  ;控制口地址 MOV A,#0A0H  ;工作方式控制字(A口方式1输出) MOV @R0,A   ;控制字写入8255 MOV R1,#20H  ;打印数据缓冲区首地址 MOV R2,#10H  ;待打印字符数 MOV E1,84H   ;允许INT1中断,EA=1,EX1=1 INTS:MOV R0,#7CH  ;8255A口地址 MOV A,@R1   ;打印数据送A MOVX @R0,A   ;打印数据送8255A口 INC R1     ;修改字符地址 DJNZ LAST   ;待打印字符数未传送完转LAST MOV EI,#00H  ;待打印字符数传送完后禁止中断 LAST:RETI;     ;中断返回 8
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服