mc68hc912bc32 Freescale Semiconductor, Inc, mc68hc912bc32 Datasheet - Page 156

no-image

mc68hc912bc32

Manufacturer Part Number
mc68hc912bc32
Description
M68hc12 Microcontrollers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Standard Timer (TIM)
12.5 Using the Output Compare Function to Generate a Square Wave
This timer exercise is intended to utilize the output compare function to generate a square wave of
predetermined duty cycle and frequency.
The program generates a square wave, 50 percent duty cycle, on output compare 2 (OC2). The signal
will be measured by the HC11 on the UDLP1 board. It assumes a 8.0 MHz operating frequency for the
E clock. The control registers are initialized to disable interrupts, configure for proper pin control action
and also the TC2H register for desired compare value. The appropiate count must be calculated to
achieve the desired frequency and duty cycle. For example: for a 50 percent duty, 1 KHz signal each
period must consist of 2048 counts or 1024 counts high and 1024 counts low. In essence a $0400 is
added to generate a frequency of 1 kHz.
12.5.1 Sample Calculation to Obtain Period Counts
The sample calculation to obtain period counts is:
12.5.2 Equipment
For this exercise, use the M68HC912B32EVB emulation board.
12.5.3 Code Listing
156
Square wave frequency 1000 Hz, duty cycle 50%
For 1000 Hz frequency:
For a 1 KHz, 50 percent duty cycle:
E-clock = 8 MHz
IC/OC resolution factor = 1/(E-clock/Prescaler)
If the Prescaler = 4, then output compare resolution is 0.5 µs
1/F = T = 1/1000 = 1 ms
F for output compare = prescaler/E clock = 2 MHz
A comment line is deliminted by a semi-colon. If there is no code before
comment, an “;” must be placed in the first column to avoid assembly
errors.
1 ms
Figure 12-30. Example Waveform
M68HC12B Family Data Sheet, Rev. 9.1
0.5 ms
NOTE
NUMBER OF CLOCKS = F * D
THEREFORE,
#CLOCKS = (2 MHz) * (0.5 ms) = 1024 = $0400
Freescale Semiconductor

Related parts for mc68hc912bc32