Definicja typu:
typedef struct { volatile uint8_t *port; uint8_t pin_bm; volatile uint16_t pulse_high; volatile uint16_t pulse_low; } aparat;
Użycie:
aparat canon = {&PORTC, _BV(PC3),100,200};
Lub w postaci tablicy:
aparat aparaty[4] = { {&PORTC, _BV(PC3),10,100}, {&PORTC, _BV(PC2),20,100}, {&PORTC, _BV(PC1),30,100}, {&PORTC, _BV(PC0),40,100} };
Źródło: http://stackoverflow.com/questions/2641473/initialize-static-array-of-structs-in-c