Integration EVI1.c Rev. 2.2.2.0 und 2.5 ======================================= Benötigt wird folgendes Literal: T_EVTIM_TIMER_DIV Dazu sind im HWDEF-File evtl. einige Ergänzungen nötig. Die Inhalte der Defines und Literals sind entsprechend der HW (20Mhz, 24 Mhz etc.) anzupassen. HWDEF-Auszug für T8-Vereinbarungen: ************************************************************************************************************************ /* timer T8 FR (CAPCOM2) */ #define T8_INPUT_SEL 3 /* 3200ns at 20 MHz CPU clock */ #pragma asm T8_INPUT_SEL lit '3' ;// consistent to Literals above #pragma endasm #define T8_PRESCALER (1<<(T8_INPUT_SEL+3)) #pragma asm T8_PRESCALER lit '(1<<(T8_INPUT_SEL+3))' #pragma endasm #define T8_TICK_DURATION ((Word)((T8_PRESCALER * 1000000ul) / (LWord)FREQ_CPU) ) /* in nano seconds */ #define MICROSECONDS_TO_T8_TICKS(microsecs) ( (Word) ( (microsecs)*1000ul/(LWord)T8_TICK_DURATION) ) #pragma asm EVTIME_TIMER lit 'T8' PRESCALER_EVZAHN lit '07h' ; mask to select prescaler of T8 in Register T78CON ;/* slow timer mode of timu */ DIVBY512 lit '06h' ; division by 512 at prescaler of T8 (Slow Timer -> timu.c) ;/* fast timer mode of timu */ DIVBY64 lit 'T8_INPUT_SEL' ; division by 64 at prescaler of T8 (Fast timer ) T_EVTIM_TIMER_DIV lit 'T8_PRESCALER' ; for fast timer mode. #pragma endasm /* Definitionen Klopfregelung: Messfensterausgabe*/ #define MFTimer T8 ************************************************************************************************************************