1 /** ###################################################################
\r
2 ** THIS BEAN MODULE IS GENERATED BY THE TOOL. DO NOT MODIFY IT.
\r
3 ** Filename : TickTimer.H
\r
4 ** Project : RTOSDemo
\r
5 ** Processor : MC9S12DP256BCPV
\r
6 ** Beantype : TimerInt
\r
7 ** Version : Bean 02.063, Driver 01.05, CPU db: 2.87.283
\r
8 ** Compiler : Metrowerks HC12 C Compiler
\r
9 ** Date/Time : 18/06/2005, 16:21
\r
11 ** This bean "TimerInt" implements a periodic interrupt.
\r
12 ** When the bean and its events are enabled, the "OnInterrupt"
\r
13 ** event is called periodically with the period that you specify.
\r
14 ** TimerInt supports also changing the period in runtime.
\r
15 ** The source of periodic interrupt can be timer compare or reload
\r
16 ** register or timer-overflow interrupt (of free running counter).
\r
18 ** Timer name : ECT (16-bit)
\r
19 ** Compare name : TC0
\r
20 ** Counter shared : No
\r
22 ** High-speed CPU mode
\r
23 ** Prescaler : divide-by-8
\r
24 ** Clock : 3124000 Hz
\r
25 ** Initial period/frequency
\r
26 ** Xtal ticks : 16000
\r
27 ** microseconds : 1000
\r
29 ** seconds (real) : 0.0010000
\r
33 ** Runtime setting : period/frequency interval (continual setting)
\r
34 ** ticks : 16000 to 320000 ticks
\r
35 ** microseconds : 1000 to 20000 microseconds
\r
36 ** milliseconds : 1 to 20 milliseconds
\r
37 ** seconds (real) : 0.0010000 to 0.0200000 seconds
\r
38 ** Hz : 50 to 1000 Hz
\r
45 ** Counter : TCNT [68]
\r
48 ** Prescaler : TSCR2 [77]
\r
50 ** Compare registers
\r
51 ** Compare : TC0 [80]
\r
53 ** Flip-flop registers
\r
54 ** Mode : TCTL2 [73]
\r
56 ** Enable - byte TickTimer_Enable(void);
\r
57 ** SetPeriodTicks16 - byte TickTimer_SetPeriodTicks16(word Ticks);
\r
58 ** SetPeriodTicks32 - byte TickTimer_SetPeriodTicks32(dword Ticks);
\r
59 ** SetPeriodUS - byte TickTimer_SetPeriodUS(word Time);
\r
60 ** SetPeriodMS - byte TickTimer_SetPeriodMS(word Time);
\r
61 ** SetFreqHz - byte TickTimer_SetFreqHz(word Freq);
\r
63 ** (c) Copyright UNIS, spol. s r.o. 1997-2002
\r
64 ** UNIS, spol. s r.o.
\r
68 ** http : www.processorexpert.com
\r
69 ** mail : info@processorexpert.com
\r
70 ** ###################################################################*/
\r
75 /* MODULE TickTimer. */
\r
79 #pragma CODE_SEG TickTimer_CODE /* Code section for this module. */
\r
81 #define TickTimer_SPT16Min 16000 /* Lower bound of interval for method SetPeriodTicks16 */
\r
82 #define TickTimer_SPT16Max 65535 /* Upper bound of interval for method SetPeriodTicks16 */
\r
83 #define TickTimer_SPT32Min 16000 /* Lower bound of interval for method SetPeriodTicks32 */
\r
84 #define TickTimer_SPT32Max 320000 /* Upper bound of interval for method SetPeriodTicks32 */
\r
85 #define TickTimer_SPUSMin 1000 /* Lower bound of interval for method SetPeriodUS */
\r
86 #define TickTimer_SPUSMax 20000 /* Upper bound of interval for method SetPeriodUS */
\r
87 #define TickTimer_SPMSMin 1 /* Lower bound of interval for method SetPeriodMS */
\r
88 #define TickTimer_SPMSMax 20 /* Upper bound of interval for method SetPeriodMS */
\r
89 #define TickTimer_SFHzMin 50 /* Lower bound of interval for method SetFreqHz */
\r
90 #define TickTimer_SFHzMax 1000 /* Upper bound of interval for method SetFreqHz */
\r
93 byte TickTimer_Enable(void);
\r
95 ** ===================================================================
\r
96 ** Method : TickTimer_Enable (bean TimerInt)
\r
99 ** Enable the bean - it starts the timer. Events may be
\r
100 ** generated ("DisableEvent"/"EnableEvent").
\r
101 ** Parameters : None
\r
103 ** --- - Error code, possible codes:
\r
105 ** ERR_SPEED - This device does not work in
\r
106 ** the active speed mode
\r
107 ** ===================================================================
\r
110 byte TickTimer_SetPeriodTicks16(word Ticks);
\r
112 ** ===================================================================
\r
113 ** Method : TickTimer_SetPeriodTicks16 (bean TimerInt)
\r
116 ** This method sets the new period of the generated events.
\r
117 ** The period is expressed in Xtal ticks as a 16-bit unsigned
\r
119 ** This method is available only if runtime setting type
\r
120 ** 'from interval' is selected in the Timing dialog box in
\r
121 ** Runtime setting area.
\r
123 ** NAME - DESCRIPTION
\r
124 ** Ticks - Period to set [in Xtal ticks]
\r
125 ** (16000 to 65535 ticks)
\r
127 ** --- - Error code, possible codes:
\r
129 ** ERR_SPEED - This device does not work in
\r
130 ** the active speed mode
\r
131 ** ERR_MATH - Overflow during evaluation
\r
132 ** ERR_RANGE - Parameter out of range
\r
133 ** ===================================================================
\r
136 byte TickTimer_SetPeriodTicks32(dword Ticks);
\r
138 ** ===================================================================
\r
139 ** Method : TickTimer_SetPeriodTicks32 (bean TimerInt)
\r
142 ** This method sets the new period of the generated events.
\r
143 ** The period is expressed in Xtal ticks as a 32-bit unsigned
\r
145 ** This method is available only if runtime setting type
\r
146 ** 'from interval' is selected in the Timing dialog box in
\r
147 ** Runtime setting area.
\r
149 ** NAME - DESCRIPTION
\r
150 ** Ticks - Period to set [in Xtal ticks]
\r
151 ** (16000 to 320000 ticks)
\r
153 ** --- - Error code, possible codes:
\r
155 ** ERR_SPEED - This device does not work in
\r
156 ** the active speed mode
\r
157 ** ERR_MATH - Overflow during evaluation
\r
158 ** ERR_RANGE - Parameter out of range
\r
159 ** ===================================================================
\r
162 byte TickTimer_SetPeriodUS(word Time);
\r
164 ** ===================================================================
\r
165 ** Method : TickTimer_SetPeriodUS (bean TimerInt)
\r
168 ** This method sets the new period of the generated events.
\r
169 ** The period is expressed in microseconds as a 16-bit
\r
170 ** unsigned integer number.
\r
171 ** This method is available only if runtime setting type
\r
172 ** 'from interval' is selected in the Timing dialog box in
\r
173 ** Runtime setting area.
\r
175 ** NAME - DESCRIPTION
\r
176 ** Time - Period to set [in microseconds]
\r
177 ** (1000 to 20000 microseconds)
\r
179 ** --- - Error code, possible codes:
\r
181 ** ERR_SPEED - This device does not work in
\r
182 ** the active speed mode
\r
183 ** ERR_MATH - Overflow during evaluation
\r
184 ** ERR_RANGE - Parameter out of range
\r
185 ** ===================================================================
\r
188 byte TickTimer_SetPeriodMS(word Time);
\r
190 ** ===================================================================
\r
191 ** Method : TickTimer_SetPeriodMS (bean TimerInt)
\r
194 ** This method sets the new period of the generated events.
\r
195 ** The period is expressed in miliseconds as a 16-bit
\r
196 ** unsigned integer number.
\r
197 ** This method is available only if runtime setting type
\r
198 ** 'from interval' is selected in the Timing dialog box in
\r
199 ** Runtime setting area.
\r
201 ** NAME - DESCRIPTION
\r
202 ** Time - Period to set [in miliseconds]
\r
203 ** (1 to 20 milliseconds)
\r
205 ** --- - Error code, possible codes:
\r
207 ** ERR_SPEED - This device does not work in
\r
208 ** the active speed mode
\r
209 ** ERR_MATH - Overflow during evaluation
\r
210 ** ERR_RANGE - Parameter out of range
\r
211 ** ===================================================================
\r
214 byte TickTimer_SetFreqHz(word Freq);
\r
216 ** ===================================================================
\r
217 ** Method : TickTimer_SetFreqHz (bean TimerInt)
\r
220 ** This method sets the new frequency of the generated
\r
221 ** events. The frequency is expressed in Hz as a 16-bit
\r
222 ** unsigned integer number.
\r
223 ** This method is available only if runtime setting type
\r
224 ** 'from interval' is selected in the Timing dialog box in
\r
225 ** Runtime setting area.
\r
227 ** NAME - DESCRIPTION
\r
228 ** Freq - Frequency to set [in Hz]
\r
231 ** --- - Error code, possible codes:
\r
233 ** ERR_SPEED - This device does not work in
\r
234 ** the active speed mode
\r
235 ** ERR_MATH - Overflow during evaluation
\r
236 ** ERR_RANGE - Parameter out of range
\r
237 ** ===================================================================
\r
240 #pragma CODE_SEG __NEAR_SEG NON_BANKED /* Interrupt section for this module. Placement will be in NON_BANKED area. */
\r
241 __interrupt void TickTimer_Interrupt(void);
\r
242 #pragma CODE_SEG TickTimer_CODE /* Code section for this module. */
\r
244 ** ===================================================================
\r
245 ** Method : TickTimer_Interrupt (bean TimerInt)
\r
248 ** This method is internal. It is used by Processor Expert
\r
250 ** ===================================================================
\r
253 void TickTimer_Init(void);
\r
255 ** ===================================================================
\r
256 ** Method : TickTimer_Init (bean TimerInt)
\r
259 ** This method is internal. It is used by Processor Expert
\r
261 ** ===================================================================
\r
264 #pragma CODE_SEG DEFAULT /* Change code section to DEFAULT. */
\r
266 /* END TickTimer. */
\r
268 #endif /* ifndef __TickTimer */
\r
270 ** ###################################################################
\r
272 ** This file was created by UNIS Processor Expert 03.33 for
\r
273 ** the Motorola HCS12 series of microcontrollers.
\r
275 ** ###################################################################
\r