ik vroeg me af of er hier mensen zijn die wel eens wat doen met een arm proc.
Zelf heb ik ervaring in pic en avr maar weet eigenlijk niks van arm proc. en eigenlijk lijkt me dat ook wel mooi spul om es mee te expirimenteren.
Als je een arm processor wil programmeren wat heb je dan nodig aan hardware? gaat dat net zo eenvoudig als een pic/ avr. en zijn er ook gratis c compilers voor?
Berry
A PIC-based MP3 player: www.apic-bmp.nl.tt | Intresse in techniek? www.djoamersfoort.nl
GCC is er voor ARM. Ik denk zelfs dat C++ op de ARM kan. Er zullen sowieso veel compilers enzo zijn, ARM werd / wordt in computers gebruikt.
Geen ervaring, maar ik verwacht dat het programmeren niet zo'n groot probleem zal zijn.
ja ik vind het wel een intressant iets.. maar ik denk dat het wel een grote stap is van pic naar arm... maar misschien kunnen mensen met ervaring er wat over zeggen
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 11 mei 2006 20:21:41 schreef wiqu:
ik vroeg me af of er hier mensen zijn die wel eens wat doen met een arm proc.
Ik geef een aantal lessen met de ARM, op dit moment met de Philips LPC2106. (Ik verkoop ze trouwens ook)
We gebruiken de GNU set om te programmeren in assembler, C en C++. Java lijkt ook mogelijk, maar dat hebben we nog niet geprobeerd. Zie http://www.voti.nl/hvu/arm/index.html voor wat informatie.
Voor het programmeren gebruiken we een wiggler-compatible JTAG interface met de insight debugger (downloaden en debuggen, singlesteppen, breakpoints enzo), of de seriele interface met de Philips download tool (alleen downloaden).
Het grootste probleem om 'even' te beginnen met ARMpjes is dat je ze niet kan krijgen in DIP. Ik heb wat verloopprintjes besteld, ik verwacht ze volgende week.
[Bericht gewijzigd door Wouter van Ooijen op ]
ja opzich wel een intressant iets.
qua programmering werkt het op het zelfde principe als gewone microcontrollers?
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 11 mei 2006 22:33:23 schreef wiqu:
qua programmering werkt het op het zelfde principe als gewone microcontrollers?
ja, maar alles is veel 'groter' en complexer. de kleinste ARM van Philips heeft al 2 UARTs (software compatible met PC UARTs), er zit standaard debug hardware in met een JATG interface, een bootloader programma in een apart stukje FLASH, een echt interrupt controller met prioriteiten en vectoren, de timer/pwm kan echt twee onafhnakelijke pulsen maken (handig voor de deadband), aparte stacks voor de 8 verschillende modes, etc etc. Behoorlijk overweldigend als je er mee begint. Ik heb bv net een lesje van 1 uur gegeven over alleen maar de interrupt mechanismen.
Belleblaas
BelleBlazer4Life
Een tip..begin eens te kijken op de website van "Philips".
Verder kan je leuke starter kits (niet zo heel veel geld) vinden op de website van "Antratek" welke ook weer een link naar volgens mij "ElektronicLaden" (hebben trouwens veel) heeft.
Een aantal hardware systemen en betaalbare programmeer kabels (JTAG ofzo).
Ben er eerder al eens mee bezig geweest.
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 11 mei 2006 23:07:47 schreef Belleblaas:
Verder kan je leuke starter kits (niet zo heel veel geld) vinden op de website van "Antratek"
kijk dan (ook?) even op http://www.voti.nl/winkel/p/arm.html
ja het klinkt allemaal wel mooi 
ik was al even aant zoeken geweest naar procc en zo kwam ik ook een avr32bit tegen.
toevallig gaat men zus vandaag trouwen. en krijg ik dus andere kamer.
daar wilde ik ook es wat meer met electronica gaan doen. zal zelf te denken aan een soort mp3 speler met oled schermpje enzo. en eventueel uitbreiden naar aansturing van men sterrenhemel die ik al lange tijd wil.
waren en nu ook arm proc met audio uitgang of kan je beter een externe audio controller gebruiken?
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 12 mei 2006 10:03:20 schreef wiqu:
waren en nu ook arm proc met audio uitgang of kan je beter een externe audio controller gebruiken?
Ik neem aan dat je bedoeld 'mp3 decoder'? Er zijn nogal wat projectjes op hetw eb met een AVR en een externe decoder.
Ik geloof dat een 60 MHz ARM ongeveer het minimum is wat je nodig hebt om een MP3 decoder in software te draaien, maar ik denk niet dat je zo'n project kant en klaar op het web vindt, je zal moeten gaan stoeien met een MP3 library, de compiler, de interface naar je files, etc.
Volgens mij heeft een groepje bij ons op school net zo iets gedaan, maar het staat nog niet op het web.
Berry
A PIC-based MP3 player: www.apic-bmp.nl.tt | Intresse in techniek? www.djoamersfoort.nl
Op 12 mei 2006 10:12:18 schreef Wouter van Ooijen:
[...]Ik neem aan dat je bedoeld 'mp3 decoder'? Er zijn nogal wat projectjes op hetw eb met een AVR en een externe decoder.
YAMPP bijvoorbeeld: www.yampp.com Gebruikt de VS1001/1011 MP3 decoder, leuk dingetje.
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
arm is een van de meest gebruikte processoren in asic's. ( samen met MIPS )
heel veel mobilofoons , bijna alle adsl modems , kabelmodems , plasma tv's en lcd tv's , harde schijven , pda's draaien allemaal intern op ARM processoren.
Het leuke aan een ARM processor is dattie zeer zuinig is , redelijk wat horsepower heeft en vooral : niet veel plaats inneemt op een chip.
nadeel aan een ARM is dat je bijna geen standaard ARM processoren kan krijgen ( die philips is ene uitzondering ) Samsung en intel hebben er ene paar maar dat zijn 400+ poten BGA bakbeesten.Atmel heeft er ook ergens eentje of twee.
een ander ding is development tools. deftige tools voor arm kosten $$$. ( greenhills bijvoorbeeld of lauterbach )
Berry
A PIC-based MP3 player: www.apic-bmp.nl.tt | Intresse in techniek? www.djoamersfoort.nl
Op 12 mei 2006 21:39:36 schreef free_electron:
een ander ding is development tools. deftige tools voor arm kosten $$$. ( greenhills bijvoorbeeld of lauterbach )
Zat GNU spul voor te vinden iirc...
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
> nadeel aan een ARM is dat je bijna geen standaard ARM processoren kan krijgen ( die philips is ene uitzondering )
niet 'ene' maar een hele familie.
maar het is waar: er is geen 'standaard' arm, alleen een brokje ontwerp dat je kan inkopen en in je chips stoppen. lijkt een beetje op 8051...
> ateml heeft er ook een reeks, en er zijn er nog een paar. check welke bordjes Olimex levert, dan weet je welke chips redelijk verkrijgbaar zijn.
> een ander ding is development tools. deftige tools voor arm kosten $$$.
GNU, Keil
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
gnu is inderdaad ene oplossing.
de vraag is alleen : waarom gebruikt gene kat dat ding ? bijna al onze chips zittne vol van de arm processoren ( soms meerdere op 1 chip )
gnu ? niemand wil daar iets van weten. lauterbach en codewarrior zijn schering en inslag ... ik vraag mij af waarom .. der moet een reden zijn ...
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 12 mei 2006 23:11:55 schreef free_electron:
de vraag is alleen : waarom gebruikt gene kat dat ding?
Ik ben geen kat en ik gebruik niets anders.
Als je als laten we zeggen mobiele telefoontjes ontwikkelaar een ontwikkelomgeving moet kiezen dan maakt $2k per ontwikkelaar (die kosten $50..100k per jaar) geen enkele indruk, dus waarom zou je dan GNU nemen? Het prijsverschil is (vanuit die optiek) te verwaarlozen.
Ik denk dat met de opkost van de 'om de hoek' verkrijgbare ARM chips het gebruik van de GNU (en evt andere goedkopere tools) een flinke impuls zal krijgen.
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
nog eens : die gnu tools zijn stukken goedkoper ( gratis ... ) dus waarom toch die peperdure tools kopen ???
de oorzaak is simpel : ARM geeft de interne details van de cpu alleen vrij als je een licentie koopt op de cpu.
de gnu tool is een 'generic' compiler.
er is bij ons ooit ene test gedaan. de code gecompileerd met gnu was 8% groter dan de code die uit de greenhills compiler.
die professionele tools zijn compilers specifiek voor een bepaalde cpu gemaakt.
voor hobby en kmo is gnu perfect. voor industriele werk is het rommel. ( ROM space kost geld )
[Bericht gewijzigd door free_electron op ]
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
> nog eens : die gnu tools zijn stukken goedkoper ( gratis ... ) dus waarom toch die peperdure tools kopen ???
omdat voor professionele organistaties het verschil tussen $2k en $0 niet belangrijk is, de beschikbaarheid van een helpdesk telt dan veel zwaarder
> de oorzaak is simpel : ARM geeft de interne details van de cpu alleen vrij als je een licentie koopt op de cpu.
Onzin. De interne details zijn ruim voldoende bekend voor het maken van een optimale compiler. Timing van een ARM7 is (vergeleken met bv een pentium) heel simpel, nauelijks ingewikkelder dan een PIC.
> er is bij ons ooit ene test gedaan. de code gecompileerd met gnu was 8% groter dan de code die uit de greenhills compiler.
Mooi, dat is een verschil dat in de meeste gevallen nauelijks relevant is. En is er wel goed gelet op de switches? Er circuleren verhalen dat Keil 2x zo compact zou zijn als GNU, maar dat is gebaseerd op de default optimalisatie settings, en dat is bij Keil 'alles aan' en bij GNU 'meeste uit'.
> die professionele tools zijn compilers specifiek voor een bepaalde cpu gemaakt.
Meestal niet, ze zijn gebaseerd op een generieke back-end, vaak zelfs op een tool van een specifieke compiler-tool-leverancier.
> voor hobby en kmo is gnu perfect. voor industriele werk is het rommel. ( ROM space kost geld )
alleen als dat (GNU kost meer ROM waar is), hardware kosten belangrijk zijn (soms is de ontwikkelkosten veel belangrijker), en als je met (bv 8%) minder ROM een kleinere chip kan kiezen! In de meeste gevallen zal dat niet het geval zijn, ROM sizes komen in factoren 2 of nog grotere verschillen.
er zijn trouwens ook professionele tool-leveranciers die een toolset leveren rondom de GNU, met documentatie, support, etc.
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
helpdesk is inderdaad belangrijk. vooral als je bugs in de compiler ontdekt ( is al gebeurd ! ). ook de integratie met debuggers en tracers. ( multi-ice bijvoorbeeld )
ik heb het niet over timing. Correct gebruik van de cache bijvoorbeeld. optimalisatie daarvoor. daar zitten blijkbaar ook grote verschillen tussen de compilers ( ik weet niet of dit nu relevant is voor de philips cpu's. )
ontwikkelkost is niet relevant voor een massaproduct. vooral als je 2 vierkante millimeter kan sparen en je stroomverbruik omlaag haalt.
let wel ik spreek in gans dit verhaal vanuit de optiek waarvoor een ARM processor eigenlijk bedoeld is : de integratie in een asic voor massaproductie. ( harde schijven , set top boxen , handy's (pda/gsm/mp3 ), networking (DSL en cable modem, routers enzomeer) )
voor iemand die met die turnkey dingen aan de slag gaat is dit allemaal niet relevant. Gnu is OK. no problem.
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
> ik heb het niet over timing. Correct gebruik van de cache bijvoorbeeld. optimalisatie daarvoor. daar zitten blijkbaar ook grote verschillen tussen de compilers ( ik weet niet of dit nu relevant is voor de philips cpu's. )
zit geen cache in, dus niet relevant
> ontwikkelkost is niet relevant voor een massaproduct.
maar niet ieder product is een massaproduct. bij Fokker Sapce hebben we 10-tallen jaren gewerkt aan de ERA ruimtearm. inclusief alle testmodellen bestaan er mischien 20 exemplaren van de computer.
> vooral als je 2 vierkante millimeter kan sparen en je stroomverbruik omlaag haalt.
aleen als je de chip zelf ontwerpt
> let wel ik spreek in gans dit verhaal vanuit de optiek waarvoor een ARM processor eigenlijk bedoeld is : de integratie in een asic voor massaproductie.
ik denk niet dat je van 'bedoeld' kunt spreken: oorspronkelijk was-ie bedoeld als CPU voor de opvolger van de ACORN, nu is-ie bedoeld om geld in het laatje te brengen voor ARM inc.
http://nl.farnell.com/jsp/endecaSearch/partDetail.jsp?SKU=1022693&…
hij is zeker niet zomaar te krijgen en niet zo goedkoop maar wellicht interesant om te bekijken. Overgens heb ik nog geen oplossing voor het solderen. ik zat te denken aan solderpaste en een oventje.
iemand nog goede ideeen?