Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Computer Controls
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Jak zaprogramować ARM ATMEL za pomocą ARMcable I Propox ?

26 Sty 2006 08:44 6978 13
  • Poziom 20  
    Witam
    Posiadam modół MMsam7s z mikrokontrolerem ARM firmy Propox http://www.propox.com/products/t_134.html oraz ARMcable I - Programator/debugger mikrokontrolerów ARM kompatybilny z Macraigor Wiggler http://www.propox.com/products/t_122.html.

    Uczę się obsługi tego urządzonka i szukam porady jak zaprogramować procek. Niestety producent nie zamieścił instrukcji obsługi programatora na swojej stronie. Program kompiluje w CrossWorks for ARM - wersji uczelnianej i nie wiem co dalej. Jeżli ktoś ma pomysł jak zmusić programator do zaprogramowania procka prosił bym o poradę.

    Wdzięczny będę z wszystkie wskazówki imateriały dotyczące pracy z tym modułem oraz procesorami ARM firmy Atmel.

    Może istnieje inna możliwość niż ten programator np. USB lub RS232

    Pozdrawiam
    Piotr
  • Computer Controls
  • Pomocny post
    Poziom 18  
    Ja posiadam takze modul propoxa z at91sam7s256 na pokladzie. Dorobilem sobie jtag wigglera niestety takze nie udalo mi sie zaprogramowac pamieci flash. Debugowanie z ramu jest ok a flash w ni w zab :( Flash programuje wiec przy uzyciu programu SAM-BA i interfejsu USB. Meczaca jest inicjacja SAM-BA ze wzgledu na koniecznosc odczekania 10s. Po za tym jest ok, szybkosc programowania super ;) Polecam wiec ten sposob. Dla ulatwienia dorobilem na plytce rozszerzenia mikroswitch i podlaczylem do pinu tst. Na poczatek mozesz wejsc w tryb SAM-BA poprzez zwarcie pinu tst z resetem( sasiedni pin).
    pozdr.
  • Computer Controls
  • Poziom 20  
    To dlaczego piszą że jest to programator?
    Propox twierdzi że za kilka dni ukaże się opis oprogramowania procka przy użyciu tego programatorka - poczekam , a jak nie to poproszę o wyjaśnienie. Doczytałem się w EP 1/2005 o sposobach programowania ARM ATMELA który pokrywa się z Twoim rozwiązaniem.

    Dzięki za wskazówki i poradę
    Pozdrawiam
    Piotr
  • Poziom 20  
    Czekałem, pisałem, monitowałem do propoxa i nie doczekałem się odpowiedzi.
    Więc zwracam się z problemem wpisu programu do flasha do Ciebie.

    W helpie Sam-Ba doczytałem się :

    Flash an application

    1.Power on the board(s) and connect the target(s) to the PC with USB links.
    2.Launch AT91SAM-PROG application.
    3.Configure the application.
    a.If the board is not an AT91SAM7S-EK and if a led is connected to a PIO, the user can select the right PIO to turn on a led when programming is finished.
    4.Check “Set Security Bit” box to set the Security Bit once flash is programmed.
    5.Select the file to flash either with the “Browse” button or simply by dragging and dropping desired file on the application window. If “Auto-mode” box is checked, programming starts automatically.
    6.If “Auto-mode” box is not checked, click the “Write Flash” button to start flash programming.
    7.If the result is OK, the user led is turned on and the Success field is updated. If the Flash is not programmed correctly, the user led is turned off and the Failed field is updated.


    Czyli żeby zaprogramować flesza chyba nie potrzeba zwierać pinów TST ?
    Wcześniej w helpie jest napisane że procedura zwierania pinu dotyczy wpisywania danych do pamięci RAM.
    Sprawdziłem na wiglerze propoxowym i okazało się że do ram-u wpisuje się bez problemu natomiast do flesza raczej nie da rady. Więc pozostaje mi tylko wpisanie do flesza. Jeżeli mógł bym to robić bez zwierania pinów i wlutowywania się się z kabelkami było by super.


    Czy mógł byś mi napisać krok po kroku jak wpisujesz program do flesza przy użyciu tego programu. Które jumperki na płycie mają być podłączone , jak rozpoznać urządzenie usb, gdzie jest sterownik usb, jak wpisać i kasować flasza.

    Dziękuje z góry
    Pozdrawiam
    Piotr
  • Poziom 18  
    Po pierwsze używam programu SAM-BA nie SAM-PROG. Procedura programowania flasha wyglada nastepujaco:
    1/ przy wylaczonym zasialniu zwierasz pin tst z plusem,
    2/ wlaczasz zasilanie i czekasz 10 s.
    3/ wylaczasz zasilanie i wlaczasz je ponownie
    4/ odpalasz progrtamik SAM-BA, wybierasz polaczenie USB lub COM
    5/ Nastepnie na zakladce FLASH wybierasz open i wyszukujesz plik binarny z programem dla SAM-a ( z rozszerzeniem .bin)
    6/ klikasz Send File , czekasz na zaladowanie softu (ulamek sekundy dla USB)
    7/ program zapyta sie czy usunac blokade regionow , odpowiadasz tak
    8/ program zapyta czy zalozyc lock - zrobisz jak uwazasz
    9/ wylaczasz zasialnie i wlaczasz ponownie
    10/ cieszysz sie mrugajaca diodka itp. ;)
    Program SAM-PROG udalo mi sie uruchomic zaledwie kilka razy(wyskakuja rozne bledy..). Sluzy on z tego co zrozumialem do programowania wiekszej ilosci kostek SAM podczas jednej sesji programowania. Jednak programowanie flasha w tym programie i tak wymaga zaladowania wewnetrznego bootloadera, wiec zwieranie pinu tst Cie nie ominie ;) Pokrotce chodzi o to, że podczas specjalnego trybu (zwierania pinu tst do + (sa i inne warunki!) )z dodatkowej pamieci jest przepisany program bootloadera do pamieci flash, po ponownym uruchomieniu procka jest on w trybie pracy z pamieci RAM i mozliwe jest przeprogramowanie pamieci FLASH.
    Pamiec flash kasowana jest automatycznie podczas programowania choc czytalem tez, ze aby skasowac pamiec flash trzeba zewrzec pin ERASE do masy podczas wlaczania zasilania. Jest tez mozliwosc skasowania flasha poprzez uzycie komendy w programie SAM-BA.
    Ps. W styczniowym numerze EP 2006 rowniez omowione zostaly sposoby programowania procesorow ARM dla rodziny LPC i SAM7S...
  • Poziom 20  
    Dzięki - przetesuje i podzielę się uwagami.
    Mam nadzieję że będzie się programował, bo innej alternatywy nie mogę znaleść. Jak byś podpowiedział skąd czerpiesz informacje na temat ARM ATMEL , może znasz jakieś publikacje , stronki lub książki - oczywiście poza stroną atmela i at91.com .

    Swoją drogą to ciekawe dlaczego piszą że programator propoxa jest kompatybilny z Crossworks 1.5 a taka opca jest.
    Zainstalowałem sobie 30 dniową wersję , aktywowałem i niestety nie programuje pamięci flash.
    Ciekawe jaki programator Jtag to robi z corssworksa?

    Dziękuje jeszcze raz
    Pozdrawiam
    Piotr
  • Poziom 16  
    zerknij na olimex'a tam na schemat wiglera dla arm,

    Ale swoja droga to czesty "problem" braku zwarcia odpowiednich pinow na DSUB w klonach wiglera. Przyjrzyj sie schematowi powinno byc jasne.

    Marcin


    www.embedded.org.pl
  • Poziom 20  
    Finalnie okazało się że trzeba odpowiedni pin na płytce i wszystko zaczyna się ładnie programować spod wigllera.

    Jeśli procesor jest zabezpieczony przed odczytem w takiej sytuacji
    rozwiązaniem jest skasowanie całego procesora poprzez podanie na końcówkę ERASE wysokiego poziomu logicznego. Niestety w wersji rev1 modułu dostęp do tej końcówki jest utrudniony i wymaga nieco precyzji.

    Może się komuś przyda:)
    Piotr
  • Poziom 11  
    Mam problem. Pisze program w Keilu, on mi kompiluje na HEX. Mam programator Wiggler'a, wszystko by było fajnie gdyby nie to, że procesor nie startuje.
    Ma ktoś jakiś pomysł??
  • Poziom 18  
    No to może spróboj przy użyciu programu SAMBA przez USB lub rs.Jesli bedzie działało to znaczy, że hardware masz ok a jesli nie to pewnie soft do poprawy...
    pozdr.
  • Poziom 11  
    Nie mam tych programatorów;/
    A jakie programy konwertują na elf lub t19??
    można programować go plikiem hex??
    czy lepiej tymi powyżej?
  • Poziom 21  
    Jakich programatorów. Do programowania przez USB nie potrzebujesz żadnego programatora. Procedura opisana jest w tym temacie kilka postów dalej.
    Jaki masz sprzęt i co to za program? Może problem leży w programie, który wgrywasz.
    Na elf się nie konwertuje. To jest plik wynikowy generowany przez kompilator gcc. O plikach t19 nie słyszałem, może chodzi Ci o s19 a to są pliki w formacie motoroli. Można poszukać na sieci narzędzi np. hex2s19.exe
    http://www.ezl.com/~rsch/S_Records/Hex2s19.zip
    Spróbuj programu
    http://kjell.e.andersen.googlepages.com
    Pięknie i szybko zapisuje flasha za pomocą wigglera. Jako plik wejściowy podajesz właśnie s19.
    UWAGA - musisz mieć skasowane lockbity bo inaczej wydaje się jakby się wszystko zaprogramowało a tym czasem wszystko jest po staremu.
  • Poziom 11  
    Programator juz działa.
    Pisze program w keilu, a on domyślnie ma ustawiony adres startowy Flasha na 0x00100000.
    Do konwersji użyłem hex2bin -> bin2s19, gdyż hex2s19 nie działał mi.
    Aby konwersja przebiegła bez problemu należy zmienić adres startowy Flasha w keilu na 0x0, a później adres startowy flasha w programie SAM7S programmer na 0x00100000 i działa programator bez problemu:)
    Dziękuję za pomoc.