świetny pomysł z tymi _bm i _gc bo w AVRach zawsze mnie irytowały te dziwne zapisy z (1<<COŚTAM) w szczególności gdy było kilka bitów do skonfigurowania
A propos; oznaczenie "1<<coś tam" to podobno przesunięcie bitowe. Ale z którego bitu na który, kierunek raczej w lewo i chyba o jedną pozycję. Czy tak?
Przesunięcie jedynki w lewo na pozycję "coś tam". Czyli zapis REJESTR = (1<<3) | (1<<0) spowoduje zapisanie 00001001 do rejestru. Na stronie http://pl.wikibooks.org/wiki/C jest fajny kurs języka C z którego kiedyś często kożytsałem.
Wynika z tego, że słowo "przesunięcie" (zazwyczaj związane z rotacją) nie jest tu najszczęśliwsze, bo to jest po prostu ustawianie danego bitu (wpisanie jedynki) bez względu na sąsiada z prawej strony. (Wszak nie spotkałem zapisu: "cośtam>>1" który odnosiłby się do sąsiada z lewej) Ale to tak na marginesie... Mnie interesuje dziś coś innego; Po paru godzinach wgryzania się w obfitująca w błędy dokumentację ze strony Atmela, chyba zrozumiałem na czym (z grubsza) polega idea nowości w kontrolerach xmega i zdecydowałem się kupić polecany tu moduł. Ponieważ jednak chcę pozostać (póki co) przy assemblerze, z którym się dość mocno zżyłem emocjonalnie ;) - jak to elektronik, mam pytanie następujące: Jak wygląda nazwa pliku nagłówkowego dla xmega128a3u, którą umieszcza się po dyrektywie ".include"? Np. dla mega8 było to "m8def.inc" a tu... próbuję na różne sposoby, bezskutecznie :/ Co do kursu języka C - dzięki za link, być może kiedyś skorzystam. Może nawet szybciej niż mi się wydaje, ale na razie... :) Kupiłem też polecaną tu książkę i niestety muszę stwierdzić, że był to błąd (z mojego dzisiejszego punktu widzenia), bo jest ona wybitnie ukierunkowana na wykorzystanie języka C, a nie na budowę tego kontrolera (po prostu jest mało... elektroniczna).
Pliki nagłówkowe do XMEGA nazywają się tak jak procesory, czyli "ATxmega128A3Udef.inc".
Naprawdę polecam zapoznanie się z językiem C, bo dzisiaj jest to standard. Język ten jest baaaaaardzo prosty, kompilator jest bardzo efektywny i nie widzę sensu pisania programów w Assemblerze.
6 komentarze :
świetny pomysł z tymi _bm i _gc bo w AVRach zawsze mnie irytowały te dziwne zapisy z (1<<COŚTAM) w szczególności gdy było kilka bitów do skonfigurowania
A propos; oznaczenie "1<<coś tam" to podobno przesunięcie bitowe. Ale z którego bitu na który, kierunek raczej w lewo i chyba o jedną pozycję. Czy tak?
Przesunięcie jedynki w lewo na pozycję "coś tam". Czyli zapis REJESTR = (1<<3) | (1<<0) spowoduje zapisanie 00001001 do rejestru. Na stronie http://pl.wikibooks.org/wiki/C jest fajny kurs języka C z którego kiedyś często kożytsałem.
Wynika z tego, że słowo "przesunięcie" (zazwyczaj związane z rotacją) nie jest tu najszczęśliwsze, bo to jest po prostu ustawianie danego bitu (wpisanie jedynki) bez względu na sąsiada z prawej strony. (Wszak nie spotkałem zapisu: "cośtam>>1" który odnosiłby się do sąsiada z lewej) Ale to tak na marginesie...
Mnie interesuje dziś coś innego;
Po paru godzinach wgryzania się w obfitująca w błędy dokumentację ze strony Atmela, chyba zrozumiałem na czym (z grubsza) polega idea nowości w kontrolerach xmega i zdecydowałem się kupić polecany tu moduł. Ponieważ jednak chcę pozostać (póki co) przy assemblerze, z którym się dość mocno zżyłem emocjonalnie ;) - jak to elektronik, mam pytanie następujące: Jak wygląda nazwa pliku nagłówkowego dla xmega128a3u, którą umieszcza się po dyrektywie ".include"? Np. dla mega8 było to "m8def.inc" a tu... próbuję na różne sposoby, bezskutecznie :/
Co do kursu języka C - dzięki za link, być może kiedyś skorzystam. Może nawet szybciej niż mi się wydaje, ale na razie... :)
Kupiłem też polecaną tu książkę i niestety muszę stwierdzić, że był to błąd (z mojego dzisiejszego punktu widzenia), bo jest ona wybitnie ukierunkowana na wykorzystanie języka C, a nie na budowę tego kontrolera (po prostu jest mało... elektroniczna).
Pliki nagłówkowe do XMEGA nazywają się tak jak procesory, czyli "ATxmega128A3Udef.inc".
Naprawdę polecam zapoznanie się z językiem C, bo dzisiaj jest to standard. Język ten jest baaaaaardzo prosty, kompilator jest bardzo efektywny i nie widzę sensu pisania programów w Assemblerze.
Dzięki, zadziałało :)
Czasem najtrudniej wpaść na najprostsze rozwiązanie.
Prześlij komentarz
Skomentuj!