新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)與單總線A/D轉(zhuǎn)換器DS2450的接口設(shè)計(jì)

單片機(jī)與單總線A/D轉(zhuǎn)換器DS2450的接口設(shè)計(jì)

作者: 時(shí)間:2009-09-02 來(lái)源:網(wǎng)絡(luò) 收藏
是DALLAS公司生產(chǎn)的單四通道逐次逼近式A/D芯片,它的輸入電壓范圍、轉(zhuǎn)換精度位數(shù)和報(bào)警門限電壓均可編程;每個(gè)通道均可用各自的存儲(chǔ)器來(lái)存儲(chǔ)電壓范圍設(shè)置、轉(zhuǎn)換結(jié)果和門限電壓等參數(shù)。在普通方式下其串行通信速率為16.3kbps,而超速工作模式時(shí)的速率可達(dá) 142kbps,片內(nèi)16位循環(huán)冗余校驗(yàn)碼生成器可用于檢測(cè)通信的正確性。采用8腳SOIC小體積封裝。它既可用單5V電源供電,也可采用寄生電源方式供電,芯片正常工作時(shí)的功耗僅2.5mW,空閑
時(shí)的功耗為25μW。多個(gè)或其它功能的具有MicroLAN的單芯片可以并聯(lián),CPU只需一根端口線就能與諸多單芯片通信,而且占用微處理器的端口較少,因此可節(jié)省大量的引出腳和邏輯電路。
1 DS2450的引腳排列和內(nèi)部結(jié)構(gòu)
1
.1 引腳功能
  DS2450采用8腳SOIC封裝,其管腳功能描述如下:
1腳(VDD):工作電源接入端;
2腳(N.C):懸空引腳;
3腳(DATA):串行數(shù)據(jù)輸入/輸出端;
4腳(GND):接地端;
5腳(AIN-A):A路模擬電壓輸入端;
6腳(AIN-B):B路模擬電壓輸入端;7腳(AIN-C):C路模擬電壓輸入端;
  8腳(AIN-D):D路模擬電壓輸入端。

1.2 內(nèi)部結(jié)構(gòu)

  DS2450的內(nèi)部結(jié)構(gòu)如圖1所示。其中光刻ROM中的64位序列號(hào)是出廠前被光刻好的,它可以被看作是該DS2450的地址序列碼。64位光刻 ROM的排列是:開(kāi)始8位(20H)為產(chǎn)品類型標(biāo)號(hào),接著的48位是該DS2450自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1);光刻ROM的作用是使每一個(gè)單總線器件的地址都各不相同,以便在一根總線上掛接多個(gè)單總線芯片。

本文引用地址:http://m.butianyuan.cn/article/173616.htm

  對(duì)于一線端口,在ROM功能建立之前,其它功能是無(wú)法實(shí)現(xiàn)的??偩€控制器必須首先通過(guò)DATA引腳為DS2450提供一個(gè)ROM功能控制命令(8位)。它的7個(gè)功能控制命令為:
(1)讀ROM,命令字[33H];
(2)匹配ROM[55H];
(3)搜索ROM[F0H];
(4)跳過(guò)ROM[CCH];
(5)條件搜索ROM[ECH];
(6)超速跳過(guò)ROM[3CH];
(7)超速匹配ROM[69H]。
  其中超速跳過(guò)ROM或超速匹配ROM命令執(zhí)行后可使串行通信速率高達(dá)142kbps。如果多個(gè)器件連接在一線上,這些命令可對(duì)每個(gè)器件的64位ROM 部分進(jìn)行操作,并挑選出一個(gè)特定的器件。然后對(duì)選中的DS2450執(zhí)行下一步的A/D轉(zhuǎn)換控制命令以及讀寫存儲(chǔ)器命令,所有命令或數(shù)據(jù)的讀/寫均從最低位開(kāi)始。

1.3 存儲(chǔ)器
  DS2450內(nèi)部有24個(gè)地址相連的8位存儲(chǔ)器,可將其分成3頁(yè),每頁(yè)8字節(jié)。第0頁(yè)為A/D轉(zhuǎn)換結(jié)果存儲(chǔ)器,每個(gè)通道占2個(gè)字節(jié)共16位。當(dāng)芯片上電復(fù)位時(shí),該頁(yè)清0;第1頁(yè)為A/D轉(zhuǎn)換控制與狀態(tài)存儲(chǔ)器;第2頁(yè)為各通道輸入高/低限報(bào)警值存儲(chǔ)器。
2 轉(zhuǎn)換與讀寫控制
2
.1 轉(zhuǎn)換控制
  DS2450的轉(zhuǎn)換控制首先通過(guò)其DATA端串行送出轉(zhuǎn)換命令字[3CH],然后送出通道選擇字和預(yù)置控制字,最后啟動(dòng)A/D進(jìn)行轉(zhuǎn)換。DS2450的通道選擇字和預(yù)置控制字的各位含義如表1所列。
  在通道選擇字中,對(duì)應(yīng)位為1表示該通道參與轉(zhuǎn)換。在同時(shí)選擇多個(gè)通道時(shí),其轉(zhuǎn)換順序?yàn)锳→B→C→D,未選中的通道將被跳過(guò)。其A/D轉(zhuǎn)換的時(shí)間可近似為:
  轉(zhuǎn)換時(shí)間=通道數(shù)×轉(zhuǎn)換精度位數(shù)×80μs+160μs。
  當(dāng)所有通道轉(zhuǎn)換完畢后,系統(tǒng)將發(fā)出讀存儲(chǔ)器命令以獲得轉(zhuǎn)換結(jié)果和對(duì)應(yīng)的狀態(tài)。
  預(yù)置控制字可用于對(duì)相應(yīng)通道的轉(zhuǎn)換結(jié)果存儲(chǔ)器進(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為無(wú)效組合。

2.2 存儲(chǔ)器讀寫控制
  讀存儲(chǔ)器命令可用于讀取轉(zhuǎn)換結(jié)果、工作狀態(tài)和門限設(shè)定值等??偩€管理器首先送出讀存儲(chǔ)器命令字[AAH],然后送出兩字節(jié)的16位“起始數(shù)據(jù)”存儲(chǔ)器地址,并在總線上讀取一個(gè)字節(jié)的數(shù)據(jù)后,地址自動(dòng)加1,緊接著讀取下一個(gè)數(shù)據(jù);當(dāng)一頁(yè)讀完后,隨后讀取的兩個(gè)字節(jié)為內(nèi)部自動(dòng)產(chǎn)生的16位循環(huán)冗余校驗(yàn)碼,它是由前面送出的命令字、地址和讀取的存儲(chǔ)器數(shù)據(jù)并根據(jù)下列表達(dá)式生成的:
CRC16=X16+X15+X2+1
  寫存儲(chǔ)器命令主要針對(duì)第1頁(yè)和第2頁(yè)存儲(chǔ)器,其目的是寫入各通道的工作方式控制字和對(duì)應(yīng)通道的高、低門限設(shè)定值??偩€管理器首先送出寫存儲(chǔ)器命令字[55H],然后送出兩字節(jié)的16位存儲(chǔ)器起始地址,接著逐個(gè)送出要寫入的數(shù)據(jù),其地址也是自動(dòng)加1。若在剛寫完一個(gè)數(shù)據(jù)后執(zhí)行讀操作,讀出的數(shù)據(jù)應(yīng)剛好為前一次寫入的數(shù)據(jù),可利用這一特點(diǎn)對(duì)寫入和讀出的數(shù)據(jù)進(jìn)行比較,以判斷傳輸?shù)恼_性。
  如果在軟件校驗(yàn)時(shí)發(fā)現(xiàn)讀/寫中的傳輸錯(cuò)誤,則必須對(duì)DS2450芯片進(jìn)行初始化,并重新進(jìn)行讀/寫操作。
2.3 DS2450的工作時(shí)序
  DS2450的一線工作協(xié)議流程是:初始化→ROM功能命令→存儲(chǔ)器讀寫/轉(zhuǎn)換控制功能命令→傳輸數(shù)據(jù)。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序,圖2給出了普通工作模式下的工作時(shí)序。
3 DS2450的典型

  圖3是MCS-51系列與DS2450的典型連接電路。其中DS2450的DATA端接AT89C51的P1.0,該電路采用外接電源供電方式,其DS2450的VCC端用 5V電源供電。此例僅對(duì)D通道進(jìn)行A/D轉(zhuǎn)換,AIN-D接模擬信號(hào)輸入;AIN-A和AIN-B外接上拉電阻到電源,其輸出可作為D通道的高、低限報(bào)警信號(hào)。
如果系統(tǒng)所用的晶振頻率為12MHz,那么可根據(jù)DS2450的初始化時(shí)序、寫時(shí)序和讀時(shí)序來(lái)分別編寫三個(gè)子程序:其中INIT為初始化子程序,可用于發(fā)送復(fù)位脈沖并接收存在脈沖;WRITE為寫(命令或數(shù)據(jù)字節(jié))子程序;READ為讀數(shù)據(jù)子程序。所有要讀寫的命令或數(shù)據(jù)字節(jié)均被放在A寄存器中。

  


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉