選擇MAXQ2000微控制器和MAX1132 ADC接口的SPI時鐘模式
要:MAXQ2000可采用不同的時鐘模式與MAX1132接口,包括8位、16位或兩者組合。本應用筆記說明了如何選擇SPI™時鐘模式,以優化MAX1132性能。該應用筆記包含了完整的原理圖、微控制器固件以及C程序例程,程序在用于MAXQ®的IAR Embedded Workbench®環境中編寫并編譯。
MAX1132說明
MAX1132為200ksps、16位ADC。MAXQ2000可采用不同的時鐘模式與MAX1132接口:包括8位、16位或兩者組合。為使ADC性能最優,在開發的初始階段決定采采用何種模式非常重要。顯然,每幀包括16個時鐘周期的16位ADC應采用16位模式;然而,在ADC采用每幀包括24個時鐘周期的特定情況下,必須仔細評估SPI時鐘模式。本應用筆記提供了采用8位、16為及兩者組合模式的測試結果,根據結果可以看出在MAX1132采用24時鐘幀格式時,使用組合模式可獲得最佳性能。
硬件說明
該應用電路采用MAX1132評估板和MAXQ2000評估板實現。
圖1所示為MAX1132評估板原理圖,圖2給出了系統的配置圖。為連接MAX1132評估板與MAXQ2000評估板,將MAX1132評估板上的SCLK、/CS、DOUT和DIN引腳連接至MAXQ2000評估板,如圖2所示。另外,在評估板上的AVDD和AGND端口接入一個+5V電源。評估板的JU1的必須安裝在1–2 (ON)位置。在JU2上連接最高+12V的模擬信號,其它跳線開路。為保證系統正常工作,MAXQ2000評估板的SW3必須關閉。
圖1. MAX1132評估板原理圖
圖2. 用于評估不同SPI時鐘模式的硬件系統框圖。
分析
最簡單、最靈活的SPI時鐘模式是8位模式,因為3個字節非常適合24時鐘幀格式,而MAX1132正好需要24個時鐘完成數據幀的傳輸。發送至從機的最高字節用作控制字(0x80)。其中最高位通知從機開始轉換,因此非常重要(控制字格式請參考MAX1132數據資料)。兩個低字節是從ADC接收到的數據。理想情況下,MAXQ2000的SPI串口時鐘工作在4MHz,ADC的最高采樣速率應可達到166.67ksps左右。表1所示為分配給每路ADC信號的示波器通道。
表1. 示波器通道分配
Channel | Signal |
1 | CS-bar |
2 | SCLK |
3 | DIN |
4 | DOUT |
在8位模式下,MAX1132的采樣速率約為63.7ksps。該速率低于所要求采樣速率,因為串行時鐘包括下述延遲:SCLK變高時/CS拉低,一組時鐘轉變到下一組時鐘,/CS變高時SCLK拉低,以及在另一次采用開始之前/CS保持高電平(圖3)。

圖3. 8位模式下采樣示例
當SPI時鐘為16位模式時,需要兩組16個時鐘(總共32個時鐘)。第一個16個時鐘的高字節為微控制器發出的控制字,接下來的字節為從ADC接收到的數據的高字節。在第二個16個時鐘內,數據的低字節是從ADC接收到的。這一幀當中剩余的8個時鐘在傳輸連續數據時必須采用同樣的速率。圖4所示采樣速率為63.7ksps,與8位模式下速率相同。

圖4. 16位模式下采樣示例
更好的方法是首先采用8位SPI模式發送控制字節,然后切換到16位SPI時鐘模式接收從ADC得到的采樣數據(圖5)。這樣做的優點是不用將數據分別分割到不同的時鐘組,并且不會浪費任何時鐘周期。在組合模式下,采樣速率為70.4ksps,高于8位模式和16位模式速率。

圖5. 組合模式下的實例,即采用8位模式發送控制字節,然后采用16位模式接收ADC的采樣數據
上述實例中,采集到的數據可采用表2時間表歸納。組合模式是獲取MAX1132最佳性能的理想選擇。該模式采用最少的時鐘組,單幀時鐘數最少。分別采用8位模式或16位模式時均達不到組合模式的采樣速率。
表2. 不同時鐘模式下,單采樣周期的延時
Interval | Sample Time, 8-Bit Mode |
Sample Time, 16-Bit Mode |
Sample Time, Combination Mode |
CS-bar low to SCLK high | 560ns | 760ns | 960ns |
Between 1st and 2nd clock sets | 2.32µs | 3.20µs | 2.36µs |
Between 2nd and 3rd clock sets | 3.12µs | — | — |
SCLK low to CS-bar high | 2.52µs | 2.60µs | 3.60µs |
CS-bar high | 1.48µs | 1.44µs | 1.48µs |
Clock time (1/SCLK x clocks/frame) |
6.0µs | 8.0µs | 6.0µs |
Approximate total for one sample | 15.7µs = 63.7ksps | 15.7µs = 63.7ksps | 14.2µs = 70.4ksps |
固件說明
C程序文件(在用于MAXQ的IAR Embedded Workbench環境下編寫并編譯)允許MAXQ2000 SPI接口采用組合模式與MAX1132進行通信。MAXQ2000的系統時鐘為16MHz時,SPI的串行時鐘為4MHz。
IAR Embedded Workbench是IAR Systems AB的注冊商標。
MAXQ是Maxim Integrated Products, Inc.的注冊商標。
SPI是Motorola, Inc.的商標。
評論