Witam. Czy komuś w winavr-rze udało się odpalić zewnętrzny Ram. Ja próbuję ale z mizernym skutkiem. Mam podłączony CS do nóżki A15 więc adres zewnętrznego ramu zaczyna się od 0x8000 co też wpisałem w pliku Make file (a właściwie program do tworzenia makefila). Nie wiem jedynie w którym miejscu w rejestrze MCUCR wpisać SRE. Wiem że musi to nastąpić przed funkcją main próbowałem ze stronki o winavrze libc kombinacji z .init3 ale też nie działa. Jeśli ktoś ma jakieś doświadczenie to byłoby super. Acha jak chcę przerzucić do zewnętrznego ramu całą zawartość tak aby nie korzystał z wewnętrznego. Pozdrawiam
Tue, 29 Jan 2008 11:45:45 +0100, na pl.misc.elektronika, MK napisał(a):
........
Jeśli włączenie ext ram będzie w main - to zostanie stracona przeprowadzana wcześniej inicjalizacja zmiennych oraz domyślne zerowanie. Rzeczywiście najlepiej w init3 ( te sekcje startowe właśnie do takich celów są ). Można to zrobić dodatkowym pliczkiem asm albo bezpośrednio w C, deklarując i definiując funkcję :
Funkcji tej nigdzie jawnie nie wywołujemy - sama definicja powoduje umieszczenie kodu w odpowiednim miejscu - zaraz za wektorami przerwań a przed załadowaniem zmiennych inicjalizowanych:
.............................
0000008c <__ctors_end>: 8c: 11 24 eor r1, r1 8e: 1f be out 0x3f, r1 ; 63 90: cf ef ldi r28, 0xFF ; 255 92: d0 e1 ldi r29, 0x10 ; 16 94: de bf out 0x3e, r29 ; 62 96: cd bf out 0x3d, r28 ; 61
00000098 <EnableExtRam>:
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.