Hi,
uint8_t portB = PORTB;
error: initializer element is not constantHast du es schon mit Typumwandlung versucht?
uint8_t portb = (uint8_t)PORTB; liefert das gleiche Ergebnis.
Wie wird PORTB definiert?
Bei mir funktioniert die Zuweisung problemlos. Welche Dateien hast du inkludiert?
#include <avr/io.h>
In dieser wird iom8.h speziell für meinen Mikrocontroller inkludiert, welche PORTB als Konstante definiert:
#define __SFR_OFFSET 0x20
#define _SFR_IO8(io_addr) ((io_addr) + __SFR_OFFSET)
#define PORTB _SFR_IO8(0x18)
=> PORTB = 0x38
Schöne Grüße
Julian