konto usunięte
Temat: problem z programowaniem AT91RM9200
witam,Szukałem pomocy już na kilku forach jednak nigdzie nie uzyskałem rozwiązania na mój problem:/
Posiadam zaprojektowaną przeze mnie płytkę z AT91RM9200 i męczę się z zaprogramowaniem tego już n-ty dzień... Projekt jest oparty na AT91RM9200-DK i podobnych projektach.
Na razie nie działa mi wysyłanie danych z PC do procka przez DBGU (myślałem że to wina spalonego Maxima ale po jego wymianie dalej nie śmiga). Na szczęście wysyłanie danych w drugą stronę działa w porządku;)
Główny problem wystąpił jednak gdy chciałem wrzucić jakiegokolwiek bootloadera do podłączonego dataflasha AT45DB041D.
W związku z tym że nie mogę wgrać bootloadera za pomocą protokołu xmodem musiałem zapisać go do dataflasha w następujący sposób:
ładuję program bootloadera do wewnętrznej pamięci SRAM a ten sam kopiuje się do dataflasha.
Ze stronki http://www.open-research.org.uk/ARMuC/At91rm9200_Booti... mam bootloader romboot przeportowany na gnuarm gcc i przekompilowany za pomocą gnuarm-4.0.2. Przerobiony przeze mnie troszkę kod ma w tej chwili ok. 11kB.
Podczas próby zapisu pamięci wyskakuje Data Abort w różnych miejscach w kodzie odpowiedzialnym za zapis Dataflasha i nie jestem w stanie tego namierzyć.. Wydaje mi się że ostatnio coraz bardziej wariuje mi debugger (Eclipse + GDB + OpenOCD).
Próbowałem też bootloadera Darella Harmonna, jeszcze kilka dni temu zapisywał mi zawsze 8 stron pamięci i zawieszał się przy 9ej, jednak od pewnego czasu przestało mi to działać:/
Dzisiaj przynajmniej udało mi się przetestować podłączoną zewnętrzną pamięć SDRAM i wygląda na to że działa ok:]
A oto moje pytania:
Ma ktoś może pomysł co może być nie tak lub gdzie robię głupi błąd?
Może powinienem użyć innego bootloadera / toolchaina?
Jak sprawdzić czy chip nie jest uwalony?
Co może być nie tak z tym DBGU?
Może któreś peryferia nie są poprawnie zainicjalizowane? (chociaż nie wydaje mi się bo ten kod, który mam podobno działa.. Chyba że to wina mojego kompilatora).
Ma ktoś namiary na przykładowe programy do AT91RM9200? Na necie znalazłem tylko te ze stronki Atmela, ale one są pod ADS.
Z góry dziękuję za wszelką pomoc:)
Kuba