<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > MCS-51與串行D/A轉(zhuǎn)換器的接口設(shè)計(jì)

          MCS-51與串行D/A轉(zhuǎn)換器的接口設(shè)計(jì)

          作者: 時(shí)間:2009-09-07 來源:網(wǎng)絡(luò) 收藏

            改變數(shù)據(jù)發(fā)送順序的程序如下:
          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 ;順序轉(zhuǎn)換
              MOV DBH,A ?。淮娼Y(jié)果(DBH)=D4 D5 D6 D7 D8 D9 D10 D11
              MOV A,DBL   ;取低位
              ANL A,#OFH ?。唤厝〉?位
              SWAP ;交換,(A)=D3 D2 D1 D0 0 0 0 0
              LCALL ASMBB  ;順序轉(zhuǎn)換
               MOV DBL,A ;存結(jié)果(A)=0 0 0 0 D0 D1 D2 D3
               MOV A, DBH
               MOV SBUF,A?。话l(fā)送高8位
               JNB TI $  ;等待發(fā)送完成
               CLR TI   ?。话l(fā)送完畢,清標(biāo)志
               MOV A,DBL
             MOV SBUF,A  ;發(fā)送低4位
               JNB TI $    ;等待
               CLR TI     ;發(fā)送完畢
               CLR P1.0    ;A寄存器加載到B寄存器
               NOP
               SETB P1.0   ??;恢復(fù)
               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
            以上這種方式的單片機(jī)通訊口與AD7543的接口電路,其波特率固定為CPU時(shí)鐘頻率的1/12,如果CPU的頻率為6MHz,那么波特率為50kbps,位周期為20μs,顯然,這種連接方法只能用于高速系統(tǒng)。
          3.2 AD7543與單片機(jī)普通輸入輸出口線的連接
            AD7543可以用8031的P1口實(shí)現(xiàn)數(shù)據(jù)傳送。這種方法的波特率可調(diào),傳輸速度由程序控制。電路與圖2相同,僅把8031的數(shù)據(jù)輸出端由RXD引腳改為P1.1,將移位脈沖輸出端由TXD改為P1.2口線,P1.0仍為加載脈沖輸出。其程序如下:
          FS:   MOV R7,#04H
              MOV A,DBH;數(shù)據(jù)高4位
              SWAP
          LOOP1: RLC A
              MOV P1.0 ;輸出
              LCALL PULSE ;移位脈沖輸出
              DJNZ R7,LOOP1 ;4位未完繼續(xù)
              MOV R7,#08H
              MOV A,DBLH ;數(shù)據(jù)低8位
          LOOP2: RLC A
              MOV P1.0 C ;輸出
              LCALL PULSE ;移位脈沖輸出
              DJNZ R7,LOOP2 ;8位未完繼續(xù)
              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驅(qū)動(dòng)程序,子程序PULSE為移位脈沖形成程序,改變R3的數(shù)值可以改變移位脈沖的頻率。從而改變通訊波特率。

          本文引用地址:http://www.ex-cimer.com/article/188674.htm

          電度表相關(guān)文章:電度表原理



          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();