<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > DS2450轉換器的接口設計原理

DS2450轉換器的接口設計原理

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

  2 轉換與讀/寫(xiě)控制

  2.1 轉換控制

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

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

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

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

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

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

  2.2 存儲器讀/寫(xiě)控制

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

CRC16=X16+X15+X2+1

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


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

  2.3 DS2450的工作時(shí)序

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

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

  3 DS2450與單片機的典型

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

MCS

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

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

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

程序



關(guān)鍵詞: 原理 設計 接口 轉換器 DS2450

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>