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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DS2450轉(zhuǎn)換器的接口設(shè)計(jì)原理

          DS2450轉(zhuǎn)換器的接口設(shè)計(jì)原理

          作者: 時(shí)間:2011-03-27 來源:網(wǎng)絡(luò) 收藏

            2 轉(zhuǎn)換與讀/寫控制

            2.1 轉(zhuǎn)換控制

            的轉(zhuǎn)換控制首先通過其DATA端串行送出轉(zhuǎn)換命令字[3CH],然后送出通道選擇字和預(yù)置控制字,最后啟動A/D進(jìn)行轉(zhuǎn)換。的通道選擇字和預(yù)置控制字的各位含義如表1所列。

          DS2450的通道選擇字和預(yù)置控制字的各位含義

            在通道選擇字中,對應(yīng)位為1表示該通道參與轉(zhuǎn)換。在同時(shí)選擇多個(gè)通道時(shí),其轉(zhuǎn)換順序?yàn)锳→B→C→D,未選中的通道將被跳過。其A/D轉(zhuǎn)換的時(shí)間可近似為:

            轉(zhuǎn)換時(shí)間=通道數(shù)×轉(zhuǎn)換精度位數(shù)×80μs+160μs。

            當(dāng)所有通道轉(zhuǎn)換完畢后,系統(tǒng)將發(fā)出讀存儲器命令以獲得轉(zhuǎn)換結(jié)果和對應(yīng)的狀態(tài)。

            預(yù)置控制字可用于對相應(yīng)通道的轉(zhuǎn)換結(jié)果存儲器進(jìn)行預(yù)置。當(dāng)SET、CLR=00時(shí),為不預(yù)置,即保持上次轉(zhuǎn)換值;當(dāng)SET、CLR=01時(shí),轉(zhuǎn)換前預(yù)置為全0;當(dāng)SET、CLR=10時(shí),預(yù)置為全1;而SET、CLR=11為無效組合。

            2.2 存儲器讀/寫控制

            讀存儲器命令可用于讀取轉(zhuǎn)換結(jié)果、工作狀態(tài)和門限設(shè)定值等??偩€管理器首先送出讀存儲器命令字[AAH],然后送出兩字節(jié)的16位“起始數(shù)據(jù)”存儲器地址,并在總線上讀取一個(gè)字節(jié)的數(shù)據(jù)后,地址自動加1,緊接著讀取下一個(gè)數(shù)據(jù);當(dāng)一頁讀完后,隨后讀取的兩個(gè)字節(jié)為內(nèi)部自動產(chǎn)生的16位循環(huán)冗余校驗(yàn)碼,它是由前面送出的命令字、地址和讀取的存儲器數(shù)據(jù)并根據(jù)下列表達(dá)式生成的:

          CRC16=X16+X15+X2+1

            寫存儲器命令主要針對第1頁和第2頁存儲器,其目的是寫入各通道的工作方式控制字和對應(yīng)通道的高、低門限設(shè)定值。總線管理器首先送出寫存儲器命令字[55H],然后送出兩字節(jié)的16位存儲器起始地址,接著逐個(gè)送出要寫入的數(shù)據(jù),其地址也是自動加1。若在剛寫完一個(gè)數(shù)據(jù)后執(zhí)行讀操作,讀出的數(shù)據(jù)應(yīng)剛好為前一次寫入的數(shù)據(jù),可利用這一特點(diǎn)對寫入和讀出的數(shù)據(jù)進(jìn)行比較,以判斷傳輸?shù)恼_性。


            如果在軟件校驗(yàn)時(shí)發(fā)現(xiàn)讀/寫中的傳輸錯(cuò)誤,則必須對芯片進(jìn)行初始化,并重新進(jìn)行讀/寫操作。

            2.3 DS2450的工作時(shí)序

            DS2450的一線工作協(xié)議流程是:初始化→ROM功能命令→存儲器讀寫/轉(zhuǎn)換控制功能命令→傳輸數(shù)據(jù)。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序,圖2給出了普通工作模式下的工作時(shí)序。

          普通工作模式下的工作時(shí)序

            3 DS2450與單片機(jī)的典型

            圖3是MCS-51系列單片機(jī)與DS2450的典型連接電路。其中DS2450的DATA端接AT89C51的P1.0,該電路采用外接電源供電方式,其DS2450的VCC端用 5V電源供電。此例僅對D通道進(jìn)行A/D轉(zhuǎn)換,AIN-D接模擬信號輸入;AIN-A和AIN-B外接上拉電阻到電源,其輸出可作為D通道的高、低限報(bào)警信號。

          MCS

            如果單片機(jī)系統(tǒng)所用的晶振頻率為12MHz,那么可根據(jù)DS2450的初始化時(shí)序、寫時(shí)序和讀時(shí)序來分別編寫三個(gè)子程序:其中INIT為初始化子程序,可用于發(fā)送復(fù)位脈沖并接收存在脈沖;WRITE為寫(命令或數(shù)據(jù)字節(jié))子程序;READ為讀數(shù)據(jù)子程序。所有要讀寫的命令或數(shù)據(jù)字節(jié)均被放在A寄存器中。

            通過主機(jī)控制DS2450來完成A/D轉(zhuǎn)換一般要經(jīng)過以下幾個(gè)步驟:初始化、發(fā)ROM功能命令和相應(yīng)的64位光刻ROM數(shù)據(jù)、選中特定芯片、寫入工作方式控制字和高/低限門限值、發(fā)轉(zhuǎn)換控制命令、讀取轉(zhuǎn)換值及狀態(tài)等。

            如果將D通道設(shè)定為5.1V輸入范圍,轉(zhuǎn)換精度為12位,高報(bào)警門限為3.0V(96H),低報(bào)警門限為2.0V(64H),并將通道A和通過B作為報(bào)警輸出,最后將轉(zhuǎn)換結(jié)果放在30H和31H處,那么其子程序CTLAD的具體程序清單如下:

          程序



          評論


          相關(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); })();