WinAVR i adres zmiennej

Witamm, Nie często zdarza mi się pisać wstawki asemblerowe i utknąłem. Prosze o pomoc.

W 'C' mam zadeklarowaną zmienną volatile u08 tablica[100];

Potrzebuję naprawdę szybkie i krótkie przerwanie. Więc piszę je w asemblerze. Jak do rejestru X,Y, czy Z załadować adres (pointer) do tej tablicy?

Pozdr. Marek

Reply to
Marek P.
Loading thread data ...

W dniu 21-08-2006 10:29, Marek P. napisał:

Nie jestem pewien tego rozwiązania, ale WinAVR pozwala chyba na taką konstrukcję:

u08 *wskaznik @r26;

i dalej

wskaznik = tablica;

Po prostu spróbuj stworzyć zmienną, która zostanie na siłę przechowywana w rejestrze X, Y lub Z i wepchaj do niej adres tej tablicy.

Reply to
Krzysiek

Użytkownik Krzysiek napisał:

Witam, Dziękuję za pomoc, Ale znalazłem właśnie lepsze rozwiązanie na avrfreaks :). Dokladnie to czego szukałem. ldi r24,lo8(zmienna) ldi r25,hi8(zmienna) pozdr Marek

Reply to
Marek P.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.