Forum: Mikrocontroller und Digitale Elektronik Problem mit "prog_uint8_t" bei AVR Studio 6


von CAN-Anfänger (Gast)


Lesenswert?

Hallo,

ich habe gerade versucht die CAN Bibliothek von kreatives chaos in Gang 
zu bekommen. Leider bekomme ich bei Build (AVR Studio 6) den Fehler 
"unknown type name 'prog_uint8_t' " in dem Zeilencode

> extern void
> can_static_filter(const prog_uint8_t *filter_array);

Wenn ich es richtig verstanden habe (google suche), wurde bei AVR Studio 
6 irgendetwas in pgmspace.h umgestellt. Aber irgendwie komme ich 
trotzdem nicht auf die richtige Lösung!

Kann mir jemand helfen?

Gruss

von Karl H. (kbuchegg)


Lesenswert?

CAN-Anfänger schrieb:

>> extern void
>> can_static_filter(const prog_uint8_t *filter_array);
>
> Wenn ich es richtig verstanden habe (google suche), wurde bei AVR Studio
> 6 irgendetwas in pgmspace.h umgestellt. Aber irgendwie komme ich
> trotzdem nicht auf die richtige Lösung!


Dieses prog_uint8_t war sowieso nie irgendwas besonderes, sondern 
einfach nur ein Ersatz für uint8_t, welcher hauptsächlich 
dokumentatorischen Wert hat.

Die Funktion schreit damit in die Welt hinaus:
Sieh her, ich will von dir einen uint8_t Pointer! Aber sei dir bitte 
bewusst, dass ich davon ausgehe, dass dieser Pointer ins Flash zeigt.

Irgendwelche Restriktionen waren damit sowieso nie verbunden, in dem 
Sinne, dass dich der Compiler vor einer Fehlbenutzung der Funktion 
(Aufruf mit einem Pointer ins SRAM) gewarnt hätte.


also einfach
typedef uint8_t prog_uint8_t;

an geeigneter Stelle, und die Sache sollte geritzt sein.

von CAN-Anfänger (Gast)


Lesenswert?

ahah,

danke!!

Gruss

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.