-
31. Data: 2010-12-16 20:13:02
Temat: Re: Jakich ARMów używacie.
Od: Adam K <a...@o...pl>
Dnia 2010-12-09 06:05, Użytkownik max441 napisał:
>
> Witam,
> Jak w temacie, ciekawi mnie jakie ARMy są najczęściej używane przez
> konstruktorów elektroników w Polsce.
>
> P
Różnych z rodziny LPC21XX. Przymierzam się do LPC1114 oraz LPC17XX
AK
-
32. Data: 2010-12-17 09:00:49
Temat: Re: Jakich ARMów używacie.
Od: "Robbo" <y...@m...com>
Pomoglibyście mi wybrać rodzinę ARM, gdybym
podał moje potrzeby?
R.
-
33. Data: 2010-12-17 09:51:19
Temat: Re: Jakich ARMów używacie.
Od: Mario <m...@p...onet.pl>
W dniu 2010-12-17 10:00, Robbo pisze:
> Pomoglibyście mi wybrać rodzinę ARM, gdybym
> podał moje potrzeby?
>
> R.
Dawaj, może ktoś pomoże.
--
Pozdrawiam
MD
-
34. Data: 2010-12-17 18:21:01
Temat: Re: Jakich ARMów używacie.
Od: "Robbo" <y...@m...com>
Witam ponownie,
Prośba o nakierowanie mnie na jakąś rodzinę ARM, w którą mógłbym wejść i
pozostać na lata.
Do tej pory programowałem mikrokontrolery Atmel AVR ATmega8/16/32. Używałem
WinAVR. Mam doświadczenie w programowaniu AVR32 (60MHz).
Do mikrokontrolera podłączam wyświetlacze LCD znakowe (będę chciał także
niewielkie monochromatyczne graficzne). Steruję różnymi urządzeniami (np.
kluczuję tranzystorami bądź tyrystorami w falownikach z relatywnie dużą
częstotliwością). Korzystam z PWM, UART, przetworników A/C, timerów,
przerwań sprzętowych wyzwalanych sygnałami zewnętrznymi bądź wyzwalanych
tikami trzech zegarów. Podłączam przyciski i przełączniki. Zapisuję
wprowadzone przez użytkownika ustawienia urządzenia w nieulotnej pamięci
EEPROM.
Chciałbym, aby wybrana rodzina ARM umożliwiała mi to wszystko co powyżej, a
ponadto oferowała większą moc oraz spełniła jakieś moje potrzeby w
przyszłości (może USB, może kiedyś Ethernet, może kolorowy wyświetlacz).
Moje potrzeby:
- taktowanie od 60MHz do kilkuset MHz (teraz chciałbym mieć ze 100MHz, a w
przyszłości 200-300MHz byłoby OK; ew. łatwość migracji od wolniejszych do
tych szybszych, w obrębie produktów danego producenta; do jednego projektu
może mi starczy 60MHz, a do innego chciałbym 200MHz -- chciałbym wtedy po
prostu kupić szybszy procek, ale o tym samym sposobie programowania)
- rozwojowa platforma (aby po roku inwestycji w jedną platformę nie okazało
się, że świat poszedł w zupełnie innym kierunku :)
- możliwość pracy w środowisku przemysłowym (zakłócenia falowników itp.)
- będę raczej programował "goły" uC (bez systemu operacyjnego, ale kto wie,
co będzie za 2-3 lata)
- wszystko co możliwe w jednym układzie, tak jak to było w AVR (tylko kwarc
i jedziemy; bez konieczności podłączania zewnętrznych pamięci;
kilkanaście/kilkadziesiąt kilobajtów mi starczy)
- pamięć nieulotna na zmienne (coś jak EEPROM znany z AVR) kilka kilobajtów
- ważne: dostępność najlepiej w Polsce minimodułów (płytka z uC, kwarcem,
kondensatorami, rezystorami), abym nie musiał lutować SMD (chodzi mi o tego
rodzaju płytki: http://www.kamami.pl/index.php?ukey=product&productI
D=26118
http://www.kamami.pl/index.php?ukey=product&productI
D=20934)
- dostępność zestawów uruchomieniowych
- dostępność tutoriali, przykładowych programów, dokumentacji
- UART, być może CAN, kilka PWM, z 8 przetworników A/C, ze 3 zegary, co
najmniej 40 linii I/O (to i tak trochę mało; wolałbym 64 linie), SPI,
przetwornik C/A byłby super, kontroler przerwań, na plus byłyby operacje
zmiennoprzecinkowe
- do AVR używałem WinAVR; do AVR32 używałem AVR32 Studio; chciałbym aby
programowanie ARM w miarę możliwości odbywało się przy wykorzystaniu
podobnych narzędzi...
- kawy i herbaty nie musi robić ;)
Reasumując, chciałbym prawie taki AVR ATmega, ale o wiele szybszy i z
większą ilością pamięci
Mam nadzieję, że ktoś pomoże mi dokonać wyboru, bo jak na razie to po całym
dniu czytania o tym głowa mnie boli od mnogości możliwości.
R.
-
35. Data: 2010-12-17 22:46:13
Temat: Re: Jakich ARMów używacie.
Od: Adam Dybkowski <a...@4...pl>
W dniu 2010-12-16 11:37 Robbo napisał(a):
> Dzięki wszystkim za oświecenie.
> W takim razie po co Atmel wypuszczał AVR32?
Aby nie płacić licencji ARMowi od każdego procka. Wymyślili swojego
własnego 32-bitowego RISCa i próbują namówić świat na kupowanie go.
Podobnie zresztą postąpił Microchip z serią PIC32, tyle że AFAIR zamiast
wymyślać procek od zera wzięli sprawdzoną konstrukcję jądra firmy MIPS.
Pewnie tańszą niż ARM. Zresztą same procki z jądrem MIPS są popularne
m.in. w routerach a kiedyś też były stosowane w PDA równolegle z ARMami.
Teraz w urządzeniach przenośnych są stosowane prawie wyłącznie ARMy.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
-
36. Data: 2010-12-17 23:02:39
Temat: Re: Jakich ARMów używacie.
Od: Adam Dybkowski <a...@4...pl>
W dniu 2010-12-17 19:21 Robbo napisał(a):
> Moje potrzeby:
> - taktowanie od 60MHz do kilkuset MHz (teraz chciałbym mieć ze 100MHz, a
> w przyszłości 200-300MHz byłoby OK; ew. łatwość migracji od wolniejszych
> do tych szybszych, w obrębie produktów danego producenta; do jednego
> projektu może mi starczy 60MHz, a do innego chciałbym 200MHz
No to tutaj mamy pierwszy problem - bo im szybszy procek tym (zwykle)
bardziej skomplikowane jądro, brak wewnętrznej pamięci Flash oraz dużego
RAMu (jest tylko cache). Przy 200MHz nie ma co liczyć na coś mniejszego
niż 926EJ-S (np. ze stajni Atmela AT91RM9200 czy AT91SAM9261). Mocno
zintegrowane układy za to (np. 512KB Flash + 64KB RAMu w środku) są dużo
wolniejsze (np. atmelowy AT91SAM7S512 chodzi na 48MHz). Może ktoś poda
przykłady innych producentów ale nie liczyłbym na dobrze zintegrowanego
ARM7TDMI szybszego niż 60-80 MHz.
> - rozwojowa platforma (aby po roku inwestycji w jedną platformę nie
> okazało się, że świat poszedł w zupełnie innym kierunku :)
Jak na razie ARMy dobrze się trzymają. Conajwyżej przeskoczysz tylko do
innego producenta (przerobisz tylko sterowniki I/O a reszta kodu
pozostanie taka sama).
> - możliwość pracy w środowisku przemysłowym (zakłócenia falowników itp.)
> - będę raczej programował "goły" uC (bez systemu operacyjnego, ale kto
> wie, co będzie za 2-3 lata)
Małe szanse nawet z prostymi ARMami. Z obsługą przerwań czy USB tyle się
narobisz, że od razu lepiej pomyśl chociaż o małym darmowym systemie.
Nawet gdyby miał tam działać tylko 1 wątek. Polecam zainteresować się
np. Nut/OS lub FreeRTOS.
> - wszystko co możliwe w jednym układzie, tak jak to było w AVR (tylko
> kwarc i jedziemy; bez konieczności podłączania zewnętrznych pamięci;
> kilkanaście/kilkadziesiąt kilobajtów mi starczy)
A no właśnie. Ale nawet tych kilkudziesięciu KB RAMu nie mają procki, od
których wymagasz 200 czy 600 MHz. Zresztą przy ARMach zajętość pamięci
szybko rośnie i szybko stwierdzisz, że zamiast 32 wolałbyś jednak mieć
512 KB RAMu.
> - pamięć nieulotna na zmienne (coś jak EEPROM znany z AVR) kilka kilobajtów
W Atmelach nie znam (za to procek może sam programować swój Flash i tam
od biedy emulować niby EEPROM). Może ktoś podać przykłady od innych
producentów?
> - ważne: dostępność najlepiej w Polsce minimodułów (płytka z uC,
> kwarcem, kondensatorami, rezystorami), abym nie musiał lutować SMD
No to większy wybór chyba tylko NXP (LPCxxx) oraz Atmela (AT91xxx).
Innych producentów procków ARM (ST, TI) znajdziesz conajwyżej pojedyncze
płytki.
> - dostępność zestawów uruchomieniowych
Są od wszystkich producentów. Ale często ceny fabryczne bardzo nie
zachęcają.
> - dostępność tutoriali, przykładowych programów, dokumentacji
Jest do wszystkiego.
> - do AVR używałem WinAVR; do AVR32 używałem AVR32 Studio; chciałbym aby
> programowanie ARM w miarę możliwości odbywało się przy wykorzystaniu
> podobnych narzędzi...
A tu jest akurat pełna zgodność i do wszystkiego pasuje gcc. Podstawowe
instalacje pecetowe to Yagarto oraz gnuarm+Cygwin. Można do tego
podczepić Eclipse, bardzo wygodne debugowanie przez JTAG (jak w AVR
Studio dla AVRków z JTAGiem).
> Reasumując, chciałbym prawie taki AVR ATmega, ale o wiele szybszy i z
> większą ilością pamięci
No to do rozpoczęcia zabawy z ARMami polecam jakiś zestaw startowy z
AT91SAM7S256. Sam procek kosztuje ze 30 zł (tyle co ATmega128) a ma
256KB Flasha i 64KB RAMu oraz USB. Śmiga na 48 MHz (a gdy nie używasz
USB to do 55MHz), wystarczy do wielu zastosowań gdzie ATmedze nie
starcza RAMu lub po prostu brakuje wydajności.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
-
37. Data: 2010-12-17 23:36:44
Temat: Re: Jakich ARMów używacie.
Od: dq <d...@p...fm>
W dniu 2010-12-18 00:02, Adam Dybkowski pisze:
> A no właśnie. Ale nawet tych kilkudziesięciu KB RAMu nie mają procki, od
> których wymagasz 200 czy 600 MHz. Zresztą przy ARMach zajętość pamięci
> szybko rośnie i szybko stwierdzisz, że zamiast 32 wolałbyś jednak mieć
> 512 KB RAMu.
Kolega nie zauważył chyba Cortexów M4. Choćby od Freescale
(180 MHz)i NXP (150 MHz).
> No to do rozpoczęcia zabawy z ARMami polecam jakiś zestaw startowy z
> AT91SAM7S256. Sam procek kosztuje ze 30 zł (tyle co ATmega128) a ma
> 256KB Flasha i 64KB RAMu oraz USB. Śmiga na 48 MHz (a gdy nie używasz
> USB to do 55MHz), wystarczy do wielu zastosowań gdzie ATmedze nie
> starcza RAMu lub po prostu brakuje wydajności.
>
Do nowych projektów nie polecałbym przestarzałej rodziny 7 TDMI. Lepiej
od razu pójść w Cortex M3
-
38. Data: 2010-12-17 23:41:44
Temat: Re: Jakich ARMów używacie.
Od: "Pitlab" <p...@p...wp.pl>
> Może ktoś poda przykłady innych producentów ale nie liczyłbym na dobrze
> zintegrowanego ARM7TDMI szybszego niż 60-80 MHz.
LPC17xx pracuje do 120MHz ale EEPROMu też nie ma.
--
Piotrek.
http://www.pitlab.pl
-
39. Data: 2010-12-18 08:34:06
Temat: Re: Jakich ARMów używacie.
Od: Zbych <a...@o...pl>
W dniu 2010-12-18 00:02, Adam Dybkowski pisze:
> A tu jest akurat pełna zgodność i do wszystkiego pasuje gcc. Podstawowe
> instalacje pecetowe to Yagarto oraz gnuarm+Cygwin.
gnuarm - ostatni news z 2006-08-01. Bawisz się w archeologię?
-
40. Data: 2010-12-19 23:50:18
Temat: Re: Jakich ARMów używacie.
Od: Adam Dybkowski <a...@4...pl>
W dniu 2010-12-18 09:34 Zbych napisał(a):
>> A tu jest akurat pełna zgodność i do wszystkiego pasuje gcc. Podstawowe
>> instalacje pecetowe to Yagarto oraz gnuarm+Cygwin.
>
> gnuarm - ostatni news z 2006-08-01. Bawisz się w archeologię?
:) Nie wiedziałem, że go nie rozwijają. Od ponad roku nie używam.
Yagarto rzeczywiście było lepszym przykładem. Ostatnio z kompilatora
ARMa korzystam tylko w Android NDK.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.