访问电脑版页面

导航:老古开发网手机版其他

at89c2051串口带校验输入指令最高数率并行输出数据.

导读:
关键字:

;;;串口带校验;;;

;;at89c2051串口带校验最高数率并行输出数据;;

ORG 0000H
AJMP MAIN
ORG 0003H
AJMP EX00
RETI
ORG 000BH
RETI
ORG 0013H
AJMP EX11
RETI
ORG 001BH
RETI
ORG 0023H
CLR TI
JBC RI,ES1
RETI
ES1:
AJMP ESRD
ORG 0030H
MAIN:
MOV SP,#10H
MOV TMOD,#21H
;;MOV TH1,#0EFH;;;16MHZ/2450BANDU/S
MOV TH1,#0F3H;;;12MHA/2400BANDU/S
MOV TCON,#55H
MOV SCON,#50H
MOV IE,#94H


MOV R2,#00H;;输出到锁存器的数据;;;
MOV 2AH,#00H;;总标志位;;

CLR P3.2;;;锁存的初始脚;;
SETB P3.5;;;进入锁存状态时刻的指示;;
MOV 30H,#00H;;;;进入中断次数,,初始为00;;
MOV 2DH,#00H
   ACALL CODENUMB;;;本机序号;;;
 MOV 40H,#12H
 
 LOOPMAIN:;;;;;;;;;;;
 JNB 50H,LOOP
 MOV R0,#3EH
 MOV A,@R0
 CJNE A,#0FFH,JB1
 SJMP LOOP
 
 JB1:MOV A,@R0;;;;执行在这
 MOV R2,A 
  
 MOV A,@R0
 CJNE A,#0FFH,JB2
 SJMP LOOP
 
 JB2:;;;执行在这
 MOV R0,#3FH
 CLR 50H
 LOOP:
 MOV R1,#20
 LOOP1:
 INC 70H
 CPL P3.7
 ACALL DELAY
 DJNZ R1,LOOP1
    NOP
 MOV PCON,#01H
 AJMP LOOPMAIN;;;;;;;;;;;;;;;;;;;;;;;
 


 EX11:
 CLR EA
 CLR EX1
 INC R2
 MOV P1,R2
 SETB P3.2
 CLR P3.2
 CPL P3.5
    MOV SBUF,R2
 JNB TI,$
 INC 30H
 SETB EX1
 SETB EA
 RETI
 
  
  EX00:
  RETI
     
  

  ESRD:
  CLR ES
  MOV R0,#3FH
  MOV R3,#0H;;;;CS
  RD1:
  JNB RI,$
  MOV @R0,SBUF
  CJNE @R0,#0FEH,RD2
  CLR RI
  SJMP RD1
  RD2:
  MOV @R0,SBUF
  MOV R6,SBUF
  MOV A,R3
  ADD A,@R0
  MOV R3,A
  CLR RI
  INC R6
  DEC R0
  RD3:
  JNB RI,$  
  MOV @R0,SBUF
  MOV A,R3
  ADD A,@R0
  MOV R3,A
  DEC R0
  CLR RI
  DJNZ R6,RD3
 
  
    INC R0 
   
    MOV A,@R0
    ADD A,@R0
  CJNE A,3,ERR1
       
  SETB 50H
  MOV SBUF,#43H
  NOP
  JNB TI,$
  NOP
  SJMP ES2
  ERR1:
  MOV R0,#3FH
  ES3:MOV @R0,#0FFH
   DEC R0
   CJNE R0,#31H,ES3
  MOV R0,#3FH
  NOP
  
  ES2:
  SETB ES
  RETI
 
  CODENUMB:
  CLR ES
  MOV SBUF,#0FEH
  NOP
  JNB TI,$ 
  CLR TI
  NOP
  MOV SBUF,#06H;;CCL
  NOP
  JNB TI,$ 
  CLR TI
  NOP
  MOV SBUF,#01H;;MATCHINE CODE
  NOP
  JNB TI,$ 
  CLR TI
  NOP 

  NOP
  MOV SBUF,#00H
   NOP
  JNB TI,$ 
  CLR TI
  NOP

  NOP
  MOV SBUF,#00H
  NOP
  JNB TI,$ 
  CLR TI
  NOP 

  NOP
  MOV SBUF,#00H
  NOP
  JNB TI,$ 
  CLR TI
  NOP 
  
  NOP
  MOV SBUF,#00H
   NOP
  JNB TI,$ 
  CLR TI
  NOP

  NOP
  MOV SBUF,#00H
  NOP
  JNB TI,$ 
  CLR TI
  NOP 
 
  NOP
  MOV SBUF,#07H;;;CS
  NOP
  JNB TI,$ 
  CLR TI
  NOP 
  SETB ES
 RET

 DELAY:
 MOV R5,#200
 DD1:MOV R4,#20
 DJNZ R4,$
 DJNZ R5,DD1
 RET
END

来源:   作者:  2006/9/25 16:50:53
栏目: [ ]

相关阅读

安森美推出新的高功率图腾柱PFC控制器,满足具挑战的能效标准

动态功耗低至60μA/MHz!助力设备超长续航,首选国民技术低功耗MCU!