HPM67/63/62系列中幾個常見應(yīng)用需求
輸出固定個數(shù)的脈沖
伺服應(yīng)用中需要輸出正交的固定脈沖反饋當(dāng)前運動位置
步進電機控制應(yīng)用需要MCU輸出指定脈沖個數(shù),配置運行步長
常規(guī)方法是配置PWM或GPTIMER,在每個脈沖輸出后在中斷中計數(shù),最后軟件封波
高速、大數(shù)據(jù)量ADC采樣
光伏上拉弧檢測需要采集多路ADC通道實現(xiàn)FFT運算,采集數(shù)據(jù)量大,采樣頻率高
電能質(zhì)量檢測需要采集多路電流電壓數(shù)據(jù)
ADC模塊中雖然有序列采樣DMA模式,但沒有序列模式DMA轉(zhuǎn)換完成中斷,需要通過HDMA實現(xiàn)轉(zhuǎn)換搬移,需要占用DMA通道。對于HPM67/63/62只有8個通道,會影響到其他應(yīng)用使用DMA
LED顯示屏驅(qū)動
大屏LED顯示需要確定固定脈沖個數(shù)和相位
通常只能靠硬件指令控制延遲
本文以正交輸出脈沖和ADC序列采樣為例介紹QEI靈活計數(shù)功能
QEI功能簡介
支持A,B,Z,H四個信號輸入
輸入信號來自互聯(lián)管理器TRGM
來自TRGM的輸入輸出IO
來自其他片上模塊
多種計數(shù)方式
支持單相、兩相 (正交/上下/方向脈沖)方波輸入
多個計數(shù)器
相位計數(shù)器,即位置計數(shù)器
Z相計數(shù)器,即周數(shù)計數(shù)器測速計數(shù)器
測定A,B相信號保持特定狀態(tài)的時長,可反應(yīng)電機轉(zhuǎn)速信息
位置匹配
支持位置進行匹配檢測。當(dāng)電機運行到指定位置時,產(chǎn)生位置匹配標(biāo)志事件
該事件可以觸發(fā)中斷,DMA 請求,也可以作為事件輸出
定時器計數(shù)器
32位,全局計數(shù)器
輸出固定脈沖原理
程序中使用了PWM、互聯(lián)管理器、QEI三個模塊
PWM負(fù)責(zé)輸出脈沖和通過故障輸入封鎖脈沖
互聯(lián)管理器負(fù)責(zé)實現(xiàn)模塊之間互聯(lián)
QEI負(fù)責(zé)脈沖計數(shù)和計數(shù)比較產(chǎn)生故障信號,用于封波控制
通過軟件配置,不需要額外中斷,內(nèi)部連接不需要外部引腳連線
正交脈沖輸出的PWM配置
正交脈沖輸出配置
配置比較器值位于周期的1/4和3/4處
每個輸出都包含2個比較器,A相為比較器0、1,B相為比較器2、3
封波狀態(tài)
封波時輸出電平均為低
封波后需通過軟件恢復(fù)輸出
QEI脈沖輸入配置
配置比較輸出通道8作為內(nèi)部輸出,與A、B脈沖輸出獨立,配置相位時更靈活
通過比較器配置可以選擇封波時刻
使能內(nèi)部故障封波
使能內(nèi)部故障0作為封波信號
禁止硬件恢復(fù)脈沖輸出
正交脈沖輸出的QEI配置
QEI模式
設(shè)置為方向+脈沖模式
脈沖計數(shù)時是上下沿同時計數(shù),即單個脈沖計兩次
禁止Z信號復(fù)位相位計數(shù)器
使能位置匹配功能
使能位置匹配功能,并允許匹配事件輸出
正交脈沖輸出的互聯(lián)管理器配置
互聯(lián)管理器功能
多路復(fù)選器(MUX)陣列
支持多個輸入和多個輸出
每個輸出都可以單獨配置,從眾多輸入中選擇
輸入信號數(shù)字濾波器
輸出信號極性取反
信號邊沿到脈沖轉(zhuǎn)換
DMA 請求管理,管理 PWMT,QDEC 和 HALL 的 DMA 請求
互聯(lián)管理器配置
關(guān)聯(lián)PWM 8通道輸出至QEI脈沖輸入
禁止QEI的Z信號和方向信號
關(guān)聯(lián)QEI事件輸出至PWM故障信號0
設(shè)置輸出脈沖個數(shù)
PWM設(shè)置
停止PWM模塊,復(fù)位時基
根據(jù)方向配置A、B相輸出相位
軟件恢復(fù)PWM輸出
恢復(fù)PWM時需注意:GCR寄存器的FAULTCLR寫1后,故障清除;隨后需要把FAULTCLR位清0,否則再下一次故障發(fā)生后,當(dāng)故障消除后PWM還會自動恢復(fù)
啟動PWM
QEI配置
復(fù)位QEI計數(shù)器
配置計數(shù)比較器,考慮QEI為上下沿計數(shù),配置計數(shù)值為:計數(shù)值*2-1
開啟計數(shù)
正交脈沖輸出波形
上圖是正交脈沖輸出的波形
棕色是A相輸出、灰色是B相輸出、紅色是QEI計數(shù)事件
程序設(shè)置為輸出10個脈沖、正轉(zhuǎn)
不增加中斷需求,減少軟件開銷
ADC序列模式中DMA連續(xù)轉(zhuǎn)換
程序中使用了PWM、互聯(lián)管理器、ADC、QEI四個模塊
PWM負(fù)責(zé)定時輸出脈沖
互聯(lián)管理器負(fù)責(zé)實現(xiàn)模塊之間互聯(lián)
ADC啟動序列DMA轉(zhuǎn)換,最多轉(zhuǎn)換4906個數(shù)據(jù)
QEI負(fù)責(zé)脈沖計數(shù)并產(chǎn)生計數(shù)比較中斷,中斷切換DMA存儲地址
選用ADC內(nèi)部DMA,不占用HDMA通道
ADC序列模式中DMA連續(xù)轉(zhuǎn)換代碼
PWM、互聯(lián)管理器、QEI配置與前文相似
在QEI匹配中斷中切換DMA目標(biāo)地址
無論是通過HDMA還是ADC內(nèi)部DMA,在完成大數(shù)據(jù)量轉(zhuǎn)換后都需要進入中斷快速處理,QEI+ADC序列模式并不增加額外中斷需求
切換內(nèi)部DMA目標(biāo)地址時,需要復(fù)位內(nèi)部DMA位;否則周期(Cycle)位將無法正確顯示當(dāng)前轉(zhuǎn)換
總結(jié)
QEI可以實現(xiàn)更靈活的計數(shù),并產(chǎn)生相應(yīng)的計數(shù)事件匹配。
互聯(lián)管理器的內(nèi)部互聯(lián)更加自由,不占用外部引腳,可以產(chǎn)生中斷或內(nèi)部事件。
PWM模塊包含多個比較器,可以實現(xiàn)多相位輸出脈沖,控制更靈活、相位精度更高。
通過多種組合用戶可以根據(jù)實際應(yīng)用實現(xiàn)更多功能。
審核編輯:劉清
-
adc
+關(guān)注
關(guān)注
98文章
6391瀏覽量
543757 -
計數(shù)器
+關(guān)注
關(guān)注
32文章
2253瀏覽量
94278 -
LED顯示
+關(guān)注
關(guān)注
0文章
359瀏覽量
37979 -
電機轉(zhuǎn)速
+關(guān)注
關(guān)注
0文章
62瀏覽量
11305 -
觸發(fā)中斷
+關(guān)注
關(guān)注
0文章
11瀏覽量
6556 -
ADC采樣
+關(guān)注
關(guān)注
0文章
134瀏覽量
12818
原文標(biāo)題:經(jīng)驗分享 | 巧用QEI,計數(shù)更靈活
文章出處:【微信號:HPMicro,微信公眾號:先楫半導(dǎo)體HPMicro】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論