|
|
本帖最后由 余金渠 于 2022-4-10 17:46 編輯
這篇是上一篇的續(xù)篇關于程序介紹下篇是實踐篇所有代碼都以GPL3協(xié)議分享HC官方的代碼不在此協(xié)議范圍請遵守HC官方協(xié)議在此聲明!!!
這個周末寫了2個庫分別是NTC 和K型熱電偶(帶補償)硬件在上篇有介紹代碼和硬件有較大的聯(lián)系主要是NTC和放大電路。
圖片1.png (10.36 KB, 下載次數: 95)
下載附件
2022-4-4 16:04 上傳
主要文件如果需要移植到其它芯片也是非常簡單的溫度范圍-269~1209℃ CODE大概需要6KB如果有需要可以裁剪比如負溫度就可以裁剪掉再調整TMin這個值
圖片2.png (57.91 KB, 下載次數: 72)
下載附件
2022-4-4 16:06 上傳
如何使用
STEP 1
先將上面兩個庫添加到你的工程
STEP 2
分別完成這4個函數的移植注意
圖片3.png (69.32 KB, 下載次數: 85)
下載附件
2022-4-4 16:06 上傳
圖片4.png (50.79 KB, 下載次數: 80)
下載附件
2022-4-4 16:06 上傳
圖片5.png (5.14 KB, 下載次數: 93)
下載附件
2022-4-4 16:06 上傳
NTC電阻的電路是這種如果不是這樣連接請重新書寫
圖片6.png (19.01 KB, 下載次數: 83)
下載附件
2022-4-4 16:06 上傳
具體推導請看
圖片7.png (13.02 KB, 下載次數: 102)
下載附件
2022-4-4 16:06 上傳
STEP 3
獲取溫度T
圖片8.png (19.61 KB, 下載次數: 79)
下載附件
2022-4-4 16:06 上傳
這段函數參數是實際電壓除X10是因為放大器放大倍數是100再加上要轉化為V單位所以要X10
圖片9.png (142.06 KB, 下載次數: 83)
下載附件
2022-4-4 16:06 上傳
圖片10.png (59.33 KB, 下載次數: 89)
下載附件
2022-4-4 16:13 上傳
這里的Uvref是模擬電路電源和參考電電壓的電壓如果參考電壓和模擬電源電源不一樣需要更改程序但需要遵守GPL3
NTC推導.c
- #define ADCtoVoltage (Uvref/4095)
- Untc / U10k = Rntc / 10K
- ADCntc*ADCtoVoltage / ADC10K*ADCtoVoltage = Rntc / 10000
- ADCntc*ADCtoVoltage Rntc
- ------------------- = -----
- ADC10K*ADCtoVoltage 10000
- Rntc*ADC10K*ADCtoVoltage = ADCntc*ADCtoVoltage*10000
- Rntc*ADC10K = ADCntc*10000
- ADCntc*10000
- Rntc = ------------
- ADC10K
-
- ADCntc*10000
- Rntc = ---------------
- ADCUvref - ADCntc
復制代碼
這邊模擬實驗一切正常我們還可以看到由于FPU的開啟我們的浮點運算全部使用了F32的指令,如何開啟可以看我以往的文章。
單片機代碼下載:
HC32F460工程模板.7z
(305.17 KB, 下載次數: 32)
2022-4-4 16:33 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
-
-
HC32F460ADC工程.zip
2022-4-5 12:33 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
601.56 KB, 下載次數: 39, 下載積分: 黑幣 -5
本周實在是沒空了下周再測工程編譯沒有問題(已更新測試完成程序)
-
-
HC32F460增加了運算放大器補償.zip
2022-4-10 17:45 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
601.61 KB, 下載次數: 50, 下載積分: 黑幣 -5
增加了關于運算放大器實際輸入和理論不符問題修復
評分
-
查看全部評分
|