AT91SAM7S64 i minimalne peryferia

Witam!

Czy ktoś z grupowiczów miał może do czynienia z procesorem AT91SAM7S64 ? Jest za drobne pieniązki w Seguro i chiałbym go sobie kupić do "zabawy" w ARMy.

Jednak zanim to zrobie pytanie wprost:

Jaki jest zestaw minimalny peryferiów do niego ? wydaje mi się że wystarczy zasilanie, układ resetu i kwarc zewnetrzny + troche kondensatorów (no i jakas komunikacja ze światem typu JTAG). Na początek zakładam wykorzystanie wyłacznie pinów I/O do zabawy i chciałbym znać minimalny zestaw komponentów.

Zależało by mi również na kompilatorze gcc do niego i jakimś programamtorem. Rozumiem, że albo JTAG albo coś na RS. Jesli JTAG to czy ktoś może mi polecić działający i prosty programator (kabel+soft) ?

Ogólnie chce poskładać sobie prosty starter kit do niego i wreszcie zacząć ARMy bo wstyd że ich jeszcze nie dotykałem bezpośrednio.

Reply to
Sebastian Bialy
Loading thread data ...

Jeśli chodzi o peryferia to przykładowy schemat jest dostępny tu:

formatting link
tam też opis jak korzystać z oprogramowania SAM-BA do programowania ARMów Atmela.

Reply to
Kristech

M.in. ja ale dokładnie mówiąc z AT91SAM7S256.

Doczep do zabawy jakiś przycisk, diodkę LED no i koniecznie gniazdko USB bo w tym jest cała zabawa. :-) W zależności co chcesz robić, przyda się też MAX3232 i wyświetlacz LCD. Oraz oczywiście przycisk RESET jeżeli nie zapomnisz go włączyć programowo przy starcie softu (domyślnie RESET jest nieaktywny po resecie procesora).

Ściągnij pakiet gnuarm. Do programowania przez JTAG używam darmowego programu armtool dostosowanego do standardowego kabelka Altera Byteblaster.

Reply to
Adam Dybkowski

Faktycznie gnizadko USB mozna by bo to chyba trywialne. Tyko ze ja planuje srobić przelotkę z tego CPU na DIP i chodzi mi przede wszystkim o zestaw elementów na płytce przelotki, które po podłaczeniu zasilania powinny odpalić mi procesor. Na głównej płyce bedzie masa elementów i USB też się znajdzie ;)

ok, czy to ByteBlasterMV ? Tak orientacyjnie taki jak na

formatting link
stronie 3-ciej.

Czy uzywasz SMB-BA ? Może by to było właściwe rozwiązanie zamiast kabelka ...

Reply to
Sebastian Bialy

Ok pozerkam, natomiast schemat jest troche za duży ;) Chodziło mi o to co jest _niezbedne_ do odpalenia CPU.

Reply to
Sebastian Bialy

Tak, chodziło mi właśnie o taki kabelek. Przy okazji przydaje się też do programowania Alter. Źródła programu armtool musiałem minimalnie zmienić aby przystosować go do pinoutu tego kabla po stronie portu LPT (oryginalnie armtool obsługuje inny kabel).

Nie. Zabawę z AT91SAM7S256 zacząłem od jednych z pierwszych w Polsce próbek, kilka miesięcy temu. Wtedy jeszcze SAMy chyba nie miały ROMu a o tym bootloaderze nikt nie słyszał. I tak już zostało, że zawsze używam JTAGa do pierwszego programowania tego procka. Na kolejne programowania mam już oczywiście swój bootloader, który robi dokładnie to, co ja chcę. A nie co chciał Atmel.

Reply to
Adam Dybkowski

Nie. Procesory AT91SAM7Sxx są zasilane napięciem 3,3V i takim napięciem musi być też zasilany konwerter poziomów RS232. Czyli MAX3232 albo tańszy odpowiednik (np. ST3232CD kosztujący około 4 zł w Seguro). Bez sensu byłoby użycie konwertera 3,3V-5V (np. zrobionego na buforze

74LVC245) aby potem podłączyć układ MAX232 zasilany 5V.
Reply to
Adam Dybkowski

A jaki jest sens takiego minimodułu z samym procesorem? I tak musisz zaprojektować główną płytkę z peryferiami - wstaw od razu na nią procesor.

Reply to
Adam Dybkowski

Adam Dybkowski napisał:

Pracujesz pod Cygwinem? Jesli tak to czy instalowales Cygwina osobno czy tez korzysztasz z plikow dolaczonych do pakietu GNUARM? Pytam, bo gdzies czytalem, ze GNUARM czasami sie zle sprawuje z tymi plikami dolaczonymi i trzeba Cygwina instalować osobno.

Reply to
Kristech

Ok, jesli armtool się wygodnie kompiluje w cygwinie to tez się pobawię.

Pytanie z ciekawości: czy skoro nie używasz SAM-BA i masz coś "lepszego" to na czym ta lepszość polega? Pytam, bo jesli zdecyduje się na SAM-BA to chciałbym również wiedziec co jest w nim zlego (a przypuszczam, że pewnie trzeba stosować jakieś sztywne kwarce, etc ...).

Docelowo potrzebuje w zasadzie dużą moc obliczeniową, ilośc Flash'a jest niekrytyczna, jednak z drugiej strony mozliwośc uaktualniania firmware przez USB była by bardzo fajnym pomysłem.

Reply to
Sebastian Bialy

To taka "przelotka" na DIP - chodzi mi o to aby można było łatwo obudować CPU _różnymi_ peryferiami. Wiem, że łatwiej by było wstawić wszystko na jedną płytkę, jednak wolałbym mieć wiele róznych płytek uniwersalnych do róznych zastosowań - robiłem tak z AVRami i było mi wygodniej niż wielka kobyła która ma 90% zbędnych peryferiów.

Jak "wyjdzie" mała to pomysle nad wiekszą.

Reply to
Sebastian Bialy

Sebastian Bialy napisał(a):

To może jeszcze inna koncepcja - mała płytka(zestaw) startowa z podstawowymi peryferiami i ze złączem rozszerzeń, do którego można podłączyć moduły z innymi peryferiami? W zrobionej niedawno płytce pod AVR-y mam złącze pod LCD graficzny(a więc także pod alfanumeryczny), dwa przyciski, dwa LED-y(jeden sterowany jedynką a drugi zerem), enkoder inkrementalny, złącze do klawiatury PS/2, odbiornik podczerwieni serii TFMS5xx0, jeden element 1Wire(termometr), wyprowadzony port RS i wejście T0. Do tego oczywiście port ISP i podwójny stabilizator - całość można zasilać z 3,3 lub 5V. A na złączu rozszerzeń wyprowadzone zasilanie, cały jeden port, linie magistrali SPI oraz linie dedykowane magistrali I2C. W założeniu pod złącze rozszerzeń poprzez rozgałęźnik będzie można wpiąć maksymalnie trzy "karty" rozszerzeń. W pierwotnych planach miałem stworzenie naprawdę dużego zaestawu startowego ale poległem na projektowaniu PCB.

Reply to
badworm

Owszem, tylko że u mnie ta "mała płytka" chciałbym aby była bez peryferiów, tylko zasilanie, reset, erase, JTAG. Reszta w DIP na uniwersalnych.

Heh, jak ja nie lubie projektować takich gestych PCB, jednostronna jest praktycznie niewykonalna :( nawet pod kątem tylko zasilania CPU i drobnicy peryferyjnej ...

Reply to
Sebastian Bialy

Tak, pracuję pod cygwinem. Zainstalowany wcześniej, potem gnuarm. O co chodzi z tymi plikami dołączonymi do gnuarm'a? U mnie gcc korzysta ze standardowych plików nagłówkowych (np. stdio.h) z gnuarm'a.

Reply to
Adam Dybkowski

Bez problemu. Musisz tylko w makefile'u dołączyć bibliotekę ioperm. No i oczywiście włączyć w cygwinie (AFAIR 'ioperm -i').

Pierwsze programowanie czystego proca robię przez JTAG przy pomocy armtool'a, wgrywam swój bootloader a dalej całe działanie proca jest w rękach bootloadera - obsługuje on m.in. system plików w pamięci DataFlash i przepisuje plik do wewnętrznej pamięci Flash procesora. Można też plik wciągnąć z komputera przez UART. USB u mnie działa dopiero w głównym programie, nie potrzebuję go w bootloaderze.

Nie wiem, czy jest lepszy czy gorszy. SAM-BA nigdy nie używałem.

Ile "dużej mocy obliczeniowej" Ci potrzeba? Jeżeli używasz USB, zegar procesora musi chodzić na 48 MHz, jeżeli USB nie działa to AFAIR max. 55 MHz. Może zastosuj AT91RM9200 - tam zegary CPU i USB są niezależne i procesor może chodzić spokojnie na 180 czy 200 MHz.

Reply to
Adam Dybkowski

Ależ oczywiście zrób sobie wiele różnych płytek uniwersalnych do różnych zastosowań. Tylko zamiast podstawki DIP wmontuj od razu procesor. Nawet zajmie mniej miejsca niż podstawka. A może potrzebujesz płytki na tyle uniwersalnej, aby przyjęła SAM'a albo jakąś ATmegę albo '51?

Reply to
Adam Dybkowski

Jeżeli mamy do czynienia z CPU to IMHO płytki jednostronne w ogóle nie mają racji bytu - i nie ma się co nad nimi zastanawiać.

Reply to
Adam Dybkowski

Ok, na razie bez przesady, chwilowo wystarczy mi programowanie przez rs/usb :)

"Więcej" niż Atmega. Muszę troche policzyć matematycznie i ATMega jest jakies 1.5 raza za wolna do tego nawet poganiana zegarem >16MHz.

Nie aż tyle, choć docelowo aż mnie korci na zapuszczenie jakiegoś poważniejszego OSa na ten cpu, jdnak na razie robie to czysto amatorsko i nawet nie myślę o wykorzystaniu takich procesorów. Zobaczymy za pół roku :)

PS. Wlasnie oglądam pinologię tego CPU i chyba bez przelotki przynajmniej 2 stronnej się nie obejdzie :( Metoda żelazkowa odpada.

Reply to
Sebastian Bialy

A nie da się żelazkiem/laminatorem zrobić płytki dwustronnej a potem ręcznie pokynarować przelotki?

Reply to
Adam Dybkowski

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.