新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 串行12位ADC與計算機之間的接口電路設計

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

        作者: 時間:2011-11-23 來源:網絡 收藏

        近幾年來,IC制造商設計了實現的各種方法,并且特別重視減少ICI/O引腳的數量。MAX187就是這樣一個器件,它是一個模/數轉換器()。你可以利用數據通信技術產生與該的一個。MAX187的模/數轉換和數據傳輸僅需三條數字I/O線。你可以利用PC的Centronics打印機端口在MAX187和PC產生一個簡易接口(圖1)。只要將引腳分別設置為高電平或低電平,你就能啟用或禁用MAX187(引腳 3)。如果使該引腳開路,則內部參考電壓(4.096V) 就被禁用,你必須將一個外部參考電壓加到引腳REF(引腳4)上。在其他情況下,該引腳 與4.7μF旁路電容C1連接。通過使用SCLK引腳(引腳8)上的外部時鐘脈沖,來自 MAX187的數字數據就以每次1位的速度傳輸給處理單元。
          一次完整的數據傳輸需要13個外部時鐘脈沖。第一個時鐘脈沖的下降沿鎖存DOUT引腳(引腳6)的第一個數據位(MSB)。輸出數據位在下一個外部時鐘脈沖的下降沿就改變,可以讀取數據位,直到下一個時鐘周期的下降沿出現為止。模/數轉換在的引腳(引腳7)變成低電平時開始進行。該引腳必
        須保持低電平,直到模/數轉換整個周期結束為止,隨后進行數據傳輸。DOUT引腳從低電平至高電平的狀態變化表示EOC(轉換結束)狀態。然后,串行的數據就可以進行傳輸了。MAX187的工作情況由軟件控制。該軟件應能產生成功完成轉換所需的所有控制信號,而且應能檢測EOC狀態。它還應能產生13個外部時鐘脈沖,以便讀取串行數據并將其轉換成并行數據。
          控制MAX187工作情況的軟件是Turbo C++ 3.0版本(可從www.edn.com網站的《設計實例》的Web版本下載)。在代碼中,Port定義與MAX187接口的PC的 Centronics端口。Write Port定義用于初始化模/數轉換和產生外部時鐘脈沖的端口。Read Port定義用于從ADC讀取EOC和串行數據的端口。在將CS引腳和SCLK引腳下拉至低電平后,EOC環路檢查EOC狀態。如果未出現有效的EOC,則該環路將繼續工作。有效EOC出現,13個時鐘周期中的第一個周期就出現,并鎖存第一個數據位(MSB)。此后,例行程序調用一個子例程(get_adc())。子例程產生剩下的外部時鐘周期,以便讀取12位串行數據。子例程還將接收到的串行數據轉換成并行數據(adc_val)。這一轉換過程為:使adc_val左移一位,由此將前一個數據乘以2,如果串行數據位的值為1,則將1加到并行數據上。一旦并行數據就緒,子例程將返回這個值并將其顯示在屏幕上。

        本文引用地址:http://www.104case.com/article/150031.htm

        實現12位串行ADC與PC之間的接口是很容易的
        圖1 實現12位串行ADC與PC的接口是很容易的。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 平阳县| 西华县| 嘉兴市| 化州市| 巴塘县| 沁阳市| 藁城市| 含山县| 福贡县| 阿坝| 石家庄市| 横峰县| 阜阳市| 普陀区| 磐安县| 怀远县| 平山县| 名山县| 苍溪县| 团风县| 抚松县| 张家川| 澄江县| 惠安县| 漳浦县| 化隆| 大冶市| 安远县| 六盘水市| 淳安县| 平南县| 高安市| 罗甸县| 同德县| 诸城市| 阳西县| 长武县| 宜君县| 基隆市| 阿城市| 锦州市|