《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 解決方案 > 操縱MCU SPI接口以訪問非標準SPI ADC

操縱MCU SPI接口以訪問非標準SPI ADC

2020-01-02
作者:Steven Xie,產品應用工程師
來源:ADI公司
關鍵詞: MCU SPI ADC

  問題:能否用MCU訪問非標準SPI接口?

圖片1.png

  答案:可以,但可能需要做一些額外的努力。

  簡介

  當前許多精密模數轉換器(ADC)具有串行外設接口(SPI)或某種串行接口,用以與包括微控制器單元(MCU)、DSP和FPGA在內的控制器進行通信??刂破鲗懭牖蜃x取ADC內部寄存器并讀取轉換碼。SPI的印刷電路板(PCB)布線簡單,并且有比并行接口更快的時鐘速率,因而越來越受歡迎。而且,使用標準SPI很容易將ADC連接到控制器。

  一些新型ADC具有SPI,但有些ADC具有非標準的3線或4線SPI作為從機,因為它們希望實現更快的吞吐速率。例如,AD7616、AD7606和AD7606B系列有兩條或四條SDO線,在串行模式下可提供更快的吞吐速率。AD7768、AD7779和AD7134系列有多條SDO線,用作SPI主機。用戶在設計微控制器SPI以配置ADC和讀取代碼時往往會遇到困難。

圖片2.png

  圖1.AD7768用作串行主機,具有兩個數據輸出引腳(14001-193)。

  與ADC的標準MCU SPI連接

  SPI是一種同步、全雙工、主從式接口。來自主機或從機的數據在時鐘上升沿或下降沿同步。主機和從機可以同時傳輸數據。圖2顯示了典型的4線MCU SPI接口連接。

圖片3.png

  圖2.與ADC從機的標準MCU SPI連接

  要開始SPI通信,控制器必須發送時鐘信號,并通過使能信號(通常是低電平有效信號)來選擇ADC。SPI是全雙工接口,因此控制器和ADC可以分別通過MOSI/DIN和MISO/DOUT線同時輸出數據??刂破鱏PI接口允許用戶靈活選擇時鐘的上升沿或下降沿來采樣和/或移位數據。為了在主機和從機之間進行可靠的通信,用戶必須遵守微控制器和ADC芯片的數字接口時序規范。

  如果微控制器SPI和ADC串行接口具有標準SPI時序模式,那么用戶設計PCB布線和開發驅動器固件不成問題。但是,有些新型ADC的串行接口端口不是典型的SPI時序模式。MCU或DSP似乎不可能通過AD7768串行端口(一種非標準時序SPI端口)讀取數據,如圖4所示。

  本文將介紹操縱標準微控制器SPI以便與具有非標準SPI端口的ADC接口的方法。

  本文會給出四種通過串行接口讀取ADC碼的解決方案:

  u解決方案1:MCU作為SPI從機,通過一條DOUT線與作為SPI主機的ADC接口。

  u解決方案2:MCU作為SPI從機,通過兩條DOUT線與作為SPI主機的ADC接口。

  u解決方案3:MCU作為SPI從機,通過DMA與作為SPI主機的ADC接口。

  u解決方案4:MCU作為SPI主機和SPI從機,通過兩條DOUT線讀取數據。

圖片4.png


  圖3.SPI數據時鐘時序圖示例

圖片5.png


  圖4.AD7768 FORMATx = 1×時序圖,僅通過DOUT0輸出。

   STM32F429微控制器SPI通過一條DOUT線讀取AD7768代碼

  如圖4所示,當FORMATx = 11或10時,通道0至通道7僅通過DOUT0輸出數據。在標準工作模式下,AD7768/AD7768-4作為主機工作,數據流入MCU、DSP或FPGA。AD7768/AD7768-4向從機提供數據、數據時鐘(DCLK)和下降沿幀使能信號(DRDY)。

  STM32Fxxx系列微控制器廣泛用于很多不同的應用中。該MCU有多個SPI端口,可以使用典型的SPI時序模式將其配置為SPI主機或從機。下文中介紹的方法也可應用于其他具有8位、16位或32位幀的微控制器。

  AD7768/AD7768-4分別為8通道和4通道同步采樣Σ-Δ型ADC,每通道均有Σ-Δ型調制器和數字濾波器,支持交流和直流信號的同步采樣。這些器件在110.8 kHz的最大輸入帶寬下實現了108 dB動態范圍,具備±2 ppm INL、±50 ?V偏置誤差和±30 ppm增益誤差的典型性能。AD7768/AD7768-4用戶可在輸入帶寬、輸出數據速率和功耗之間進行權衡,并選擇三種功耗模式之一以優化噪聲目標和功耗。AD7768/AD7768-4的靈活性使其成為適合低功耗直流和高性能交流測量模塊的可重復使用平臺。遺憾的是,AD7768的串行接口不是典型SPI時序模式,而且AD7768充當串行接口主機。一般而言,用戶必須使用FPGA/CPLD作為其控制器,

  例如,使用32F429IDISCOVERY和AD7768評估板。變通SPI線的連接如圖5所示。在這種設置下,AD7768的所有八通道數據僅通過DOUT0輸出。

圖片6.png

  圖5.AD7768通過DOUT0將數據輸出到STM32F429 MCU SPI連接

  需要解決的問題:

  AD7768用作SPI主機,故必須將STM32F429I SPI配置為SPI從機。

  高電平脈沖只持續一個DCLK周期,這不是典型的。

  完成所有通道數據位的輸出之后,DCLK繼續輸出,為低電平。

  解決方案1:MCU SPI作為從機,通過一條DOUT線與SPI主機ADC接口

  將STM32F429的一個SPI端口(如SPI4)配置為從機,以DCLK速率接收MOSI上的數據位。

  將AD7768 連接到STM32F429外部中斷輸入引腳EXTI0和NSS (SPI )引腳。 的上升沿將觸發EXTI0處理例程,以使SPI從機能夠在變為低電平之后的第一個DCLK下降沿開始接收數據位。時序設計在這里至關重要。

  接收到通道0至通道7的所有數據后,應禁用SPI以防止讀取額外的無效數據,因為會使SPI從機變為低電平,并且DCLK保持切換。

圖片7.png

  圖6.時序解決方案中的AD7768數據位讀取

  MCU固件開發注意事項

  當軟件處于中斷模式時,DCLK運行速率可以高達4 MHz,實現8 kSPS的ODR。軟件應進入中斷處理程序,在一個半DCLK周期(375 ns)內啟動SPI。為使軟件更輕松地進入中斷例程,MCU可以在DCLK上升沿讀取數據,從而提供額外的半個DCLK周期時間。但是,t5 DCLK上升到DOUTx無效最小值為–3 ns(IOVDD = 1.8 V時為–4 ns),因此DOUTx上的傳播延遲(>|t5| + MCU保持時間)應通過PCB布線或緩沖增加。

圖片8.png

  圖7.配置SPI4外設

  解決方案2:MCU SPI作為從機,通過兩條DOUT線與SPI主機ADC接口

  在第一種解決方案中,僅使用DOUT0來輸出所有8通道數據。因此,數據讀取將ADC吞吐速率限制為8 kSPS。如圖1所示,在DOUT0上輸出通道0至通道3,在DOUT1上輸出通道4至通道7,可以減少數據傳輸時間。串行線的連接如圖7所示。通過這種改進,在DCLK為4 MHz時,ODR可以輕松達到16 kSPS。

圖片9.png

  圖8.AD7768通過DOUT0和DOUT1將數據輸出到STM32F429 MCU SPI連接

  固件可以不使用中斷模式,而使用輪詢模式,以減少從上升沿觸發到使能SPI接收數據的時間延遲。這樣可以在DCLK為8 MHz時實現32 kSPS的ODR。

  解決方案3:MCU SPI作為從機,通過DMA與SPI主機ADC接口

  直接存儲器訪問(DMA)用于在外設與存儲器之間以及存儲器與存儲器之間提供高速數據傳輸。DMA可以迅速移動數據而不需要任何MCU操作,這樣可以騰出MCU資源用于執行其他操作。下面是MCU SPI用作從機通過DMA接收數據的設計說明。

  解決方案4:MCU SPI作為主機和從機,通過兩條DOUT線讀取數據

  高吞吐量或多通道精密ADC為SPI端口提供兩條、四條甚至八條SDO線,以在串行模式下更快地讀取代碼。對于具有兩個或更多個SPI端口的微控制器,這些SPI端口可以同時運行以加快代碼的讀取。

圖片10.png

  圖9.EXTI0處于輪詢模式,SPI4和SPI5通過DOUT0和DOUT1接收AD7768數據位。

圖片11.png

  圖10.EXTI0處于輪詢模式,SPI4 DMA通過DOUT0接收AD7768數據位。

  在以下使用案例中,32F429IDISCOVERY使用SPI4作為SPI主機,SPI5作為SPI從機,通過DOUTA和DOUTB接收EVAL-AD7606B-FMCZ數據,如圖8所示。

  AD7606B是一款16位同步采樣模數轉換數據采集系統(DAS),具有八個通道,每個通道均包含模擬輸入箝位保護、可編程增益放大器(PGA)、低通濾波器和16位逐次逼近寄存器(SAR)型ADC。AD7606B還內置靈活的數字濾波器、低漂移2.5 V精密基準電壓源和基準電壓緩沖器,可驅動ADC及靈活的并行和串行接口。AD7606B采用5 V單電源供電,支持±10 V、±5 V和±2.5 V真雙極性輸入范圍,所有通道均能以800 kSPS的吞吐速率采樣。

圖片12.png

  圖11.在主從模式下使用MCU SPI通過DOUTA和DOUTB接收數據

圖片13.png

  圖12.SPI4配置為主機,SPI5配置為從機。

  圖13顯示了AD7606B以240 kSPS運行時BUSY、SCLK、DOUTA和DOUB的數字接口截圖。

圖片14.png

  圖13.AD7606B BUSY、SCLK以及DOUTA和DOUTB上的數據的示波器截圖

  結論

  本文討論了使用微控制器SPI訪問具有非標準SPI接口的ADC的方法。這些方法可以直接使用,也可以稍加調整即可控制ADC SPI;其可作為SPI主機使用,也可以與多條DOUT線配合使用以提高吞吐速率。

  致謝

  非常感謝應用工程師Mika Jiang和Yao Zhao,他們提供了有關STM32F429IDISCOVERY套件快速啟動和固件調試工作的建議。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩视频在线观看| 欧美在线视频不卡| 国产一区免费视频| 国产精品久久77777| 欧美激情在线播放| 美国成人直播| 久久亚洲精品一区二区| 性久久久久久| 亚洲在线一区二区三区| 一区二区三区视频在线播放| 亚洲日本精品国产第一区| 久久精品国产欧美激情 | 国产亚洲欧洲一区高清在线观看| 国产精品黄页免费高清在线观看| 欧美人与禽猛交乱配视频| 欧美激情第4页| 欧美激情aⅴ一区二区三区| 欧美激情精品久久久久久久变态| 欧美电影免费| 欧美精品1区2区3区| 欧美日韩国产一区精品一区 | 99精品视频免费观看视频| 亚洲日本理论电影| av成人国产| 亚洲视频在线观看一区| 亚洲女爱视频在线| 欧美在线一级va免费观看| 久久精品论坛| 久久频这里精品99香蕉| 免费成人性网站| 欧美激情第8页| 欧美视频网址| 国产精品中文字幕欧美| 亚洲国产日韩一区| 欧美一级久久久久久久大片| 亚洲剧情一区二区| 一区二区免费在线播放| 亚洲自拍16p| 欧美一区二区三区免费观看 | 午夜精品在线| 久久久久久电影| 欧美1区免费| 欧美日韩成人在线视频| 国产精品v日韩精品| 国产日韩欧美在线播放不卡| 激情文学综合丁香| 亚洲人精品午夜| 亚洲天堂偷拍| 久久精品国产欧美亚洲人人爽| 亚洲精品偷拍| 亚洲尤物影院| 久久青青草综合| 欧美日本成人| 国产视频精品va久久久久久| 亚洲承认在线| 亚洲视频一区| 久久国产精品一区二区三区四区| 亚洲免费精彩视频| 午夜伦欧美伦电影理论片| 美女日韩欧美| 国产精品久久久999| 精品av久久久久电影| 日韩图片一区| 欧美一级电影久久| 亚洲理论在线| 久久大香伊蕉在人线观看热2| 欧美大秀在线观看| 国产精品三上| 亚洲国产免费看| 亚洲在线第一页| 亚洲精品日本| 欧美在线首页| 欧美日韩国产综合视频在线观看中文 | 欧美精品久久天天躁| 国产三级欧美三级日产三级99| 亚洲国产综合在线| 欧美一区久久| 亚洲一区二区在| 免费成人av在线| 国产精品羞羞答答xxdd| 亚洲黄色高清| 久久成年人视频| 亚洲淫性视频| 欧美激情一二区| 国产有码在线一区二区视频| 一本一本大道香蕉久在线精品| 亚洲高清久久网| 欧美一区二区三区在线观看| 欧美日本免费| 在线观看成人av| 羞羞答答国产精品www一本| 亚洲桃花岛网站| 欧美大片一区| 在线精品国精品国产尤物884a| 亚洲综合视频1区| 国产精品99久久不卡二区| 欧美~级网站不卡| 国产亚洲欧美激情| 亚洲一区二区三区高清| 一区二区三区国产| 欧美激情四色| 亚洲成色精品| 亚洲第一精品夜夜躁人人躁| 香港久久久电影| 国产精品久久久91| 一本色道88久久加勒比精品| 亚洲美女色禁图| 欧美va天堂va视频va在线| 国产一区二区三区在线观看精品 | 99国产欧美久久久精品| 最近看过的日韩成人| 久久久久久久久久久久久久一区| 国产精品男女猛烈高潮激情| 日韩亚洲一区在线播放| 日韩一区二区精品| 欧美成人一区二区| 在线观看视频日韩| 亚洲国产欧美一区二区三区同亚洲| 久久精品麻豆| 国产一区二区三区视频在线观看| 性欧美videos另类喷潮| 久久电影一区| 国产一区二区中文| 久久超碰97中文字幕| 久久久夜夜夜| 精品51国产黑色丝袜高跟鞋| 久久国内精品视频| 久久香蕉精品| 在线成人中文字幕| 亚洲乱码日产精品bd| 欧美精品久久久久久久| 亚洲伦理久久| 亚洲神马久久| 国产精品激情电影| 亚洲女同性videos| 久久精品国产精品亚洲精品| 国外成人在线| 亚洲国产精品悠悠久久琪琪 | 欧美日韩精品一区二区天天拍小说| 亚洲日产国产精品| 亚洲视频www| 国产精品三级久久久久久电影| 午夜精品久久久久久久久| 久久xxxx精品视频| 国内外成人免费视频| 亚洲国产精品一区二区三区| 欧美国产日韩二区| 一本一本久久| 欧美专区18| 在线观看成人小视频| 亚洲精品日韩在线观看| 欧美视频手机在线| 香港久久久电影| 每日更新成人在线视频| 亚洲免费成人av| 亚洲欧美三级伦理| 国产伊人精品| 日韩视频欧美视频| 国产精品卡一卡二| 久久狠狠婷婷| 欧美日本一区| 午夜欧美大片免费观看| 看片网站欧美日韩| 99视频超级精品| 久久超碰97人人做人人爱| 在线观看国产精品网站| 在线综合欧美| 国产日本欧美一区二区三区在线| 亚洲大胆视频| 欧美日韩日韩| 欧美一区不卡| 欧美精品色网| 性欧美xxxx大乳国产app| 欧美好吊妞视频| 亚洲一区国产视频| 欧美va天堂| 亚洲欧美激情一区二区| 欧美1区2区| 亚洲免费网址| 欧美激情第一页xxx| 午夜精品免费视频| 欧美精品v日韩精品v韩国精品v | 欧美精品午夜| 午夜在线观看欧美| 欧美片第一页| 欧美在线免费观看| 欧美视频亚洲视频| 亚洲国产天堂久久综合网| 国产精品分类| 亚洲人www| 国产日韩亚洲欧美精品| 一本一本久久a久久精品综合麻豆| 国产三级精品三级| 亚洲天堂免费观看| 在线看片日韩| 欧美在线视频观看免费网站| 亚洲美女视频在线免费观看| 久久天堂成人| 亚洲一区国产视频| 欧美日韩精品免费观看|