1. 程式人生 > 其它 >CCU 的CCPOS0 CCPOS1 CCPOS2 配置成輸入引腳並進行測試

CCU 的CCPOS0 CCPOS1 CCPOS2 配置成輸入引腳並進行測試

資料型別

IfxCcu6_PwmBc_Pins 資料型別的變數 pwm_pins

CCPOS0 輸入引腳的配置

暫存器顯示

現在

已經更改過來

第二步

現在CCU6的 CCPOS0 CCPOS1 CCPOS2 已經設定為輸入了,

現在設定 同步事件 T12MSEL 的HSYNC 位閾是 100B

表示在T12的週期匹配事件 取樣HALL的CCPOS0 CCPOS1 CCPOS2 輸入

還是改為4

T12的週期匹配 而且在上升邊沿計數 。

第三步驟 :

設定 T12MSEL 的值 均工作在霍爾模式

在捕獲模式或者比較模式 CC60ST 存放的是比較輸出值 或者捕獲輸入值

但是如果設定了通達是霍爾模式

則只有在 HCRDY 到來的時候,才可以將CCPOS0 CCPOS CCPO2 的值匯入到對應的位閾值中。

而HCRDY 的訊號的到來,還需要設值 DBYP=0

而且需要設定一個延時

設定了 10個 T12CLK 時鐘週期

初步設定完成以後, 檢視一個各個暫存器的配置

T12DTC 暫存器

現在我認為可以 改變一下 ccpos0 (P13.1 ) CCPOS1 (P13.2) CCPOS2 (13.3)

的電平值

然後看一下 CMPSTAT 相應的CMPSTAT 的位閾

然後我給P13.1 接入一個高電平 發現他的值CMPSTAT 中CCPOS0 確實發生了變化

然後我現在改變 P13.2 接入一個高電平 發現CMPSTAT 的CCPOS1 變為了1

然後我給P13.3 接入一個高電平 ,發現CMPSTAT 的CCPS2 變為了1

至此我認為 當 CCPS0 CCPOS1 CCPOS2 用T12的通道1 的週期中斷的方式進行 觸發取樣, 然後由 DTM 延時10個時鐘週期以後, HCRDY訊號有效 觸發了CCPOS0

CCPOS1 CCPOS2 的同步取樣 並且把相應的狀態更新寫進入了 CPMSTAT 中對應的位閾值 CCPOS0 CCPOS1 CCPOS2

為了進一步驗證 如果我不設定T12的週期中斷 會怎樣

發現改變任何一個P13.1 P13.2 P13.3 任何一個引腳的電平值

暫存器CMPSTAT 中對應的位閾都不會改變 。

為了進一步驗證,霍爾輸入CCPOS0 CCPOS1 CCPOS2 的評估條件改回

T12週期觸發 然後不用延時功能

發現可以正常檢測 。

文章以及程式的百度網盤連結 百度網盤檔名 20220110CCU單元ccpos0配置為輸入方法以及程式測試