Sytuacja faktycznie jest nieciekawa...
Na wstępie takie spostrzeżenia:
Z linii 15 można usunąć operator pozyskania adresu (ampersand), gdyż w przypadku funkcji takie działanie (pobrania adresu) jest domyślne.
Dodatkowo linię 36 można zamienić na
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Niemniej jednak nietypowy wydaje mi się dostęp do pola "migacz", które nie zostało zadeklarowane w ciele klasy...
Jeśli chodzi o samo sedno problemu to jedyne co mi przychodzi do głowy to modyfikator "extern" dla obiektu "led" lub funkcja rejestrująca callback, wywoływana z poziomu pliku "main.c".
Wiązanie obiektu z zasobem sprzętowym niestety musi wykorzystywać zmienne globalne, co nie jest zbyt dobrym pomysłem, ale faktycznie nie widzę innego rozwiązania.