Battery management system is an indispensable part in the application of battery pack; it guarantees the batteries to run safely and effectively. This paper presents a kind of battery management system based on STM32 series microcontroller. Compared with centralized structure, the system reduces the burden on central processing unit using distributed architecture, raising the efficiency of data processing greatly. In addition, hardware and software of the system are designed to implement the functions of status monitoring and analyzing, security protection, energy management and information management. In order to verify the feasibility of proposed system, experiments are performed on a group of Lithium iron phosphate batteries and the results show that the system can meet the requirements on measuring accuracy, reliability, and effectiveness equalization.