Freescale Semiconductor M68HC08 manual PWM Setup

Page 40

Software Design

The register CONFIG2 sets:

internal oscillator

IRQ interrupt enabled

IRQPUD must be 0 to connect the internal pullup resistor between IRQ pin and Vdd.

IRQ status and control register INTSCR sets:

IMASK enable IRQ interrupt requests

IRQ interrupt on falling edge only

Analog to digital converter clock register (ADCLK)

sets the ADC clock. ADC clock = bus clock / prescaler. The recommended value for the ADC clock is 1 MHz.

PWM setup — void Set_PWM(void)

The subroutine initializes PWM values, and sets 0% duty cycle on PWM. For a better understanding of PWM setup and logic, see 5.3.1.1 PWM Setup.

HRP setup — void Set_HRP(void)

The subroutine initializes and sets HRP registers. For a better understanding of HRP setup and logic, see 5.3.1.2 HRP Setup.

5.3.1.1 PWM Setup

The PWM module can generate two independent PWM signals used for PFC control. These signals are edge-aligned. PWM resolution is one clock period which is dependent on the internal bus frequency (BUSCLK) and a programmable prescaler (PRSC0, PRSC1). Also, programmable fault protection and PWM signal polarity controls are provided.

For the application, the PWM is set to 40 kHz, resulting in 101 levels of PWM0 at a 4 MHz bus frequency. Because of the hardware configuration, negative polarity control of the PWM output is required.

For proper operation of the PWM module, the following registers must be set:

PWM counter modulus registers PMODH and PMODL hold a 12-bit unsigned number that determines the maximum count for the up-only counter. It is set to 100.

PVAL0H and PVAL0L registers determine duty cycle value (duty cycle = PVAL0/PMOD*100). In initialization phase this is set to 0.

PCTL1 register controls PWM enabling/disabling, the location of the PWM Fault bit, the loading of new modulus, prescaler, and PWM values, and the PWM correction method.

In the application, PCTL1 is set as follows:

Fault pin is PTB7

interrupt is enabled

load new values active

module enabled

PCTL2 register controls the PWM reload frequency, PWM channel enabling/disabling, the PWM polarity, the PWM correction method, and the PWM counter prescaler. For safety reasons, some

of these register bits are buffered. The PWM generator will not use the prescaler value until the LDOK bit has been set and a new PWM cycle is starting. The load frequency bits are not used until the current load cycle is complete.

In the application, PCTL2 is set as follows:

PWM0 enabled

PWM1 enabled

PWM0 negative polarity control

reload frequency bits LDFQ0 and LDFQ1 to 0 — reload every PWM cycle

Dimmable Light Ballast with Power Factor Correction, Rev. 1

40

Freescale Semiconductor

Image 40
Contents Dimmable Light Ballast with Power Factor Correction Page Dimmable Light Ballast with Power Factor Correction Designer Reference ManualDraft 2 for Review Contents Chapter Introduction Chapter Control TheoryChapter Reference Design Chapter Hardware DesignChapter Demo Setup Appendix A. Schematics and Part ListChapter Software Design Appendix B. ReferencesBenefits of this Solution IntroductionMC68HC908LB8 Microcontroller MC68HC908LB8 Microcontroller Freescale Semiconductor Fluorescent Lamp Control Theory Fluorescent Lamp OperationTypical Low Pressure Fluorescent Tube I/V Characteristic Controlling the Fluorescent Lamp Typical Fluorescent Tube Equivalent Circuit in Steady StateControl Theory Main Characteristics of the Dual Switch Topologies PFC Control TheoryDigital Power Factor Concept Hysteresis Current Control Mode Digital Power Factor Concept Discontinuous Conduction Mode Hysteresis Current Control Mode Current WaveformDiscontinuous Conduction Mode Principle Concept Summary Generated Input Current WaveformFreescale Semiconductor Dimmable Light Ballast Characteristics Application OutlineLight Ballast Characteristics Application DescriptionPower Factor Correction Light Ballast ControlSoftware Specification Hardware SpecificationProtection Features Software SpecificationHardware Implementation System ModulesInput and PFC Dimmable Light Ballast Input and PFC Inverter Dimmable Light Ballast Inverter Microcontroller Dimmable Light Ballast Microcontroller J1 Luminance HeaderJ2 Interface Header Power Supply Supplied VoltagesFreescale Semiconductor Chapter Software Design Control Algorithm DescriptionPower Factor Correction Control DC-bus Voltage ControlTube Start Mode Roundi tmin ⋅ AD max ⁄ i max Initialization Setup Software ImplementationPWM Setup PWM Frequency = BusFrequency Hz Hz Main Program Loop Synchronization Interrupt Routine Sine Wave Generation Interrupt RoutineFlow Chart Sine Wave Generation Interrupt Routine Fault Detection and Processing Flow Chart timovISR and faultISR Detailed Software DescriptionFlow Chart Main Flow, Part Reference sine gain Yes Is preheat frequency reached? Has 1ms gone? 10. Flow Chart Main Flow, Part Microcontroller Usage Microcontroller Peripheral UsageProgram and Data Memory Usage Memory Usage3 I/O Usage Definitions of Constants and VariablesI/O Usage System Setup Definitions Defines the minimum HRP frequency in kHz during run mode Defines the maximum HRP frequency in kHz during run modeRepresents the number of fault states during run mode Represents the number of fault states during tube ignitionSystem Constants and Variables Extern tSWFLAGS SwflagsExtern tU08 CurrT1 Hardware Setup Software SetupRequired Software Tools Building and Uploading the ApplicationExecuting the Application Project Files\prm\P&EFCSlinker.prm, linker program file \Sources\main.c, main programAppendix A. Schematics and Part List Schematics7mH 7mH Figure A-3. Inverter TOP BOT TOP Figure A-6. Power supply Parts List Table A-1. Printed Circuit Board Parts ListInternational IRF830A Dimmable Light Ballast with Power Factor Correction, Rev Appendix B. References Dimmable Light Ballast with Power Factor Correction, Rev Page How to Reach Us
Related manuals
Manual 30 pages 41.27 Kb

M68HC08 specifications

Freescale Semiconductor, known for its innovative solutions in the field of embedded systems, developed the M68HC08 microcontroller family, which includes the MC68HC908QT2. This 8-bit microcontroller is engineered to meet the demands of diverse applications, including automotive, industrial, and consumer electronics.

The MC68HC908QT2 is designed around Freescale’s M68HC08 core, which is renowned for its efficient and reliable performance. This microcontroller integrates a powerful instruction set, enabling developers to create high-performance applications with relatively low power consumption. The device operates at a clock frequency of up to 3 MHz, which is adequate for various control tasks.

One of the key features of the MC68HC908QT2 is its memory architecture. It includes a 2 KB Flash memory for program storage, representing a significant advantage for developers requiring non-volatile memory. Additionally, it encompasses 128 bytes of EEPROM memory, allowing for data retention even after power loss. The microcontroller also has 256 bytes of RAM for efficient data manipulation during operation.

In terms of input/output capabilities, the MC68HC908QT2 supports a variety of interfacing options. The microcontroller features up to 20 general-purpose I/O pins for flexibility in connecting with peripheral devices. Additionally, it provides multiple analog-to-digital converters (ADC) and timers that facilitate efficient analog signal processing and precise control through timing functions.

The architecture of the MC68HC908QT2 also incorporates sophisticated on-chip peripherals, enhancing its functionality. These peripherals include PWM (Pulse Width Modulation) outputs, which are essential for applications requiring motor control and other precise duty cycle processes. The integrated watchdog timer ensures reliable operation by resetting the system in the event of an application failure.

Moreover, the MC68HC908QT2 is equipped with an efficient power management system, enabling operation in a low-power mode, ideal for battery-powered applications. This microcontroller is packaged in a compact 28-pin dual in-line package (DIP), making it suitable for space-constrained designs.

In summary, the Freescale Semiconductor MC68HC908QT2 microcontroller is distinguished by its robust performance, extensive memory options, and versatile I/O capabilities. Its advanced features, including built-in timers, ADC, and a power management system, make it an exceptional choice for developers seeking to implement reliable and efficient embedded solutions. With its comprehensive architecture, the MC68HC908QT2 remains a popular choice in the landscape of 8-bit microcontrollers.