Software Implementation
Dimmable Light Ballast with Power Factor Correction, Rev. 1
Freescale Semiconductor 45
5.3.4.1 Fault Detection and Processing
The following application faults are detected by the software:
• DC-bus under voltage
• DC-bus over voltage
• Failure of the DC-bus voltage to reach the required value within the start time
• Zero current fault
• Ignition fault
• COP overflow
A zero current fault launches the faultISR routine when one of the tube currents is zero during the zero
current checking interval in run mode for the specified time.
An ignition fault launches the faultISR routine when the lamps do not ignite within a specified number of
attempts.
All these fault states are serviced by the following fault service routines:
• timovISR() — services interrupts from TIM
• faultISR() — services HRP fault interrupts and all other faults
The timovISR routine is launched when the COP counter overflows (this occurs when the correct input
voltage is missing). The timovISR routine calls the faultISR routine (see
Figure 5-6).
The faultISR routine serves all fault states. It disables all interrupts, stops PWM, HRP, TIM, CM (see the
flow chart in
Figure 5-6). The fault state is indicated by the fault diode blinking in a never ending loop.