串行12位ADC與計算機之間的接口電路設計

發(fā)布時(shí)間:2011-11-30 15:34    發(fā)布者:1640190015
關(guān)鍵詞: ADC , 計算機 , 接口電路
近幾年來(lái),IC制造商設計了實(shí)現接口的各種方法,并且特別重視減少I(mǎi)C接口I/O引腳的數量。MAX187就是這樣一個(gè)器件,它是一個(gè)12位模/數轉換器(ADC)。你可以利用串行數據通信技術(shù)產(chǎn)生與該ADC的一個(gè)接口。MAX187的模/數轉換和數據傳輸僅需三條數字I/O線(xiàn)。你可以利用PC的Centronics打印機端口在MAX187和PC之間產(chǎn)生一個(gè)簡(jiǎn)易接口(圖1)。只要將引腳分別設置為高電平或低電平,你就能啟用或禁用MAX187(引腳 3)。如果使該引腳開(kāi)路,則內部參考電壓(4.096V) 就被禁用,你必須將一個(gè)外部參考電壓加到引腳REF(引腳4)上。在其他情況下,該引腳 與4.7μF旁路電容C1連接。通過(guò)使用SCLK引腳(引腳8)上的外部時(shí)鐘脈沖,來(lái)自 MAX187的數字數據就以每次1位的速度傳輸給處理單元。

一次完整的數據傳輸需要13個(gè)外部時(shí)鐘脈沖。第一個(gè)時(shí)鐘脈沖的下降沿鎖存DOUT引腳(引腳6)的第一個(gè)數據位(MSB)。輸出數據位在下一個(gè)外部時(shí)鐘脈沖的下降沿就改變,可以讀取串行數據位,直到下一個(gè)時(shí)鐘周期的下降沿出現為止。模/數轉換在A(yíng)DC的引腳(引腳7)變成低電平時(shí)開(kāi)始進(jìn)行。該引腳必  

須保持低電平,直到模/數轉換整個(gè)周期結束為止,隨后進(jìn)行串行數據傳輸。DOUT引腳從低電平至高電平的狀態(tài)變化表示EOC(轉換結束)狀態(tài)。然后,串行的12位數據就可以進(jìn)行傳輸了。MAX187的工作情況由軟件控制。該軟件應能產(chǎn)生成功完成轉換所需的所有控制信號,而且應能檢測EOC狀態(tài)。它還應能產(chǎn)生13個(gè)外部時(shí)鐘脈沖,以便讀取串行12位數據并將其轉換成并行數據。

控制MAX187工作情況的軟件是Turbo C++ 3.0版本(可從www.edn.com網(wǎng)站的《設計實(shí)例》的Web版本下載)。在代碼中,Port定義與MAX187接口的PC的 Centronics端口。Write Port定義用于初始化模/數轉換和產(chǎn)生外部時(shí)鐘脈沖的端口。Read Port定義用于從ADC讀取EOC和串行數據的端口。在將CS引腳和SCLK引腳下拉至低電平后,EOC環(huán)路檢查EOC狀態(tài)。如果未出現有效的EOC,則該環(huán)路將繼續工作。有效EOC出現,13個(gè)時(shí)鐘周期中的第一個(gè)周期就出現,并鎖存第一個(gè)數據位(MSB)。此后,例行程序調用一個(gè)子例程(get_adc())。子例程產(chǎn)生剩下的外部時(shí)鐘周期,以便讀取12位串行數據。子例程還將接收到的串行數據轉換成并行數據(adc_val)。這一轉換過(guò)程為:使adc_val左移一位,由此將前一個(gè)數據乘以2,如果串行數據位的值為1,則將1加到并行數據上。一旦并行數據就緒,子例程將返回這個(gè)值并將其顯示在屏幕上。


圖1  實(shí)現12位串行ADC與PC之間的接口是很容易的。
本文地址:http://selenalain.com/thread-83217-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页