-
前言
56F8xxxx 系列是主流的 DSC 產品,基於 32 位增強 DSC 核心,性能高達 100 MIPS,主要針對高性能電力轉換和先進電機控制應用。另外由於其多了 OPA 放大器功能,可以用來放大 shunt 差分電流信號,於電機控制及電力轉換中十分方便,並可減去外部 OPA IC。本篇博文將介紹如何使用 NXP SDK 搭配 MC56F80000-EVK 來應用 OPA 差分信號放大的功能。會使用其中一組 PWM 搭配低通濾波器輸出信號至 OPA+,其中 PWM duty 會逐漸增加用以模擬類比輸入,最後可於示波器上看到 OPA 將信號放大十倍的波形
-
事前準備
- MC56F80000-EVK
- 個人電腦
- CodeWarrior_11.2
- Config tools_13.1
- SDK_2_12_0_MC56F80000-EVK from SDK builder
-
Block diagram
-
硬體 Jump 配置
-
放大倍率預設為 10 倍 ( 開發板預設周邊電阻配置 ),可參考下圖自行調整倍率
-
將 MCUXpresso 的 OPA 範例導入至 CodeWarrior
-
開啟 Config tools 並 follow 以下流程
-
開啟 CodeWarrior 並 follow 以下流程
-
-
導入成功後開啟 Config tools 並 follow 以下流程
-
配置 OPA 腳位,需與 EVK 同步
-
點擊右上角 icon 進入腳位配置頁面
-
取消 OPAMPB 所有路由
-
開啟 OPAMPA 的對應腳位功能
-
-
配置外設功能
-
添加 OPAMPA 外設
-
將 OPA 配置調整如圖
-
-
點擊更新代碼
-
-
開啟 CodeWarrior 並更新 opamp.c 的代碼,使其能夠直接連動 config tool 產生的配置
添加 PWM DAC 功能模擬差分信號變化
-
於腳位配置頁面增加 pin53 PWMA_3B 腳位功能,此訊號與開發板 DAC 低通濾波電路整合
-
於外設功能頁面添加 eFlexPWM 模組
-
將 PWM 配置設定如下圖,以下設定能於初始化後輸出 50% Duty cycle ( 5000 / 10000 ( VAL5 / VAL1 ) )、10kHz PWM ( 100MHz / 10000 ( VAL1 ) )
-
配置完成後點擊”更新源代碼”即可自行產生代碼
-
開啟 CodeWarrior 並更新 opamp.c main() 的代碼,以下代碼能使 PWM duty cycle 以 5 秒為一個週期逐漸增加至 100% 後歸零
燒錄韌體至 MCU
-
開啟 Debug Configurations
-
選擇 opamp_basic_flash_ldm_lpm_debug_OSJTAG 後點擊 Debug
測試 DAC 與 OPA 整合效果
-
硬體除了上述 JP 配置外,另外需將以下腳位進行連接
- J15-2 ( ch2 信號量測點 ) → GA1_OPA_P
- ADC_MID → GND
- GA0_IN → GND
- J23 ( ch1 信號量測點 )
-
訊號量測出來之波形,開發板上預設的周邊電阻匹配為 10 被放大,由下圖可以看到 OPA output 約為輸入信號 ( ch2 ) 之 10 倍