国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于MPC5634的汽車控制器多路AD采樣的設計

發布時間:2014-12-15 11:38    發布者:designapp
關鍵詞: 多路AD采樣 , MPC5634 , eQADC , DMA , 校正

        隨著汽車對控制系統的要求和依賴性提高,AD采樣的設計模塊成為汽車控制器中重要的組成部分。AD采樣的結果是汽車控制器控制執行器的依據,它的速率和精度在汽車控制中起著重要的作用。
本文主要介紹一種基于MPC5634的多路模擬信號采集方法,通過增強型直接內存訪問(DMA)方式,自動在RAM和增強型隊列式模數轉換器eQADC模塊之間轉移數據,能高效和準確地完成對模擬信號的采集。
1 增強型隊列式模數轉換器eQADC模塊
1.1 eQADC模塊的結構
MPC5634的eQADC模塊有兩個可獨立工作的ADC轉換單元(ADC0和ADC1),40路模擬通道(可擴展),0~5V的轉換范圍,轉換精度有8位、10位、12位三種精度可選,具有軟件和硬件兩種觸發方式,采樣方式有單次方式和連續方式等,ADC的工作時鐘可達15MHz。速率和精度可以滿足汽車控制器的要求。圖1為eQADC模塊的結構框圖,顯示了eQADC模塊的主要組成部分。



圖1 eQADC模塊的結構框圖





       
1.2 命令緩存CFIFO的工作機制
eQADC模塊有6個命令緩存CFIFO,每個CFIFO有4個深度,CFIFO有單次掃描和連續掃描的操作模式,配置為不同的掃描模式時,CFIFO就有不同的觸發機制。當配置為單次掃描模式時,每次會使存儲于隊列中的eQADC轉換命令序列執行一次。當設置為連續掃描模式時,只要隊列啟動后,就可以持續的運行。數據的流程如圖2所示。


圖2 數據流程


1.3 eQADC的命令格式
eQADC有配置命令和轉換命令兩種命令格式。配置命令用于對eQADC模塊進行初始化設置,像使能ADC模塊單元,設置時鐘分頻因子,轉換速率因子,使能DMA請求等;轉換命令主要用于設置采集哪個通道,用哪個ADC模塊單元轉換,轉換的結果放在6個結果緩存的哪一個里面,是否對采集的結果進行校正等。
2 增強型存儲器直接訪問(DMA)模塊
DMA控制器是總線上的一個主機,能夠在片內資源(Flash、RAM和I/O外設等)以及片外資源之間傳輸數據。DMA有32個通道,在某個時刻只能有一個通道成為總線上的主機并進行數據傳輸。為了解決他們之間的沖突,DMA有兩種可編程的優先級機制:固定優先級機制和輪詢優先級機制。一旦一個通道成為主機,該通道將通過先讀再寫的操作方式,把數據從一個存儲器地址傳輸到另一個存儲器地址。每個DMA通道都有一個獨立的傳輸控制描述符(TDCn)。




       

3 多路eQADC采樣程序設計
在這次的設計中,數據的傳輸是通過DMA進行的。多路eQADC采樣程序設計主要包括命令隊列、結果隊列的定義,eQADC的初始化,DMA初始化,觸發CFIFO等。程序的設計流程如圖3。



圖3 程序流程


3.1 定義數組
本文中cQUEUE0[40]被定義為轉換命令的存儲數組,rQUEUE0[40]被定義為轉換結果的存儲數組。把所有通道的轉換命令分別放在數組cQUEUE0[40]中,最后采集的結果分別放在數組rQUEUE0[40]中,這個可以隨時讀取rQUEUE0[40]中的數據被汽車控制器所用。
3.2 初始化DMA
TCD0對應于CFIFO0,TCD1對應于RFIFO0。由于本設計只要一個命令緩存CFIFO0和一個結果緩存RFIFO0就可以滿足設計要求,故只用到一個CFIFO0,一個RFIFO0,以及與他們對應的TCD0和TCD1。設置TCD0:源地址為&cQUEUE0,目的地址為0xFFF80010,源地址偏移為4,傳輸的大小為32位,次要字節傳輸數NBYTES為2;主迭代數為40;設置TCD1:源地址為&rQUEUE0,目的地址為0xFFF80032,源地址偏移為4,傳輸的大小為16位,次要字節傳輸數NBYTES為2;主迭代數為40。
3.3 初始化eQADC
初始化轉換命令的存儲數組cQUEUE0[40],本設計是采用ADC0模塊單元,12位精度,采用校正,一次采集40個通道的模擬量。配置eQADC的寄存器,時鐘分頻因子為2,使能DMA0,DMA1請求等。
3.4 校正寄存器的設置
本項目的芯片功能很強大,以前的校正都需要外面加硬件來校正采樣結果,MPC5634自帶的有校正功能,本項目采用的校正是這樣的:ADC的初步轉換結果將通過MAC單元來完成校正。MAC單元執行下列算法來進行校正:
  Idealresult=GCCXADCresult+OCC+2 (1)
GCC為增益校正的常數,它是在寄存器ADCn_GCCR中定義的;OCC為偏移量校正常數,它在寄存器ADCn_OCCR中定義的。
GCCR與OCCR的值是需要計算來確定的。通過以下公式進行求解:
  Idealresult1=GCCXADCresult1+OCC+2 (2)
  Idealresult1=GCCXADCresult1+OCC+2 (3)
為了求出GCCR與OCCR的值,我們只需要兩個通道的理想結果和實際的結果就行了,通道44和通道43的電壓值分別對應0.25Vdd和0.5Vdd。而他們的實際結果可以采集到。因此,可以求出GCCR和OCCR的值。
3.5 使能DMA請求
設置使能DMA0和DMA1請求。
3.6 觸發CFIFO0
設置CFIFO0為連續轉換模式,這樣就可以連續、持續地采集信號,并及時把采集的結果放到結果存儲數組中,如此就可以保證汽車控制器在結果存儲數組中所讀取的數據為最新的采集結果,可以使控制器根據最新的數據來控制各個執行器。




       

4 主程序和執行結果
  void main(void)
  {
  uint32_t cQUEUE0[40]; //定義命令存儲數組
  uint16_t rQUEUE0[40]; //結果存儲數組
  dma_init_fnc(); //DMA初始化
  eqadc_init_fnc (); //eQADC初始化
  set_calconstants ();//校正寄存器的設置
  dma_able();//使能DMA0,DMA1
  cfifo0_trig();//使能DMA0,DMA1
  while(1)
  {
  }
  }
5 結束語
本設計完成了汽車控制器的采樣模塊的設計,它保證在時間上和精度上滿足汽車控制器的要求。通過不斷地測試,該設計達到了系統所要求的性能和功能。



本文地址:http://www.qingdxww.cn/thread-135040-1-1.html     【打印本頁】

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

廠商推薦

  • Microchip視頻專區
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點宏來節省時間和空間
  • Dev Tool Bits——使用DVRT協議查看項目中的數據
  • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監視
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国语精品91自产拍在线观看二区 | 六月婷婷色 | 国产又黄又刺激又爽视频黄 | 色综合视频一区二区观看 | 日本亚洲高清 | 国产一级片观看 | 久草青青在线 | 欧美在线成人午夜网站 | 欧美精品一区二区三区免费播放 | 国产午夜一级淫片 | 国产精品毛片在线更新 | 两个人在线观看视频bd | 99久久精品国内 | a级黄色毛片三个搞一 | 男女免费观看视频 | 免费久久精品国产片香蕉 | 狠狠色丁香婷婷久久综合不卡 | 可以免费看黄网站 | 在线播放日本 | 国产 欧美 日韩在线 | 国产福利小视频高清在线观看 | 婷婷五月天.com | 妈妈的朋友韩国在线播放 | 色丁香在线 | 国产精品久久久久毛片 | 国产91香蕉在线精品 | 狠狠色婷婷综合天天久久丁香 | 91香蕉国产亚洲一二三区 | 欧美黄色免费在线观看 | 亚洲一级大片 | 老师让我她我爽了好久老 | 亚洲成年人在线 | 女老师韩国 | 草比网| 亚洲第一黄色网址 | 精品在线观看免费 | 久久久久免费视频 | 国产一区二区三区毛片 | 女人l8毛片a级18女人水真多 | 久久亚洲免费视频 | 99re这里只有热视频 |