<abbr id="kc8ii"><menu id="kc8ii"></menu></abbr>
  • <input id="kc8ii"><tbody id="kc8ii"></tbody></input><table id="kc8ii"><source id="kc8ii"></source></table><kbd id="kc8ii"></kbd>
    <center id="kc8ii"><table id="kc8ii"></table></center>
  • <input id="kc8ii"></input>
    <abbr id="kc8ii"></abbr>
  • <abbr id="kc8ii"></abbr>
  • <center id="kc8ii"><table id="kc8ii"></table></center>
    <abbr id="kc8ii"></abbr>
    你的位置:首頁 > 測試測量 > 正文

    工業分享:基于MPC5634的控制器多路AD采樣的方案設計

    發布時間:2014-10-10 責任編輯:echolady

    【導讀】汽車隊控制系統的要求不斷提升,AD采樣設計模塊也成為汽車控制中不可或缺的部分。AD采樣的速度和精度關系到汽車控制器的執行。本文中詳述了基于MPC5634的控制器多路AD采樣的方案,通過增強型內存訪問(DMA)方式,在自動在增強型隊列式模數轉換器eQADC模塊和RAM之間自動轉移數據,使模擬信號的采集更加精準高效。

    一、增強型存儲器直接訪問(DMA)模塊
     
    DMA控制器是總線上的一個主機,能夠在片內資源(Flash 、RAM和I/O外設等)以及片外資源之間傳輸數據。DMA有32個通道,在某個時刻只能有一個通道成為總線上的主機并進行數據傳輸。為了解決他們之間的沖突,DMA有兩種可編程的優先級機制:固定優先級機制和輪詢優先級機制。一旦一個通道成為主機,該通道將通過先讀再寫的操作方式,把數據從一個存儲器地址傳輸到另一個存儲器地址。每個DMA通道都有一個獨立的傳輸控制描述符(TDCn)。
     
    二、增強型隊列式模數轉換器eQADC模塊
     
    1、eQADC的命令格式
     
    eQADC有配置命令和轉換命令兩種命令格式。配置命令用于對eQADC模塊進行初始化設置,像使能ADC模塊單元,設置時鐘分頻因子,轉換速率因子,使能DMA請求等;轉換命令主要用于設置采集哪個通道,用哪個ADC模塊單元轉換,轉換的結果放在6個結果緩存的哪一個里面,是否對采集的結果進行校正等。
     
     2、eQADC模塊的結構
     
    MPC5634的eQADC模塊有兩個可獨立工作的ADC轉換單元(ADC0和ADC1),40路模擬通道(可擴展),0~5V的轉換范圍,轉換精度有8位、10位、12位三種精度可選,具有軟件和硬件兩種觸發方式,采樣方式有單次方式和連續方式等,ADC的工作時鐘可達15MHz.速率和精度可以滿足汽車控制器的要求。圖1為eQADC模塊的結構框圖,顯示了eQADC模塊的主要組成部分。
     
    工業分享:基于MPC5634的控制器多路AD采樣的方案設計
    圖1:eQADC模塊的結構框圖
     
    3、命令緩存CFIFO的工作機制
     
    eQADC模塊有6個命令緩存CFIFO,每個CFIFO有4個深度,CFIFO有單次掃描和連續掃描的操作模式,配置為不同的掃描模式時,CFIFO就有不同的觸發機制。當配置為單次掃描模式時,每次會使存儲于隊列中的eQADC轉換命令序列執行一次。當設置為連續掃描模式時,只要隊列啟動后,就可以持續的運行。數據的流程如圖2所示。
     
    工業分享:基于MPC5634的控制器多路AD采樣的方案設計
    圖2:數據流程
     [page]
     
    三、多路eQADC采樣程序設計
     
    在這次的設計中,數據的傳輸是通過DMA進行的。多路eQADC采樣程序設計主要包括命令隊列、結果隊列的定義,eQADC的初始化,DMA初始化,觸發CFIFO等。程序的設計流程如圖3。
     
    工業分享:基于MPC5634的控制器多路AD采樣的方案設計
    圖3:程序流程
     
    1、定義數組
     
    本文中cQUEUE0[40]被定義為轉換命令的存儲數組,rQUEUE0[40]被定義為轉換結果的存儲數組。把所有通道的轉換命令分別放在數組cQUEUE0[40]中,最后采集的結果分別放在數組rQUEUE0[40]中,這個可以隨時讀取rQUEUE0[40]中的數據被汽車控制器所用。
     
    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、初始化eQADC
     
    初始化轉換命令的存儲數組cQUEUE0[40],本設計是采用ADC0模塊單元,12位精度,采用校正,一次采集40個通道的模擬量。配置eQADC的寄存器,時鐘分頻因子為2,使能DMA0,DMA1請求等。
     
    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的值。
     
    5、使能DMA請求
     
    設置使能DMA0和DMA1請求。
     
    6、觸發CFIFO0
     
    設置CFIFO0為連續轉換模式,這樣就可以連續、持續地采集信號,并及時把采集的結果放到結果存儲數組中,如此就可以保證汽車控制器在結果存儲數組中所讀取的數據為最新的采集結果,可以使控制器根據最新的數據來控制各個執行器。
     
    相關閱讀:

    【大揭秘】某數字式控制器電磁兼容性設計與分析
    可用語音代替電話鈴聲的留言控制器電路設計
    簡單電路讓數字電源控制器與模擬控制兼容
    要采購轉換器么,點這里了解一下價格!
    特別推薦
    技術文章更多>>
    技術白皮書下載更多>>
    熱門搜索
    ?

    關閉

    ?

    關閉

    国产成年无码AV片在线韩国| 国模无码一区二区三区不卡| 久久青青草原亚洲av无码| 暖暖免费中文在线日本| 亚洲成在人线在线播放无码| 无码精品黑人一区二区三区| 国产精品99久久久精品无码| 亚洲AV中文无码乱人伦在线观看| 本免费AV无码专区一区| 亚洲AV无码一区二区乱子伦| 最近2019在线观看中文视频| 西西4444www大胆无码| 国产久热精品无码激情| 亚洲精品无码久久久久去q| 精品久久久久久无码中文字幕| 最近中文字幕大全免费版在线| 777久久精品一区二区三区无码| 无码国产色欲XXXX视频| 在人线AV无码免费高潮喷水| 一本本月无码-| 亚洲视频无码高清在线| 中文字幕日韩三级片| 最近2019免费中文字幕视频三 | 国产啪亚洲国产精品无码| 天堂√最新版中文在线天堂| 色综合久久综合中文综合网| 最好看的2018中文在线观看| 亚洲一级Av无码毛片久久精品| 国产福利电影一区二区三区久久老子无码午夜伦不 | 蜜桃臀无码内射一区二区三区| 中文字幕有码无码AV| 永久免费av无码网站yy| 曰批全过程免费视频在线观看无码| 成人午夜亚洲精品无码网站| 国产aⅴ激情无码久久| 亚洲国产精品无码av| 亚洲AV无码国产丝袜在线观看| 无码专区—VA亚洲V天堂| 无码国产伦一区二区三区视频| 日韩精品无码熟人妻视频| yy111111电影院少妇影院无码|