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

📄 sbufes.asm

📁 单片机学习 汇编实例!为菜鸟提供入门单片机汇编编程秘籍!
💻 ASM
字号:
;==================================================================
;                         串口测试程序
;            程序设计:程敬峰    最后修改日期:2005,10,26
;            朗腾电子科技开发公司  http://www.natiem.com
;本程序只作开发试验之用途,没有版权,可随意修改和传播,如有特殊要求
;可与我们联系,或可作有偿开发。
;==================================================================

	  ORG    0000H   ;主程序入口地址
	  JMP    MAIN
          ORG    0023H   ;串行中断入口
          JMP    RSBUF   ;串行中断

MAIN:     MOV    TMOD,#20H   ;设置定时器T1为2模式
          MOV    SCON,#50H   ;串口方式3,9位异步,设置允许接收
          MOV    IE,#10010010B   ;启用总中断和串行中断,定时器/计数器0中断		
          MOV    TH1,#0FDH   ;晶振:F=11.0592M,设置波特率为:B=9600
          SETB   TR1   ;开启定时器1
          MOV    30H,#0
          MOV    31H,#0
          MOV    32H,#0
          MOV    33H,#0
AAA:      ACALL  DISPLAY
          JMP    AAA

RSBUF:    JNB    RI,OUT
          CLR    RI
          MOV    A,SBUF
          CJNE   A,#7AH,BB0
AA0:      JNB    RI,AA0
          CLR    RI
          MOV    A,SBUF
          MOV    30H,A
AA1:      JNB    RI,AA1  ;串口是否有信号输入
          CLR    RI
          MOV    A,SBUF
          MOV    31H,A
          SJMP   OUT
BB0:      CJNE   A,#7BH,OUT
BB1:      JNB    RI,BB1
          CLR    RI
          MOV    A,SBUF
          MOV    32H,A
BB2:      JNB    RI,BB2  ;串口是否有信号输入
          CLR    RI
          MOV    A,SBUF
          MOV    33H,A
          MOV    A,32H
          MOV    B,33H
          ADD    A,B
          CPL    A
          MOV    P1,A
OUT:      RETI

;**********************显示子程序********************** 
DISPLAY: 
       MOV   A,30H 
       MOV   B,#10
       DIV   AB
       MOV   73H,A
       MOV   72H,B
       MOV   A,31H
       MOV   B,#10
       DIV   AB
       MOV   71H,A
       MOV   70H,B
       MOV   R0,#2   
DPL1:  MOV   R1,#20   ;显示60次
       MOV   DPTR,#TAB   ;指定查表启始地址
DPLOP: MOV   A,70H
       MOVC  A,@A+DPTR
       MOV   P0,A
       CLR   P2.4
       ACALL D1MS   ;显示1ms
       SETB  P2.4
       MOV   A,71H
       MOVC  A,@A+DPTR
       MOV   P0,A
       CLR   P2.5
       ACALL D1MS
       SETB  P2.5
       MOV   A,72H
       MOVC  A,@A+DPTR
       MOV   P0,A
       CLR   P2.6
       ACALL D1MS   ;显示1ms
       SETB  P2.6
       MOV   A,73H
       MOVC  A,@A+DPTR
       MOV   P0,A
       CLR   P2.7
       ACALL D1MS   ;显示1ms
       SETB  P2.7
       DJNZ  R1,DPLOP
       DJNZ  R0,DPL1
       RET

TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H, 88H,83H,0C6H,0A1H,86H,8EH   

D1MS:  MOV   R7,#80 
       DJNZ  R7,$
       RET


          END   

⌨️ 快捷键说明

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