會員登陸
帳號:

密碼:

記住我



忘記密碼?

現在註冊!
網站導航
最新下載
訪問統計 (自2012/5/3)


正在流覽:   1 名訪客





關於 Curiosity pic32mx470 的頻率設定與PWM訊號
新會員
註冊日期:
2015/12/28 16:20
所屬群組:
註冊會員
文章: 9
等級: 1; EXP: 86
HP : 0 / 21
MP : 3 / 161
離線
關於頻率設定的問題,我使用MCC :
設定System Module
1. Internal Oscillator設定是 20MHz 為 Primary Oscillator Clock Source

2. PLL Enable
4MHz "5xDivider" PLL input
80MHz "20:1" Multiplier
80MHz "1:1" Divider

Peripheral Clock Divisor "DV_1"

80MHz SYSCLK
80MHz PBCLK

從 Easy Setup 與 Registers 裡面看設定都沒有問題

TMR2 介面設定 OC4 介面設定 :
Timer Clock : Compare Mode :

Clock Source "PBCLK" Dual Compare Countinuous Pulse mode
Input frequency "80MHz" Buffer Mode "16bit"
Prescaler "1:1" Timerbase "TMR2"

Timer Period :

period count "0x64"
Timer Period "1.25us"

以上設定是我依據 Datasheet 提供的內容設定我的需求,PWM訊號也依據提供的公式計算過。

問題是在示波器顯示的Period卻是 2.525us 左右

我能確定不是示波器的問題,因為在以上相同的設定下:
我把Internal Oscillator設定為 10MHz 時,輸出period亦為預期的1.25us,計算的 PR2 也如設定上的 Period Count (0x32) 相等。

只是變動 Internal Oscillator 為何輸出period會產生2倍的差異??

請問是何處影響了結果??

感謝指教。

6月27日 10:21:25
轉換PDF檔 列印


Re: 關於 Curiosity pic32mx470 的頻率設定與PWM訊號
新會員
註冊日期:
2015/12/28 16:20
所屬群組:
註冊會員
文章: 9
等級: 1; EXP: 86
HP : 0 / 21
MP : 3 / 161
離線
只要更動Clock source (Primary Oscillator) 的數值,經過Multiplier、Divider、Peripheral Clock Divisor 倍頻除頻後,即便PBCLK 和 PR2 數值沒有更動,輸出的 PWM Period 還是會有變化。

例如 :
Clock Source = 20MHz , PBCLK = 80MHz , PR2 = 100(0x64) ; 示波器上看到的是2.526us

Clock Source = 40MHz , PBCLK = 80MHz , PR2 = 100(0x64) ; 示波器上看到的是5.049us

依據 PIC32RefManual-Dec2013 資料提供的PWM計算公式,理論結果都沒有問題,但是實際顯示在示波器上有問題。


請問是哪裡出問題或是我搞錯了文件的意思嗎?

感謝。

昨天 16:40:38
轉換PDF檔 列印


Re: 關於 Curiosity pic32mx470 的頻率設定與PWM訊號
資深會員
註冊日期:
2007/06/05 21:45
所屬群組:
註冊會員
文章: 978
等級: 27; EXP: 73
HP : 0 / 668
MP : 326 / 21712
離線
沒附圖也沒看到真實(實驗)的狀況...

猜一下,可能合理的原因

把其他不變都去除後,只剩四個數字
20MHz, 2.526us
40MHz, 5.049us
其中
40MHz與20MHz是兩倍與1/2關係
2.526us與5.049us基本上也是兩倍與1/2關係
註:2.526*2應該是5.052, 5.049/2應該是2.5245
基本上這是量測誤差範圍,不影響兩倍與1/2關係

從這堨h回推找答案,可能會快一點...

今天 10:48:17
轉換PDF檔 列印


Re: 關於 Curiosity pic32mx470 的頻率設定與PWM訊號
新會員
註冊日期:
2015/12/28 16:20
所屬群組:
註冊會員
文章: 9
等級: 1; EXP: 86
HP : 0 / 21
MP : 3 / 161
離線
Hi jason680 :

20MHz 與 40MHz 都是 Clock source(Primary oscillator)

但是 PWM 設定上吃的是 Timer2 的 PBCLK 頻率 , 照理來說輸出應該不會受影響。

Clock source 回推的方式去想 :

我想法猜測是因為指令週期 (TOSC = 1/FOSC = TCY) 的關係,但是PIC32RefManual-Dec2013 資料中提供的公式 :
PWM Period = [(PR + 1) • TPB • (TMR Prescale Value)]
(TPB = 1/PBCLK )

沒有提到和指令週期有關,因為此處設定的 PBCLK 都是一樣的,產生兩倍的差異,小弟不解何原因及原理概念。

或許也是小弟有地方解讀錯誤,還請高手指點。

今天 11:44:44
轉換PDF檔 列印






無法在此發表文章
可以在此觀看文章
無法回覆文章
無法編輯自己的文章
無法刪除自己的文章
無法發起投票調查
無法在此投票
無法上傳附加檔案
無法不經審核直接發表文章

[進階搜尋]


搜尋
Microchip連結

網頁捷徑
2018 Winter Elite 報名
教育訓練
其它網站連結
電話: 02-25000405
產品技術問題產品技術支援專線:0800-717718 台北02-25088600 新竹03-5778366 Ext. 8600 高雄07-2137830 MicrochipDIRECT 專線: 07-2137830
Powered by XOOPS © 2001-2012 The XOOPS Project