Hi,
ich will eine Funktion in einer Interrupt auslösen.
Die Funktion habe ich in der main deklariert:
1 | // Timer Stoppen
|
2 | void timer_stop()
|
3 | {
|
4 | TCNT0 =0;
|
5 | TCCR0B =0b00000000; // Timer stoppen
|
6 |
|
7 | }
|
8 |
|
9 |
|
10 | // Triac Zünden
|
11 | void TriacZuenden (uint8_t DimmWert, uint8_t Bit)
|
12 | {
|
13 | if (TCNT0 >= DimmWert)
|
14 | {
|
15 | //Triac zünden
|
16 | AusgangSetBit(Bit);
|
17 | AusgangOut();
|
18 | }
|
19 | }
|
Wenn ich dieses jetzt in der ISR aufrufe:
1 | ISR (TIMER1_COMPA_vect)
|
2 | {
|
3 |
|
4 | TriacZuenden(90,0);
|
5 |
|
6 | if (TCNT0 >= 140)
|
7 | {
|
8 | timer_stop();
|
9 | }
|
10 | }
|
Mache ich was falsch und es kommt eine Fehlermeldung :
undefined reference to `TriacZuenden'
undefined reference to `timer_stop'
Verwenden tu ich das Programmers Notepad und einen Atmega 644
Weis einer was ich falsch mache ?
Danke