Bastian W. schrieb:
> Wenn du vorher PR.PRPx mit 1 beschrieben hast must du nach dem Reset von
> PR.PRPx den Timer Sicherheitshalber neu Einrichten.
Da hast du recht.
Hast du vill. noch eine Idee, wie ich den Entsprechenden Port raus
bekommen kann, ohne wieder ein extra Parameter zu übergeben?
1 | #define TIMER_PRx( _port ) ( ( & ( PR.PRPA ) )[_port] )
|
Meine Struktur
1 | typedef struct
|
2 | {
|
3 | TC0_t *tim0; // Timer0
|
4 | TC1_t *tim1; // Timer1
|
5 |
|
6 | struct
|
7 | {
|
8 | tc0Ccx_t compareMatchChannel; // Compare Match Channel
|
9 | uint16_t perVal; // maximaler Zählwert
|
10 | uint16_t cmpVal; // Compare Match Wert
|
11 | tcxPrescaler_t preVal; // Prescaler Wert
|
12 | }tim0Cnfg;
|
13 |
|
14 | struct
|
15 | {
|
16 | tc1Ccx_t compareMatchChannel; // Compare Match Channel
|
17 | uint16_t perVal; // maximaler Zählrwert
|
18 | uint16_t cmpVal; // Compare Match Wert
|
19 | tcxPrescaler_t preVal; // Prescaler Wert
|
20 | }tim1Cnfg;
|
21 |
|
22 | }tcxInit_t;
|
Diese übergebe ich der Funktion die dann meinen Timer konfiguriert.
Oder setze ich generell gleich die Power Register auf "0x00"?