開發環境:window10系統
開發軟件:IAR for STM8S;visual studio 2017;
開發工具:電腦一台;ST_link V2燒錄器一個;
ML5238介紹:
ML5283是16節鋰電池組二次保護系統的模擬前端IC. ML5283提供電池電壓監控, 充放電電流監控功能,並且可以檢測每個電池單元充電/放電的過充/過放情況。 ML5238具有短路電流檢測功能, 可以主動關斷充電/放電的MOS_FET,而無需外部MCU。
上位機介紹:
為了配合電池包的使用,開發的一套上位機對電池包的監控和設置,上位機分兩個頁面,一個是電池包狀態顯示頁面,另一部分是電池包參數設置頁面。http://buy.42iot.com
電池包狀態顯示頁面:
上圖中可以顯示沒個單元的電池電壓,電池均衡狀態以及其它的狀態。
電池包參數設置界面:
這個頁面可以根據需求修改電池包的參數以滿足自身需求。
電池保護板源碼設計:
電池保護板的MCU IC采用的是STM8S105K4T6,ST公司的產品性價比還是很高的,此產品價格比51低性能比51強不少。
MCU與ML5238芯片的通信是采用4線SPI(模式0),MCU與上位機的通信方式是串口(波特率為9600)。
程序流程圖:
在程序設計上,讀取和保存EEPROM代碼如下:
在main函數上加上看門狗防止異常,看門狗代碼如下:
在代碼設計均衡算法時,要特別注意ML5238使用手冊上的說明,我把那部分翻譯並截取過來;
歡迎大家關注。
至此,我就介紹到這里