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

📄 rt.a51

📁 终极串口调试软件
💻 A51
字号:
;请浏览“浙中电子村”网站 http://zzdzc.126.com
;单片机串口与计算机RS232接口三线连接,设置好波特率
;T1重装载数=256-晶振频率×2^SMOD÷32÷12÷波特率
;可以使用“终极串口调试”附带的“51波特率计算工具”
;本程序适用单片机晶振为12MHz,波特率为1200bps
;有问题和建议请Email到 yinhe_xi@tom.com 和我联系!


;------------------------------------------------------
         org 0000h
         ajmp star
         org 0030h
         ajmp rs232
;------------------------------------------------------
         org 0030h
rs232:   clr ea       ;串口中断服务
         mov a,sbuf   ;接收一个字节
         clr RI
         cjne a,#0a5h,fd0
        jnb ri,$
       mov sbuf,a  ;回送
       jnb ti,$
        clr ti
         mov a,sbuf     ;收到A5
         mov a,57h
         mov dptr,#ml   ;命令处理
fa:      mov sp,#58h         
         push dpl
         push dph
fd0:     mov 57h,a    ;字节寄存57
         reti
;--------------------------------------------------------
;串口预置程序
star:  mov pcon,#00h   ;SMOD=0
       mov scon,#50h   ;mod1 ren=1
       mov tmod,#20h   ;t1 mod2
       mov tl1,#0e6h   ;14 buad 110
       mov th1,#0e6h   ;E6 buad 1200 (12mhz )
       clr tr1
       clr ea
       clr et1
       setb es
       setb tr1
       ajmp $ 
;--------------------------------------------------------
;串口命令执行
ml:     anl a,#0fh
        mov r0,a
        rl a
        add a,r0
        mov dptr,#bat
        jmp @a+dptr
bat:    ljmp 2000h    ;转2000运行(10)
        ljmp tram     ;转发送Hex文件(11)
        ljmp 0000h    ;(12)
        ljmp 0000h    ;(13)
        ljmp 0000h    ;(14)
        ljmp 0000h    ;(15)
        ljmp 0000h    ;(16)
        ljmp 0000h    ;(17)
        ljmp 0000h    ;(18)
        ljmp ram      ;转接收Hex文件(19)
;---------------------------------------------------------
ram:    mov dptr,#2000h ;接收Hex文件
pr0:    jnb ri,$
         mov a,sbuf     ;接收一字节
         clr ri
         mov r1,a
pr1:    movx @dptr,a  ;存入RAM
        inc dptr
        cjne a,#0a5h,pr0 ;结束标记
       jnb ri,$         ;A5 AA
       mov a,sbuf
       cjne a,#0aah,pr1
       movx @dptr,a 
       mov sbuf,a
       jnb ti,$
        clr ti
       mov dptr,#0000h
       ajmp fa
;-----------------------------------------------------
tram:    mov dptr,#2000h ;发送Hex文件
         movx a,@dptr   ;从RAM读入
tpr0:    mov sbuf,a
         jnb ti,$
         clr ti
         mov r1,a
tpr1:      
        inc dptr
        cjne a,#0a5h,tpr0 ;结束标记        
        movx a,@dptr       ;A5 AA
       cjne a,#0aah,tpr1
       mov sbuf,a
       jnb ti,$
        clr ti
       mov dptr,#0000h
       ajmp fa



END



⌨️ 快捷键说明

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