应用举例1 MOV P1. #OFEH: 11111110B P1.0 可以使P1.0上的发光二极管点亮 MOV PI.#OFOH: 11110000B P12 可以使P口上的上面4个发光二5y P13 极管点亮 P14 P1.5 P1.6 P1.7
应用举例1 MOV P1, #0FEH ; 11111110B 可以使P1.0上的发光二极管点亮 MOV P1, #0F0H ; 11110000B 可以使P1口上的上面4个发光二 极管点亮 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 5v
8段数码管显示 P1.0 br 4+ P1.1 P1.2 P1.3 P14 P1.5 MOVP1,#00H;显示8 P1.6 MOVP1,#0F8H;显示7 P1.7 MOVP1,#88H;显示A
8段数码管显示 P1.0 a P1.1 b P1.2 c P1.3 d P1.4 e P1.5 f P1.6 g P1.7 dp 5v MOV P1, #00H ; 显示 8. MOV P1, #0F8H ; 显示 7 MOV P1, #88H ; 显示A
应用举例2 个引脚的高低电平,可以通过“光电耦合器”控制 继电器,从而以“弱电”控制“强电”。 220V P10
应用举例2 一个引脚的高低电平,可以通过“光电耦合器”控制 继电器,从而以“弱电”控制“强电
3.2指令系统 指令位操作 1.16位数据传输指令 MOV DPTR. #data16: DPTR++ data16 DPTR--数据指针,为SFR中(DPH)、(DPL) MOV DPTR. #2010H 相当于: MOV DPH2#20H MOV DPL. #1OH
3.2 指令系统 一、数据传送指令位操作 1. 16位数据传输指令 MOV DPTR, #data16; DPTR←#data16 DPTR----数据指针,为SFR中(DPH)、(DPL) MOV DPTR, #2010H 相当于:MOV DPH, #20H MOV DPL, #10H
2、堆栈操作指令 进栈指令 PUSH direct 如:(SP)=60H,(A)=30H、(B)=70H时,执行 PUSH ACC :(SP)+1=61H-SP, (A)61H (SP+3) PUSH B :(SP)+1-62H-SP (B)-62H(SP+2) 结果:(61H=30H,(62H)=70H,(SP)=62H (SP+ 退栈指令 POP direct SP) 如:(SP)=62H,(62H)=70H(61H)=30H时,执行 POP DPH;((SP)→DPH,(SP)-1=6H→SP POP DPHL;(SP)→DPL,(SP)-1=60H→SP 结果:(DPTR)=7030H,(SP)=60H 堆栈的存储原则:先进后出
2、堆栈操作指令 进栈指令 PUSH direct 如: (SP)=60H, (A)=30H ,(B)=70H 时,执行 PUSH Acc ;(SP)+1=61H→SP, (A) → 61H PUSH B ;(SP)+1=62H→SP, (B) → 62H 结果: (61H)=30H, (62H)=70H, (SP)=62H 退栈指令 POP direct 如: (SP)=62H, (62H)=70H ,(61H)=30H 时,执行 POP DPH ;((SP)) →DPH, (SP)-1=61H→SP POP DPHL ;((SP)) →DPL, (SP)-1=60H→SP 结果: (DPTR)=7030H, (SP)=60H 堆栈的存储原则:先进后出 (SP) (SP+1) (SP+2) (SP+3)