A battery heating system, comprising a main positive switch connected to a positive electrode of a battery pack, a main negative switch connected to a negative electrode of the battery pack, an inverter connected to the main positive switch and the main negative switch, a motor connected to the inverter and a battery management unit, wherein: the inverter includes a supporting capacitor (Ca), a first phase bridge arm, a second phase bridge arm and a third phase bridge arm connected in parallel, each of the first phase bridge arm, the second phase bridge arm and the third phase bridge arm has an upper bridge arm and a lower bridge arm, the upper bridge arm is provided with a switch unit, and the lower bridge arm is provided with a switch unit; a first phase input terminal, a second phase input terminal and a third phase input terminal of the motor are respectively connected to a connection point of the upper bridge arm and the lower bridge arm in the first phase bridge arm, a connection point of the upper bridge arm and the lower bridge arm in the second phase bridge arm, and a connection point of the upper bridge arm and the lower bridge arm in the third phase bridge arm; the inverter further includes a motor controller, and the motor controller is configured to output a drive signal to a target upper-bridge-arm switch unit and a target lower-bridge-arm switch unit so as to control the target upper-bridge-arm switch unit and the target lower-bridge-arm switch unit to be periodically and simultaneously turned on or off, the target upper-bridge-arm switch unit is a switch unit of the upper bridge arm of any one of the first phase bridge arm, the second phase bridge arm, and the third phase bridge arm, the target lower-bridge-arm switch unit is a switch unit of the lower bridge arm of at least one of the bridge arms except the bridge arm where the target upper-bridge-arm switch unit is located; and the battery management unit is configured to collect state parameters of the battery pack, and send a control signal to the motor controller to control the motor controller to output the drive signal when the state parameters of the battery pack meet preset heating conditions, wherein the state parameters include a temperature, a state of charge and a current, and the preset heating conditions include that the temperature is lower than a desired temperature threshold and the state of charge is higher than a heating allowable state of charge threshold. the inverter includes a supporting capacitor (Ca), a first phase bridge arm, a second phase bridge arm and a third phase bridge arm connected in parallel, each of the first phase bridge arm, the second phase bridge arm and the third phase bridge arm has an upper bridge arm and a lower bridge arm, the upper bridge arm is provided with a switch unit, and the lower bridge arm is provided with a switch unit; a first phase input terminal, a second phase input terminal and a third phase input terminal of the motor are respectively connected to a connection point of the upper bridge arm and the lower bridge arm in the first phase bridge arm, a connection point of the upper bridge arm and the lower bridge arm in the second phase bridge arm, and a connection point of the upper bridge arm and the lower bridge arm in the third phase bridge arm; the inverter further includes a motor controller, and the motor controller is configured to output a drive signal to a target upper-bridge-arm switch unit and a target lower-bridge-arm switch unit so as to control the target upper-bridge-arm switch unit and the target lower-bridge-arm switch unit to be periodically and simultaneously turned on or off, the target upper-bridge-arm switch unit is a switch unit of the upper bridge arm of any one of the first phase bridge arm, the second phase bridge arm, and the third phase bridge arm, the target lower-bridge-arm switch unit is a switch unit of the lower bridge arm of at least one of the bridge arms except the bridge arm where the target upper-bridge-arm switch unit is located; and the battery management unit is configured to collect state parameters of the battery pack, and send a control signal to the motor controller to control the motor controller to output the drive signal when the state parameters of the battery pack meet preset heating conditions, wherein the state parameters include a temperature, a state of charge and a current, and the preset heating conditions include that the temperature is lower than a desired temperature threshold and the state of charge is higher than a heating allowable state of charge threshold.