Chapter 7 S12 Clock, Reset and Power Management Unit (S12CPMU_UHV_V5)
S12ZVHY/S12ZVHL Family Reference Manual, Rev. 1.05
292
Freescale
Semiconductor
NOTE
The first period after enabling the counter by APIFE might be reduced by
API start up delay t
sdel
.
It is possible to generate with the API a waveform at the external pin API_EXTCLK by setting APIFE and
enabling the external access with setting APIEA.
7.7
Initialization/Application Information
7.7.1
General Initialization Information
Usually applications run in MCU Normal Mode
.
It is recommended to write the CPMUCOP register in any case from the application program initialization
routine after reset no matter if the COP is used in the application or not, even if a configuration is loaded
via the flash memory after reset
.
By doing a “controlled” write access in MCU Normal Mode (with the
right value for the application) the write once for the COP configuration bits (WCOP,CR[2:0]) takes place
which protects these bits from further accidental change
.
In case of a program sequencing issue (code
runaway) the COP configuration can not be accidentally modified anymore
.
7.7.2
Application information for COP and API usage
In many applications the COP is used to check that the program is running and sequencing properly. Often
the COP is kept running during Stop Mode and periodic wake-up events are needed to service the COP on
time and maybe to check the system status
.
For such an application it is recommended to use the ACLK as clock source for both COP and API. This
guarantees lowest possible IDD current during Stop Mode
.
Additionally it eases software implementation
using the same clock source for both, COP and API
.
The Interrupt Service Routine (ISR) of the Autonomous Periodic Interrupt API should contain the write
instruction to the CPMUARMCOP register. The value (byte) written is derived from the “main routine”
(alternating sequence of $55 and $AA) of the application software
.
Using this method, then in the case of a runtime or program sequencing issue the application “main
routine” is not executed properly anymore and the alternating values are not provided properly. Hence the
COP is written at the correct time (due to independent API interrupt request) but the wrong value is written
(alternating sequence of $55 and $AA is no longer maintained) which causes a COP reset
.
If the COP is stopped during any Stop Mode it is recommended to service the COP shortly before Stop
Mode is entered.
7.7.3
Application Information for PLL and Oscillator Startup
The following C-code example shows a recommended way of setting up the system clock system using
the PLL and Oscillator: