⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 at89c51与p89c52点对点通讯发送.asm

📁 AT89C51与P89C52点对点单片机之间通信的发送和解手程序
💻 ASM
字号:
/************************************
**程序说明:发送程序是AT89C51芯片
**发送00H到1FH数据无误,后来就出现错误
**发送机采取发送机采取中断模式。只要接
**收到请求信号,就将00H到7FH数据依次发
**出去,后来在DP-51实验板上,跟实验电脑
**用串口调试窗实验,结果实现实验程序能
**预期的目的
*************************************/
       ORG 0000H 
       LJMP MAIN
       ORG 0023H
       LJMP DUAN
       ORG 0100H
MAIN:  MOV TMOD,#20H   /*定时器T1工作于模式2*/
       MOV TH1,#0FDH   /*波特率9.6K*/
       MOV TL1,#0FDH   /**/
       SETB TR1
       SETB EA
       SETB ES
       MOV PCON,#00H   
       MOV SCON,#50H   /*通信模式为1*/
CCC:   MOV R6,#00H
       MOV R7,#80H
       AJMP $
DUAN:  JBC RI,PAN      /*判断接收位,为1转PAN*/
       CPL  P1.2
       SJMP ENDT
PAN:   MOV  A,SBUF     /*取SBUF模式*/
       CLR  C          /*清零借位标志位*/
       SUBB A,#01H     /*减01H*/
       JC   XUN1       /*接收到的是零,发送,调用XUN1*/
       SJMP ENDT
XUN1:  MOV  A,R6       /*取R6*/
       MOV SBUF,A      /*将A的数据放入SBUF*/
WAIT:  JBC  TI,FA      /*判断发送完没有*/
       AJMP WAIT      
FA:    INC  R6         /*R6加一*/
       CPL  P1.5
       DJNZ R7,ENDT    /*一轮发送完没有*/
       LCALL CCC       /*一轮发送完后,重新开始*/
ENDT:  RETI

TAB:   DB  00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,0AH,0BH,0CH,0DH,0EH,0FH
       DB  10H,11H,12H,13H,14H,15H,16H,17H,18H,19H,1AH,1BH,1CH,1DH,1EH,1FH
       DB  20H,21H,22H,23H,24H,25H,26H,27H,28H,29H,2AH,2BH,2CH,2DH,2EH,2FH
       DB  30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,3AH,3BH,3CH,3DH,3EH,3FH
       DB  40H,41H,42H,43H,44H,45H,46H,47H,48H,49H,4AH,4BH,4CH,4DH,4EH,4FH
       DB  50H,51H,52H,53H,54H,55H,56H,57H,58H,59H,5AH,5BH,5CH,5DH,5EH,5FH
       DB  60H,61H,62H,63H,64H,65H,66H,66H,68H,69H,6AH,6BH,6CH,6DH,6EH,6FH
       DB  70H,71H,72H,73H,74H,75H,76H,77H,78H,79H,7AH,7BH,7CH,7DH,7EH,7FH
END          

⌨️ 快捷键说明

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