Ja wiem, ja wiem! Też chwilę nad tym spędziłem, ale rozpisanie tego na 3/4 ify strasznie mnie irytowało...
Tzn, ani nie jest to funkcja, ani makro (którego i tak prawdopodobnie byś użyć nie mógł, bo w końcu zmienną do niego podajesz) - jest to tablica z wskaźnikami na adresy portów (o ile dobrze to rozumiem).
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Co prawda nie jestem pewien czy taki typ tablicy jest najodpowiedniejszy*... Ale taki działa. (;
No i potem można używać tak:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Na końcu - ja z tego korzystam na M16 - czyli równo 4 kolejne porty, każdy z 8 pinami - przy czymś mniejszym/większym możliwe, że będziesz musiał trochę warunków pododawać, by nie ustawiać czegoś co nie istnieje.
E: * - znalazłem źródło utwierdzające mnie w przekonaniu, że typ jest dobry:
http://www.nongnu.org/avr-libc/user-man ... _port_pass - przykład co prawda trochę inny, ale imho łatwiej przekazać jedynie indeks tablicy niż cały adres...