新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > MCS-51與串行D/A轉換器的接口設計

        MCS-51與串行D/A轉換器的接口設計

        作者: 時間:2009-09-07 來源:網絡 收藏

          改變數據發送順序的程序如下:
        OUTDA:MOV A,DBH ;取高位
           SWAP ;高4位和低4位交換
            MOV DBH,A
            MOV A,DBL ;取低位
            ANL A,#OFOH ;截取高4位
            SWAP ;高4位和低4位交換
            ORL A,DBH ;合成,(DBH)=D11 D10 D9 D8 D7 D6 D5 D4
            LCALL ASMBB ;順序轉換
            MOV DBH,A  ;存結果(DBH)=D4 D5 D6 D7 D8 D9 D10 D11
            MOV A,DBL   ;取低位
            ANL A,#OFH  ;截取低4位
            SWAP ;交換,(A)=D3 D2 D1 D0 0 0 0 0
            LCALL ASMBB  ;順序轉換
             MOV DBL,A ;存結果(A)=0 0 0 0 D0 D1 D2 D3
             MOV A, DBH
             MOV SBUF,A ;發送高8位
             JNB TI $  ;等待發送完成
             CLR TI    ;發送完畢,清標志
             MOV A,DBL
           MOV SBUF,A  ;發送低4位
             JNB TI $    ;等待
             CLR TI     ;發送完畢
             CLR P1.0    ;A寄存器加載到B寄存器
             NOP
             SETB P1.0    ;恢復
             REF
             ……
        ASMBB: MOV R6,#00H
             MOV R7,#08H
             CLR C
        ALO:   RLC A
             XCH A,R6
             RRC A
             XCH A,R6
             DJNZ R7,AL0
             XCH A,R6
             RET
          以上這種方式的單片機通訊口與AD7543的接口電路,其波特率固定為CPU時鐘頻率的1/12,如果CPU的頻率為6MHz,那么波特率為50kbps,位周期為20μs,顯然,這種連接方法只能用于高速系統。
        3.2 AD7543與單片機普通輸入輸出口線的連接
          AD7543可以用8031的P1口實現數據傳送。這種方法的波特率可調,傳輸速度由程序控制。電路與圖2相同,僅把8031的數據輸出端由RXD引腳改為P1.1,將移位脈沖輸出端由TXD改為P1.2口線,P1.0仍為加載脈沖輸出。其程序如下:
        FS:   MOV R7,#04H
            MOV A,DBH;數據高4位
            SWAP
        LOOP1: RLC A
            MOV P1.0 ;輸出
            LCALL PULSE ;移位脈沖輸出
            DJNZ R7,LOOP1 ;4位未完繼續
            MOV R7,#08H
            MOV A,DBLH ;數據低8位
        LOOP2: RLC A
            MOV P1.0 C ;輸出
            LCALL PULSE ;移位脈沖輸出
            DJNZ R7,LOOP2 ;8位未完繼續
            CLR P1.1 ;輸出加載脈沖
            NOP
            SETB P1.1
            RET ;傳送完畢
        PULSE: SETB P1.1 ;輸出高電平
            MOV R3,#4
        PULS1: DJNZ R3,PULS1
            CLR P1.1;輸出低電平
            MOV R3,#4
        PULS2:DJNZ R3,PULS2
            RET
          其中FS為AD7543驅動程序,子程序PULSE為移位脈沖形成程序,改變R3的數值可以改變移位脈沖的頻率。從而改變通訊波特率。

        本文引用地址:http://www.104case.com/article/188674.htm

        電度表相關文章:電度表原理



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 阿瓦提县| 阿坝| 紫阳县| 布拖县| 保康县| 云南省| 泸水县| 宜良县| 潮州市| 沛县| 滨海县| 彭阳县| 汕头市| 鹤岗市| 英吉沙县| 乡城县| 泰兴市| 巴中市| 长白| 无锡市| 富宁县| 互助| 高密市| 隆昌县| SHOW| 通河县| 汤阴县| 武威市| 治多县| 军事| 迁西县| 左权县| 石林| 仁寿县| 大竹县| 临邑县| 芮城县| 旬阳县| 通山县| 密山市| 昂仁县|