電子開發(fā)網(wǎng)

電子開發(fā)網(wǎng)電子設(shè)計(jì) | 電子開發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 單片機(jī) >> 正文

51單片機(jī)匯編模擬串口通信程序

作者:佚名    文章來源:本站原創(chuàng)    點(diǎn)擊數(shù):    更新時(shí)間:2011-8-25

匯編編寫的模擬串口通信程序

T2作為波特率控制
UART_RXD 是硬中斷0或1口,如果能進(jìn)入中斷,說明該線有一個(gè)起始位產(chǎn)生,進(jìn)入中斷后調(diào)
用下面的接收程序。退出硬中斷之前還需要將硬中斷標(biāo)志重新復(fù)位。
UART_TXD 是任何其它IO即可。

UART_SEND:
    PUSH IE
    PUSH DPH
    PUSH DPL
    PUSH PSW
    PUSH 00H
    PUSH ACC
    CLR EA
    SETB UART_TXD        ;START BIT
   
    MOV R0,A
    CLR TR2    ;TR2置1,計(jì)數(shù)器2啟動(dòng),時(shí)間計(jì)數(shù)啟動(dòng)。
    MOV A,RCAP2L;計(jì)數(shù)器2重新裝載值
    MOV TL2,A    ;置計(jì)數(shù)器2初值  ;T2需要重新裝載
    MOV A,DPH
    MOV A,RCAP2H
    MOV TH2,A
    MOV A,R0
   
    SETB TR2    ;TR2置1,計(jì)數(shù)器
    JNB TF2,$
    CLR TF2
    JNB TF2,$
    CLR TF2
   
    CLR UART_TXD        ;START BIT
    JNB TF2,$
    CLR TF2
    JNB TF2,$
    CLR TF2
   
    MOV R0,#08H
UART_SEND_LOOP:
    RRC A
    MOV UART_TXD,C        ;8 BIT
    JNB TF2,$
    CLR TF2
    JNB TF2,$
    CLR TF2
    DJNZ R0,UART_SEND_LOOP
   
    SETB UART_TXD        ;END BIT
    JNB TF2,$
    CLR TF2
    JNB TF2,$
    CLR TF2
   
    POP ACC
    POP 00H
    POP PSW
    POP DPL
    POP DPH
    POP IE
    RET
   
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
UART_REC:
    PUSH IE
    PUSH DPH
    PUSH DPL
    CLR EA
   
    CLR TR2    ;TR2置1,計(jì)數(shù)器2啟動(dòng),時(shí)間計(jì)數(shù)啟動(dòng)。
    MOV A,RCAP2L;計(jì)數(shù)器2重新裝載值
    MOV TL2,A    ;置計(jì)數(shù)器2初值  ;T2需要重新裝載
    MOV A,DPH
    MOV A,RCAP2H
    MOV TH2,A
   
    JB UART_RXD,$    ;REC
    SETB TR2    ;TR2置1,計(jì)數(shù)器2啟動(dòng),時(shí)間計(jì)數(shù)啟動(dòng)。
    JNB TF2,$
    CLR TF2        ;0.5 BIT
   
    JNB TF2,$
    CLR TF2        ;1 BIT
   
    JNB TF2,$
    CLR TF2        ;1.5 BIT
    MOV C,UART_RXD
    MOV ACC.0,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;2.5
    MOV C,UART_RXD
    MOV ACC.1,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;3.5
    MOV C,UART_RXD
    MOV ACC.2,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;4.5
    MOV C,UART_RXD
    MOV ACC.3,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;5.5
    MOV C,UART_RXD
    MOV ACC.4,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;6.5
    MOV C,UART_RXD
    MOV ACC.5,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;7.5
    MOV C,UART_RXD
    MOV ACC.6,C
   
    JNB TF2,$
    CLR TF2
   
    JNB TF2,$
    CLR TF2        ;8.5
    MOV C,UART_RXD
    MOV ACC.7,C
   
    JNB TF2,$
    CLR TF2        ;9.5
    JNB UART_RXD,$    ;等待停止位,并重新復(fù)位計(jì)數(shù)器
    SETB UART_RXD
   
    POP DPL
    POP DPH
    POP IE
    RET

Tags:51單片機(jī),匯編,串口通信程序  
責(zé)任編輯:admin
請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個(gè)字
[ 查看全部 ] 網(wǎng)友評(píng)論
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
亚洲av高清一区二区三区| 日批免费观看视频| 性感的瑜伽教练| 国产妇女乱一性一交| 亚洲欧美国产五月天综合| 一级成人毛片免费观看| 18禁男女无遮挡啪啪网站| 男孩子和男孩子在一起do| 日本老头变态xxxx| 国产精品久久久小说| 亚洲欧洲自拍拍偷午夜色无码| sihu国产精品永久免费| 精品国产v无码大片在线观看| 日本中文字幕有码视频| 国产成人精品视频福利app| 亚洲最大无码中文字幕| どきどき小房东| 特级毛片爽www免费版| 女邻居拉开裙子让我挺进| 国产91久久久久久久免费| 久久精品一区二区三区av| 高潮毛片无遮挡高清免费视频 | 精品亚洲成a人无码成a在线观看 | 777色淫网站女女| 欧美在线性爱视频| 在线看欧美成人中文字幕视频| 亚洲精品国产精品乱码不卡√| www.精品视频| 激情网站免费看| 在线免费h视频| 亚洲色婷婷一区二区三区| 99久久精品国产一区二区三区| 欧美精品videosbestsexhd4k| 奇米影视7777777| 亚洲综合图片网| 777成了人乱视频| 日韩人妻不卡一区二区三区| 国产喷水女王在线播放| 久久人妻av一区二区软件| 精品国产AV无码一区二区三区| 宝贝过来趴好张开腿让我看看|