Hallo zusammen,
ich bin grade dabei mich mit dem Umgang von Funktionen vertraut zu
machen. Um den Code kürzer halten zu können und ggf. Funktionen in
anderen Programmen wieder verwenden zu können, wollte ich diese in einer
externen c-datei auslagern.
Dafür sollte eine einfache Funktion "berechne", die zwei Werte
multipliziert, ausgelagert werden.
Mein Vorgehen:
Main:
1 | #include <avr/io.h>
|
2 | #include "berechne.h"
|
3 |
|
4 | int main(void)
|
5 | {
|
6 | uint8_t Ergebnis = 0, a = 12, b = 2;
|
7 | while (1)
|
8 | {
|
9 | berechne(&Ergebnis, a, b);
|
10 | }
|
11 | }
|
.c-Datei:
1 | void berechne(uint8_t *p_Ergebnis, uint8_t x, uint8_t y){
|
2 | *p_Ergebnis = x*y;
|
3 | }
|
.h-Datei:
1 | #ifndef BERECHNE_H_
|
2 | #define BERECHNE_H_
|
3 |
|
4 | void berechne(uint8_t *p_Ergebnis, uint8_t x, uint8_t y);
|
5 |
|
6 | #endif /* BERECHNE_H_ */
|
Im Anhang habe ich Screenshots von der Fehlermeldung und dem Code
hinterlegt. Hat irgendwer eine Idee woran es liegen könnte?