ADS8361 是一款采樣速率為 500kSPS 的 16 位雙路模數(shù)轉(zhuǎn)換器 (ADC),該轉(zhuǎn)換器具有 4個(gè)全差分輸入通道,兩兩一對,以實(shí)現(xiàn)同步高速信號采集。采樣保持放大器的輸入端是全差分的,此外, ADC 的輸入端也保持為全差分。這使該 ADC具有卓越的共模抑制能力:在 50kHz 時(shí)為 80dB,這在高噪聲環(huán)境下非常重要。 新型 MSP430F2013 等 MSP430 器件具有通用串行接口(USI),因而可用于非常簡單直接的接口,該接口不需要“粘接邏輯”且需要的軟件開銷也很少。有的應(yīng)用要求對同步數(shù)據(jù)采集的通道實(shí)現(xiàn)精確定時(shí),這時(shí)我們就能用這種接口來獲取所需的系統(tǒng)結(jié)果。 硬件 ADS8361EVM ADS8361 是德州儀器 (TI) 推出的串行 ADC 電機(jī)控制產(chǎn)品系列產(chǎn)品。EVM 提供了相關(guān)平臺,以演示配合不同TI DSP 與微控制器時(shí)ADS8361 ADC 的功能,并針對定制的最終用戶應(yīng)用提供了方便地存取所有模擬與數(shù)字信號的功能。 圖1 硬件接口結(jié)構(gòu)圖 eZ430-F2013 開發(fā)工具 eZ430-F2013 是完整的 MSP430 開發(fā)工具,包括評估 MSP430F2013 所需的全部軟硬件。我們用可便利的 USB存儲棒提供該硬件。eZ430-F2013 采用 IAR 嵌入式工作臺集成開發(fā)環(huán)境(IDE),以提供完整的仿真功能,該器件提供獨(dú)立系統(tǒng)設(shè)計(jì)與可拆卸目標(biāo)板兩種選項(xiàng),以便于集成至現(xiàn)有設(shè)計(jì)中。更多詳情,敬請?jiān)L問:www.ti.com/ez430。 硬件接口 連接eZ430-F2013 與 ADS8361EVM 的最低要求是采用簡單的三線接口(見表 1)。硬件連接如圖 1 所示。ADS8361 的CLOCK、(RD + CONVST) 與 Serial Data A 引腳分別連接至 USI 端口的 SCLK、MOSI 與 MISO引腳。chip select (CS) 引腳接地,因?yàn)槎丝谏现环胖靡粋(gè) ADC。如果總線上掛接多個(gè)器件,那么芯片選擇引腳應(yīng)由 MSP430器件上可用的 GPIO 控制。 軟件接口 MSP430的所有軟件都采用 IAR 嵌入式工作臺 (Kickstart 版本) 編寫編譯。該軟件是 IDE 的免費(fèi)版,并可在www.ti.com/ez430 網(wǎng)站的工具支持 (TOOL SUPPORT) 部分下載。您也可請求獲得示例中使用的代碼。 USI 設(shè)置 USI 模塊提供支持同步串行通信方案的基本功能。USI 具有內(nèi)置硬件功能,從而簡化了 SPI 通信的實(shí)施。此外,USI 模塊還具有中斷功能,能進(jìn)一步降低軟件的開銷。 圖2 完整的單通道轉(zhuǎn)換周期 USI 控制寄存器 0 和 1(USICTL0 和 USICTL1)設(shè)置串行接口的基本操作。通過在 USICTL0 中設(shè)置 3, 5, 6 和7 位,可在 SPI 主模式下配置端口。此外,還可在 USICTL1 中設(shè)置 USI 計(jì)數(shù)器中斷,從而以最小的軟件開銷有效地實(shí)現(xiàn) SPI 通信。 串行時(shí)鐘的極性、信號源及速度都可通過設(shè)置 USI 時(shí)鐘控制寄存器 (USICKCTL) 得到控制。就本文而言,時(shí)鐘極性設(shè)為零(保持為低),時(shí)鐘源為 SMCLK,分頻系數(shù)為一。 位時(shí)鐘和移位寄存器配置在 USI 端口中實(shí)現(xiàn)控制,由 USI 位計(jì)數(shù)寄存器 (USICNT) 的位設(shè)置決定。USICNT 寄存器有 5位,每次可提供多達(dá) 32 個(gè) SCLK 周期。如果 USICNT 設(shè)為 0×13,MSP430 將在每個(gè)轉(zhuǎn)換周期向 ADS8361 發(fā)送 19個(gè)串行時(shí)鐘。將 USICNT 寄存器的 USI16B 位置 1,可使移位寄存器發(fā)揮 16 位發(fā)送/接收緩存的作用。所發(fā)送的數(shù)據(jù)根據(jù) MSB排列,以首個(gè) SCLK 周期開始。 開始轉(zhuǎn)換 們將 USI 端口的 MOSI 輸出連接到 ADS8361 上的 RD 和 CONVST 輸入上,就能開始轉(zhuǎn)換周期,轉(zhuǎn)換結(jié)果提供給該器件的串行數(shù)據(jù)輸出引腳。 ADS8361 將在第四個(gè) SCLK? 周期開始輸出轉(zhuǎn)換結(jié)果(先是 MSB)。由于移位寄存器保留最后 16 位的接收數(shù)據(jù),因此我們采集全部 16 位轉(zhuǎn)換結(jié)果,用于進(jìn)一步的處理。圖 2 中的時(shí)序圖顯示了整個(gè)過程。 ADS8361 工作模式 ADS8361 有四種由 M0 及 M1 引腳控制的工作模式。ADS8361EVM 提供的跳線可靜態(tài)設(shè)置工作模式。在 MSP430 上采用 GPIO 輸出后,還能通過微控制器來控制工作模式。 就雙通道工作而言,EVM 應(yīng)在模式 I 和 II 中配置。根據(jù)所采用 MSP430器件的不同,用戶在決定如何接收轉(zhuǎn)換結(jié)果時(shí)有著若干選擇。具有多個(gè)串行端口的器件可同時(shí)從 ADS8361 的 Serial Data A 與Serial Data B 輸出引腳接收數(shù)據(jù)。這種方法將設(shè)置一個(gè)端口作為 SPI 主設(shè)備而另一個(gè)端口為 SPI 從設(shè)備。主 SPI端口將與從端口共享 SCLK,兩個(gè)串行輸出引腳將被連接至 MISO 與 MOSI。 雙通道同步采樣就eZ430-F2013 而言,由于只有一個(gè)串行端口,也就是說,ADS8361 必須在 Mode II中設(shè)置,才能從同步采樣的兩個(gè)輸入通道接收轉(zhuǎn)換結(jié)果。該模式將兩個(gè)轉(zhuǎn)換結(jié)果都提供給 Serial Data A 輸出引腳(見圖 3 )。 圖3 完整的雙通道轉(zhuǎn)換周期 ADS8361 通道 ID 位 ADS8361 的串行輸出流還包括雙通道 ID 位,這樣控制器就能用軟件方法來破譯所接收的通道信息。首個(gè) ID 位確定了通道對 A 或B。第二個(gè) ID 位決定了采樣通道 0 或 1。在 Mode II 工作模式下,兩個(gè)輸入通道被轉(zhuǎn)換,輸出數(shù)據(jù)流中包含一個(gè) ID 位。 在該模式中,我們不使用 A/B 通道 ID 位,因?yàn)檩斎氩蓸訉θQ于 ADS8361 的 A0 輸入控制引腳。當(dāng) A0 為低電平時(shí),對通道 A0/B0 輸入對進(jìn)行采樣。當(dāng) A0 為高電平,對通道 A1/B1 輸入對進(jìn)行采樣。 ADS8361EVM 的跳線可通過 A0 引腳靜態(tài)設(shè)置輸入對。如果需要的話,我們也可通過 MSP430 上的 GPIO來控制上述工作,這樣用戶就能實(shí)現(xiàn)四通道工作,即兩對同步采樣輸入通道。 四通道采樣 Mode III 及 IV 能幫助用戶實(shí)現(xiàn) ADS8361 的四通道工作。Mode III 提供 Serial Data A 與 Serial Data B 輸出的數(shù)據(jù)。在此模式下,接收所有四個(gè)轉(zhuǎn)換的數(shù)據(jù)要求將兩個(gè)串行端口如前所述配置為主從關(guān)系。 Mode IV 可使一個(gè)串行端口通過 Serial Data A 輸出引腳來接收所有四個(gè)轉(zhuǎn)換結(jié)果。在此模式下,A/B 和 0/1 通道 ID位都可傳遞轉(zhuǎn)換結(jié)果。這種情況下,如果配合使用 eZ430-F2013 器件,那么移位寄存器會丟失 ID位,從而導(dǎo)致問題發(fā)生。我們可通過軟件恢復(fù) ID 位,但這會增加軟件開銷,并擴(kuò)大不必要的復(fù)雜性。 在四通道順序工作模式下,我們可通過特定方法來對 ADS8361 進(jìn)行初始化,這樣就能保證通道的完整性,而根本無需破譯 ID 位。如果使用GPIO,我們可在程序開始處用簡單的軟件循環(huán) (software loop)來完成上述工作,從而靈活地對 A0、M0 與 M1輸入的狀態(tài)進(jìn)行操控。此外,我們也可以完全忽視第一組轉(zhuǎn)換結(jié)果。默認(rèn)狀態(tài)下,ADS8361 啟動 Mode I;如果啟動時(shí) M0 和 M1 固定為VCC ,那么器件在第二次轉(zhuǎn)換周期會進(jìn)入 Mode IV 工作模式,這使第三次 SPI 傳輸開始提供 A0 通道的數(shù)據(jù),隨后順序提供B0、A1 和 B1 通道的數(shù)據(jù)。 結(jié)語 與 MSP430處理器的 USI 端口配合使用高性能 ADS8361,這是一項(xiàng)相對簡單而直接的工作,幾乎不會造成什么軟件開銷,也不需要像前代 MSP430產(chǎn)品中老式的 UART 端口那樣采用簡單的 8 位 SPI 接口來移動或連接轉(zhuǎn)換結(jié)果。本文介紹的接口方式為那些要求多通道同時(shí)進(jìn)行數(shù)據(jù)采集的MSP430 應(yīng)用帶來了更高的靈活性。 |