24xx.asm

来自「基于51单片机的交通灯控制系统 IDE:Keil uVision2」· 汇编 代码 · 共 86 行

ASM
86
字号
;这是将0600H地址中以下的8个数据写到24C02的01H为首址单元中去的汇编程序
SCL BIT P3.4;定义24C02的串行时钟线 
SDA BIT P3.5;定义24C02的串行数据线


     ORG 0000H
     LJMP START


       ORG 0030H          
 START:LCALL STAR;调用
       MOV R2,#08H;一个数据有8位
       MOV DPTR,#0600H;定义源数据的位置
  LOOP:MOV A,#00H
       MOVC A,@A+DPTR
       LCALL SDATA
       LCALL ACK
       JC LOOP
       INC DPTR
       DJNZ R2,LOOP

       LCALL STOP;调用停止子程序

  STAR:SETB SDA
       SETB SCL
NOP
NOP
NOP
NOP
CLR SDA
NOP
NOP
NOP
NOP
CLR SCL
RET
SDATA:MOV R0,#08H
LOOP0:RLC A
MOV SDA,C
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
CLR SCL
DJNZ R0,LOOP0
RET
ACK:SETB SDA
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
MOV C,SDA
CLR SCL
RET
STOP:CLR SDA
NOP
NOP
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
SETB SDA
NOP
NOP
NOP
NOP
RET
ORG 0600H
DB 0A0H,10H,01H,02H,03H,04H,05H,06H
END






⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?