WT61P9 讀 code 心得

Posted by: 邱小新 at 上午9:21 in
  • Timer0 做為 poller 使用,每 10ms 中斷一次,再根據每個 flag 在 main loop 執行。
  • 所有的變數設定初始值是先把 address 放在 SubAddr_Table,data 放在 SubAddr_Default_Table,要注意二個位置要一致,以免出現問題。原來是要給 slave IIC 用的,讓其它週邊可以透過 slave IIC 來讀取資料。
  • 在 idata 開了一個 PMCTL_DATA 大陣列,index 定義在 os.h 的 enum 裏。不知為什麼要如此麻煩,想不懂。
  • 讀取風扇轉速透過 HV2Sync_Detect_Routine 及 HVSync_Detect_Routine,搞不懂其計算原理。會把值存在 FANx_RPM,但似乎都沒有用到。假如有一個轉速為 0,則會把 LED9_Fan Fail 點亮。
  • 在 main 的 while loop 內會呼叫 Check_PWM_Output,會去檢查 PWM 值是否被外部 MCU 透過 IIC 變更,然後再變更風扇的 PWM 值,藉此改變風扇轉速。
  • 溫度感應器有二組,一組透過 I2C,一組透過 ADC,I2C 讀取溫度透過 Thermal_routine,ADC 讀取溫度透過 Read_ADC_Routine,當溫度大於 Thermal_Thres1(0x2F,47C) 會把 LED7_High temperature 點亮。

0 意見

張貼留言