Welke familie microcontrollers is het geschiktst?

Pagina: 1
Acties:

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik heb nu best wat ervaring opgedaan met de 8 bit pic's, maar ik ben toe aan wat meer rekenkracht. Zo zou ik graag met real time audio werken en video (denk aan schermpjes van max ca 5 inch).

Ik ben dus het internet opgegaan een heb daar een hele tijd gezocht, echter blijkt het nog niet zo gemakkelijk goede vergelijkingen te vinden tussen de mogenlijkheden (vaak zijn de threads al 5 jaar oud), de mogenlijkheden die ik heb gevonden:
  • dspic/pic24 (ik vraag me af of deze krachtig genoeg zijn)
  • pic33 (lijkt mij krachtig genoeg, maar ik lees daar niet al te veel positiefs over)
  • STM32 (lijkt mij een goede keuze)
  • Stellaris (is me niet helemaal duidelijk geworden wat de voordelen hiervan zijn boven STM32)
Ik ken de pic architectuur ook nog niet bijzonder goed dus dat maakt niet erg veel uit denk ik, qua programmeer omgeving denk ik dat ik de overstap ook wel kan maken (ik gebruik nu mikroC). Wat wel belangrijk is is dat de familie die ik kies voldoende krachtig is om bovenstaande zaken te kunnen doen, daarnaast moeten er goedkope bordjes te koop zijn zodat een project niet direct heel duur wordt door de microcontroller alleen.

MikroE heeft ook stm32 borden die inclusief programmer en ontwikkel omgeving 450 dollar kosten, wat toch best een bedrag is dus zou ik graag jullie ervaringen/meningen horen.

  • mkleinman
  • Registratie: Oktober 2001
  • Laatst online: 09:33

mkleinman

8kWp, WPB, ELGA 6

Heb je al eens gekeken bij http://www.robosavvy.com ? daar staan ontzettend veel microcontrollers. Van klein tot zelfs mini x86 systemen !

Duurzame nerd. Veel comfort en weinig verbruiken. Zuinig aan doen voor de toekomst.


  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 09-10 23:20

SA007

Moderator Tweaking
Dat lijkt me een prima punt om naar ARM te schakelen met een standaard arm board zoals bijv een raspberry pi of een oude router of...

  • Sissors
  • Registratie: Mei 2005
  • Niet online
ARM is wel een heel breed begrip he. Die STM32s zijn volgens mij ook gewoon ARMs, alleen een andere familie. Je hebt ook de LPC microcontrollers van NXP. Bijvoorbeeld de mbed, die alles in één inclusief ontwikkelomgeving is a 60 euro per stuk (incl programmer), en die is weer redelijk pincompatible met LPCXpresso a 20 euro per stuk (ook met programmer erin, komen nog wel verzendkosten bij). Dat zijn 100MHz, 32-bit arms.

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Die LPC microcontrollers zien er wel leuk uit, maar is er niet zoiets maar dan met een losse programmer, zodat de kosten per project nog wat lager liggen (en de "opstartkosten" wellicht hoger)?

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Denk niet dat je qua kosten ver onder die van een LPCXpresso komt, maar er is een gestandaardiseerde 20-pins jtag debug connection voor ARM, waarmee je ook ze kan programmeren (zowel mbed als LPCXpresso hebben die niet, aangezien die eigen programmers al erbij hebben). Ik heb me er nooit echt in verdiept, maar dat is bij veel andere bordjes die gebaseerd zijn op LPCs de basis programmer connectie. Programmer die die kunnen gebruiken krijg je gratis bij een pak melk.

Volgens mij is dit bijvoorbeeld een goede (ik heb me er dus nooit in verdiept, dus neem niet alles aan als waar wat ik nu vertel) http://www.ebay.com/itm/U...1e708ab27f#ht_3655wt_1399

[ Voor 6% gewijzigd door Sissors op 30-08-2012 23:15 ]


  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Voor de mbed ontwikkelomgeving moet je minstens één mbed kopen, en dan heb je een LPC1768 en een LPC11u24 versie. Waar jij nu naar linkt is een STM32.

Verder ook niks mis mee, met 72MHz ietsjes trager maar dat is niet wereldschokkend. Maar het staat helemaal los van mbed (mbed kan ook niet debuggen, wel een minpuntje, al heb je wel altijd via serial <> USB converter de mogelijkheid via seriele poort te debuggen).

Ik denk dat die dingen op elkaar werken, maar dat zou ik allemaal niet zeker weten.

[ Voor 42% gewijzigd door Sissors op 30-08-2012 23:52 ]


Acties:
  • 0 Henk 'm!

  • houthakker
  • Registratie: Juli 2003
  • Laatst online: 08:35

houthakker

Poehé

tja de keuze is reuze, ik denk dat je eerst een onderverdeling moet maken met wat je precies wilt:

- OS (linux) of bare metal
- met MMU (nodig voor linux) of geen (bare metal, of uClinux, FreeRTOS) etc.
- mooie ontwikkelomgeving , veel libraries en (bijna) unbrickable; arduino/mbed etc. of die hard plain ansi c, intialisatie code en (zelfgeschreven) c low lever drivers met jtag/swd/flash programmer

Er zijn tegenwoordig zoveel hobby bordjes te vinden voor weinig...

[ Voor 11% gewijzigd door houthakker op 31-08-2012 10:17 ]

Specs


Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 13:39

Sprite_tm

Semi-Chinees

Specificeer eens wat beter wat je wilt? 'Iets' met realtime audio en video is nog steeds heel breed: realdime geluid voorzien van een echo of er een FFT'te overheengooien lukt een Arduino bijvoorbeeld nog wel en ook een paar frames naar een 320x240-display dumpen is niet ondoendelijk met een 8-bitter. Als je het echter hebt over realtime FIR-filteren of zoiets als full-HD H264 encoden hebben we het ineens over de andere kant van het spectrum en kan een core i5 bijvoorbeeld ook een prima keuze zijn.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik zoek naar iets in (ik denk) het midden van het spectrum, ik loop nu namelijk toch wel tegen de beperkingen van 8 bit chips aan, 320*240 schermen gebruiken met echt grafische gui's lukt al niet echt goed. Ik zou bijvoorbeeld dit soort dingen willen kunnen doen: http://toon.eneco.nl/ (dan heb ik het vooral over de gui)

De reden dat ik wat vaag ben in mijn beschrijving is ook omdat ik de dingen die ik zou willen doen dus nog nooit heb kunnen doen, wat ervoor zorgt dat ik ook niet precies weet hoe veel rekenkracht er voor bepaalde zaken nodig is.

Ik neig zelf meer naar iets zonder linux, in ieder geval om mee te beginnen (misschien dat ik later wel met linux wil gaan werken, maar dan wil ik wel graag de onderliggende lower level zaken begrijpen). Qua ontwikkel omgeving lijkt mij iets dat lijkt op mikroC of wellicht iets hoger ideaal (ik heb het idee dat mbed daar ook op lijkt), ik heb niet de behoefte alle library's zelf te gaan schrijven, maar ik wil dit wel kunnen (dus ik zou graag een standaard spi library willen kunnen gebruiken, maar ook een eigen driver willen kunnen schrijven als ik dit zou willen).

Als jullie echter redenen hebben om toch direct met linux te gaan werken hoor ik dat natuurlijk ook graag.

[ Voor 5% gewijzigd door huub8 op 31-08-2012 15:38 ]


Acties:
  • 0 Henk 'm!

  • houthakker
  • Registratie: Juli 2003
  • Laatst online: 08:35

houthakker

Poehé

Switchen van baremetal naar linux op het zelfde board komt niet vaak voor maar het kan.
Rest de volgende vraag of je een goed gesupport ontwikkelbord wil of iets van consumenten electronica wilt
hacken?

Eneco toon draait overigens op linux op basis van een ARM Freescale i.mx processor:
http://thuis.eneco.nl/~/m...EnecoToonThermostaat.ashx

Evaluatieborden zijn (/waren) duur. Echter zijn er steeds meer hobbiekits te vinden en hobbisten initiatieven.
Er zijn veel bordjes te vinden bijvoorbeeld op www.olimex.com. Redelijk betaalbaar, en een grote keuze uit verschillende mcu's. Ik weet niet wat je uit wil geven.

Hier een mooi overzicht van goedekope eval.boards voor linux:
http://www.cnx-software.c...linux-development-boards/

Hier een webshop waar een tal van boards te bestellen zijn, ook van olimex:
http://www.antratek.nl/menu-boards.html

hier ook veel, voor weinig;
http://www.wayengineer.co...?main_page=index&cPath=50

zoals ik het nu hoor zou ik voor een AVR SAM7 of LPC24xx gaan. Deze hebben geen mmu maar zijn wel vrij krachtig, hebben veel geheugen en kunnen wel uClinux draaien eventueel.

[ Voor 12% gewijzigd door houthakker op 31-08-2012 18:19 ]

Specs


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Misschien Propeller ?
Many find the on-board video generation and easy connection to popular PC peripherals reduces the need for additional support components.
Afbeeldingslocatie: http://i.imgur.com/WEacgl.gif

Tja, ik weet t, ik lijk onderhand wel aandelen te hebben in parallax omdat ik het zo vaak promoot.
Maar op de keper beschouwd, het is niet zo populistisch als arduino en raspberry misschien maar het geeft ook gewoon vrij downloadbare programma's en ondersteuningslectuur.
En het is heel makkelijk en betrouwbaar verkrijgbaar via hun distributeur Antratek in Nederland.

Acties:
  • 0 Henk 'm!

  • Infant
  • Registratie: Januari 2008
  • Laatst online: 10-10 11:30

Infant

It's a floating Dino!

Ik zit zelf al een tijdje de tijd te zoeken om met STMs aan de gang te gaan.

Deze unit is dus echt rammend goedkoop. Die STM's zelf zijn ook rammend goedkoop.... ik spreek veel mensen die er blij van worden.

Als je echt een programmeer omgeving wilt, is voor ARM's Keil of IAR wel de meeste gebruikte.
Maar uiteraard is er ook voor elk ding wat ook maar een register heeft, zoals deze dus, wel een gcc compiler te vinden.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
De STMDiscovery is inderdaad best goedkoop, al was hij uit mijn hoofd niet bijzonder snel qua kloksnelheid.

Je lijkt inderdaad redelijk happy over die parallax dingen, ze lijken ook wel grappig, met 8 cores. Je hebt dan echter wel een compleet unieke structuur (en zelfverzonnen taal, al kan je ook in C doen blijkbaar), en dat is dus flinke overstap daarnaartoe, en ook als je wat anders wilt. Dan is een standaard ARM ontwerp misschien handiger.

En welk probleem ik er vooral mee zou hebben is dat hij geen peripherals heeft. Oftewel als je PWM op een beetje frequentie wilt, kost dat je waarschijnlijk gewoon direct een complete core. Geen SPI, enkele I2C maar die lijkt enkel voor EEPROMs te zijn, helemaal niks nada noppes behalve GPIO.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Ik weet niet wat handiger is Furby, de termen ARM, LPCX, SPI, I2C, GPIO, Corei5 enz. zeggen me allemaal niks hoewel ik dat nu aan het uitzoeken ben. Ik heb enkel een mogelijk antwoord willen geven op de vraag welke micro-familie het geschikst zou kunnen zijn.
Ik ken ze dus lang niet allemaal, in feite 'ken' ik er nog maar twee en dat is degene waar ik nu mee bezig ben (en dat in mijn tempo nog een hele tijd zo blijft waarschijnlijk :/ en dat is de basicstamp BS2 die gebruik maakt van een 8-bit Microchip PIC16C57c en vroeger had ik de Intel 8085
Huub wil graag een 32-bit en dus geef ik hem de tip om naar de Propeller te kijken die gebouwd is rond de P8X32A en die geprogrammeerd kan worden mbv :
Programming Language(s) : Spin, Assembly, C, PropBASIC
(Mac/Linux software available)
http://www.parallax.com/P...rs/tabid/860/Default.aspx
Natuurlijk blijft de te maken keus bij Huub zelf.

Verder blijf ik erbij dat er voldoende ondersteuning en betrouwbaarheid van levering te verwachten valt want dat is gewoon mijn ervaring na al diverse keren wat produkten van Parallax via Antratek te hebben afgenomen en waar ik een enkele keer ook veel nut heb gehad van hun toch wel uitgebreide forum.
En dat is niet als reclame bedoeld maar gewoon een review van de ene consument naar de andere.
(en misschien steekt het ook een beetje dat ik geheel op eigen houtje zo'n 'apart' produkt heb aangeschaft terwijl zowat iedereen in elektronisch Nederland blijkbaar voor iets anders heeft gekozen :F

En ik wil nog iets verbeteren aan mijn vorige post : Ik bedoelde populaire arduino ipv populistische arduino.
Excuus voor dit negatief klinkende woord. 8)

[ Voor 21% gewijzigd door kitao op 01-09-2012 07:52 ]


Acties:
  • 0 Henk 'm!

  • ReneK
  • Registratie: Juni 2007
  • Laatst online: 11:27
ARM is een zeer breed ondersteunde industriestandaard, en is wat mij betreft daarmee een hele goede keuze. De ARM core is goed gestandariseerd door ARM zelf, verschillen tussen fabrikanten zitten vooral in de peripherals. Houdt er wel rekening mee dat de learning curve wat langer is als je meer specifieke dingen wilt doen. Interrupts, memory management en DMA zijn vaak wat complexer dan je misschien gewend bent. Als je echter eenmaal overgestapt bent op 32 bit microcontrollers, wil je nooit meer terug naar 8 of 16 bit.

Kijk bij je keuze vooral ook naar de kwaliteit van de documentatie. Ik heb zelf ervaring met STM32 en met Atmel ARM spul. Het STM spul is Frans, en fransen kunnen geen documentatie schrijven (ik generaliseer!).
Iedere keer als ik iets met een interne peripheral wil doen, moet ik door die moeizame documentatie heen van STM. Amerikanen als Atmel zijn daar veel beter in.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Ik vind zelf dat documentatie van de LPC's ook best te doen is, al heb ik geen vergelijkingsmateriaal met andere 32-bitters.
Ik weet niet wat handiger is Furby, de termen ARM, LPCX, SPI, I2C, GPIO, Corei5 enz. zeggen me allemaal niks hoewel ik dat nu aan het uitzoeken ben. Ik heb enkel een mogelijk antwoord willen geven op de vraag welke micro-familie het geschikst zou kunnen zijn.
Waar het om gaat, behalve dat het geen standaard is zoals ARM, is dat hij geen hardware ondersteuning heeft voor allerlei communicatiestandaarden. Elke andere microcontroller heeft hardware aan boord die veel van je taken volledig op zich kan nemen, als je bijvoorbeeld iets via seriele poort wilt versturen dan vertel ja aan dat stukje hardware wat je wilt versturen, en doet die hardware voor de rest alles. En als je een blokgolf met bepaalde hoog/laag verhouding wilt maken, dan vertel je dat aan de PWM hardware en dan maakt hij dat, zonder dat de controller zelf nog iets eraan hoeft te doen.

Dit alles heeft de parallax niet, alles moet door de processors zelf gedaan worden.

Acties:
  • 0 Henk 'm!

  • Hans1990
  • Registratie: Maart 2004
  • Niet online
STM32 heeft leuke bordjes. STM32F0 kost tientje. STM32F4 DISCOVERY is ~20 euro. Daar zit wel een monster op van 168MHz met 192kB RAM en 1MB FLASH. Met onboard debugger en wat 'demo ICs'. Leuk bordje.
Ik heb ook de LPCXpresso geprobeerd met LPC1769. Proccesor is leuk. Apparaat van 120MHz met veel peripherals. Debugger; meh. Het werkt wel.. maar enkel met hun IDE te gebruiken en je kan dat niet uitwisselen. Je kan wel een JLINK EDU kopen voor ~70 euro, maar daar ben ik nog niet aan toegekomen.

Ik heb ook de dsPIC, PIC24 en PIC32 geprobeerd. PIC32 is 80MHz, wat opzich redelijk vlot. De DSPIC en PIC24 vaak 32 - 70MIPS, wat opzich best redelijk snel is. Ik ken alleen niet echte goedkope devboards voor. De PICKIT3 debugger is alleen al 60 euro, dus wat dat betreft redelijk duur.
Over de architectuur; het is beter dan de 8-bitters van PIC (Die zijn verschrikkelijk opgebouwd, ik raak ze liever nooit meer aan), maar soms zitten er wat meer haken en ogen aan dan ARM.
Je hebt ook die Arduino-achtige PIC32 bordjes maar die gebruiken vaak bootloaders (netzoals Arduino zelf). En daarmee kan je dus niet mee debuggen wat heel erg jammer is.

Parallax is leuk met 8-cores, maar 262 bytes of RAM? :(

Opzich is ARM erg flexibel. Als je het memory model, interrupts e.d. gewend bent kan je gauw op elke proccesor aan de slag van de ARM series. Schermpje aansturen kan vaak met een parallele bus (8 of 16-bit) of serieel. Opzich gaat dat op elke proccesor, maar met zo'n ARM kan je d'r veel sneller data naar sturen en berekenen..
Echt data verwerken is ideaal op zo'n grote ARM proccesor. Je kan eventjes een buffer van 8kB ergens voor reserveren, mocht dat nodig zijn. Ik deed op school een project op een ATMEGA328 (arduino), en ik irriteerde mij ontzettend aan die 2kB RAM, de libraries die soms ontzettend veel resources opslokten enz. Al gauw overgstapt naar een Arduino MEGA (de 2560) voor iets meer ademruimte.

Het programma opzich kan vast op een ATMEGA328 passen, maar als je Xbee, Ethernet, SD card (FAT), en nog wat andere dingen wilt gebruiken tikt het gauw aan. Dat project had de kloksnelheden niet echt nodig.. enkel veel geheugen om zijn configuratie te onthouden en snel te gebruiken/doorlopen.

[ Voor 3% gewijzigd door Hans1990 op 01-09-2012 10:51 ]


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Ok, tnx
Toevallig zat ik net i2c, spi en gpio vluchtig door te nemen dus ik begrijp nu wel wat je bedoelt enigzins.
Tja, voor huub8 zal dat misschien zeker iets zijn om op te letten.
In mijn geval volg ik gewoon de voorbeelden die gegeven worden en ik kan eventueel op die propellors (en stamps) robots, scoops, pc's en sensors aansluiten die ruim voorradig zijn met freeload instructies dus ik ben nog wel even zoet.
Bovendien is zelf programmeren niet echt mijn hobby dus ik zie het er ook niet zo snel van komen dat ik zo'n micro eigenhandig op de meterkast ga koppelen.
Maar natuurlijk wel knap en handig als iemand dat wel lukt. :)
Zo heb ik vanmorgen met de stamp en een adc0831 een digitale voltmeter (0-5V) in elkaar gezet met aflezing op het computerscherm maar ik besef zelf ook wel dat velen hier dat beginnersstadium allang voorbij zijn.

En heel misschien is zoiets dan een mogelijke optie :
USB-I2C/SPI/GPIO Interface Adapter.

Afbeeldingslocatie: http://i.imgur.com/uIByal.jpg

Ik ga er vanuit dat je hiermee van een GPIO een SPI kan maken of laten communiceren ?
Wat ik bedoel te zeggen is dat je net als dat je usb/serieel adapters hebt, zo heb je ze misschien ook met de door jou genoemde poorten ?
===================================================
Hans1990 schreef op zaterdag 01 september 2012 @ 10:50:
Parallax is leuk met 8-cores, maar 262 bytes of RAM? :(
Ik heb even onderstaand datasheetje er bij gepakt en op pagina 14 staat het volgende :
http://simplemachines.it/Datasheets_mizar/P8X32A.pdf
The Main Memory is a block of 64 K bytes (16 K longs) that is accessible by all cogs as a mutually-exclusive resource through the Hub.
It consists of 32 KB of RAM and 32 KB of ROM.
Main memory is byte, word and long addressable.
Dus totaal 64K, oftewel een commodore 64 was even groot ongeveer.
Vandaag de dag zal dat voor een micro misschien niet echt veel zijn of ik reken verkeerd, dat kan ook.
De cogs of cores zoals jij ze noemt hebben per stuk 512 x 32 bits RAM en na vluchtig doorlezen hebben ze ook alle 8 direkt toegang tot het hoofdgeheugen volgens deze link :
http://www.parallax.com/p...Topics/QnaP8X32AIntro.htm

Maar ja, ik ben nog nooit tegen het plafond gekomen van een micro- geheugen dus ik ga ook niet beweren dat dit veel of weinig zou zijn of dat ik uberhaupt verstand heb van al die technische data.
Maar 262 bytes zie ik eigenlijk nergens staan zoals jij je afvroeg.
Ook na omrekenen niet :
(512 x 32 bits) : 8 = 2048 bytes

[ Voor 35% gewijzigd door kitao op 01-09-2012 11:37 . Reden: toevoeging op andere post ]


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
En heel misschien is zoiets dan een mogelijke optie :
USB-I2C/SPI/GPIO Interface Adapter.
Das van USB naar die dingen.
STM32 heeft leuke bordjes. STM32F0 kost tientje. STM32F4 DISCOVERY is ~20 euro. Daar zit wel een monster op van 168MHz met 192kB RAM en 1MB FLASH. Met onboard debugger en wat 'demo ICs'. Leuk bordje.
Ik heb ook de LPCXpresso geprobeerd met LPC1769. Proccesor is leuk. Apparaat van 120MHz met veel peripherals. Debugger; meh. Het werkt wel.. maar enkel met hun IDE te gebruiken en je kan dat niet uitwisselen. Je kan wel een JLINK EDU kopen voor ~70 euro, maar daar ben ik nog niet aan toegekomen.
De mbed heeft iig itt de LPCXpresso al ingebouwd een UART<>USB interface, zodat je serieel kan debuggen naar PC. Uiteraard is dat niet wat een echte debugger je brengt, maar je komt er vaak best ver mee, en kan ook makkelijker bij sommige dingen zijn.

Imo een groot voordeel van mbed/xpresso tov bijv die STM32F4 is de formfactor. De ene is meer een prototype board, de andere een evaluation board: dat ze gewoon DIP formaat hebben (met wat bredere spacing) zorgt er dan wel voor dat je minder pinnen hebt (nagenoeg alle peripherals zijn beschikbaar, maar dat gaat wel ten koste van als je bijvoorbeeld een parallele bus wil hebben), maar je kan hem wel heel makkelijk in een breadboard/experimenteerprint drukken. En je hebt bij mbed nog de libraries die wat weg hebben van Arduino libs. Maar ja het is wel een stuk duurder, al kan je dan in principe wel weer mbed code op een Xpresso gooien, al heb je dan niet je Serial <> USB converter.

Anyway niet geheel verrassend komt het erop neer dat er geen één juist antwoord is. Enige wat ik zou adviseren is wel een ARM architectuur.

[ Voor 3% gewijzigd door Sissors op 01-09-2012 11:58 ]


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Daar was ik al bang voor .. en ik maak een slag in de lucht maar ze verkopen wel 8-Channel 12-Bit A/D Converter with SPI Serial Interface.
Ik denk dat het wellicht best zal meevallen met de aansluitmogelijkheden want zover ik weet zijn al hun produkten te koppelen aan hun boards maar zeker weten doe ik dat niet.

http://www.parallax.com/t.../SortField/4/Default.aspx
The MCP3202,3204,and 3208 will work in the range from 2.7V to 5V. This ADC’s serial interface allows you to minimize microcontroller I/O pin usage while still delivering sampling rates of up to 100 ksps. The MCP A to D chips are economically priced compared to the other A to D chips. $6,-

The Microchip Technology Inc. MCP3204/3208 devices are successive approximation 12-bit Analog-to-Digital (A/D) Converters with on-board sample and hold circuitry. The MCP3204 is programmable to provide two pseudo-differential input pairs or four single-ended inputs. The MCP3208 is programmable to provide four pseudo-differential input pairs or eight single-ended inputs.
http://www.parallax.com/S...roductID/573/Default.aspx

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Het is dan ook niet dat het onmogelijk is, het is dat het een hoop van je processorkracht kost. Gelukkig doordat je meerdere cores hebt kan je er waarschijnlijk wel één puur voor die gebruiken, maar het blijft niet de ideale oplossing.

Zie het als een HD video op je laptop kijken. Je kan je processor dat laten doen, maar dat kost een hoop processorkracht. Het is beter dan om GPU te hebben die hardwareondersteuning heeft om HD te decoderen (heeft elke laptop dan ook tegenwoordig), dan is je processor beschikbaar voor andere taken.


Bedenk nu ineens dat je met AD converter ook nog eens een voorbeeld hebt wat niet echt lekker aan die parallax is, hij heeft geen onboard AD converter. Bijna elke andere microcontroller heeft dat wel. Kijk dan moet je niet verwachten dat je daarmee audio goed kan opnemen, maar om bijvoorbeeld een batterijstatus te checken, of de stand van een potmeter, werkt het prima, en heb je dus geen externe componenten als extra nodig.

[ Voor 28% gewijzigd door Sissors op 01-09-2012 13:28 ]


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Ok
Al met al heb ik toch flink wat opgestoken deze morgen en daar ging het me om.
En eerlijk gezegd ook een beetje dat ik eigenlijk sinds ik hier ben nog niemand ben tegengekomen met een parallax-micro en dat ik tot nu toe zo'n beetje alleen maar hoor dat het 1) te duur is , 2) dat ze weinig geheugen hebben, 3) mindere aansluitmogelijkheden hebben en 4) dat niemand zo'n ding gebruikt.

Nou ja, zonder Calimero te willen spelen 1, 2 en 3 verklaren dan wel 4.

Ik heb toen eens een week lang zonder invloeden of adviezen van andere forumgebruikers ( toen zat ik hier ook niet 3 jaar geleden) gezocht naar een micro-platform en heb naar mijn mening zorgvuldig voor dit produkt gekozen en ik heb er nog steeds geen spijt van.
Dat nu blijkt dat de rest van de wereld ARM, Arduino en Raspberry gebruikt valt dan wel zwaar tegen maar het zij zo want ik blijf gewoon bij deze fabrikant met de PIC16C57C totdat ik alle 9 modules doorgenomen heb.
Ik heb er al 2.5 weg in drie jaar tijd. :/

;)

Acties:
  • 0 Henk 'm!

  • Hans1990
  • Registratie: Maart 2004
  • Niet online
Sorry, die parallax is mijn fout. Ik keek bij de oude product series, die hebben weinig ROM. De nieuwe hebben inderdaad 32k ROM met 32K RAM. Neemt niet weg dat die verhouding best vreemd is. 32K ROM kan ik soms erg snel vol schrijven aan bootloader en andere driver code voor I2C, ADC's enz, en dan nog maar 2KB RAM gebruiken.
Maar idd, de parallax blinkt uit in zijn unieke proccesor cogs, maar niet in het geen wat er om heen zit.

Sja, opzich is elke microcontroller nagenoeg hetzelfde. De periperals zullen in detail verschillen. De proccesor+geheugen zit iets anders in elkaar. Maar ten slotte zit er weinig verschil in.

Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 10-10 16:54
Infant schreef op vrijdag 31 augustus 2012 @ 19:10:
Ik zit zelf al een tijdje de tijd te zoeken om met STMs aan de gang te gaan.

Deze unit is dus echt rammend goedkoop. Die STM's zelf zijn ook rammend goedkoop.... ik spreek veel mensen die er blij van worden.

Als je echt een programmeer omgeving wilt, is voor ARM's Keil of IAR wel de meeste gebruikte.
Maar uiteraard is er ook voor elk ding wat ook maar een register heeft, zoals deze dus, wel een gcc compiler te vinden.
TI's Stellaris LM4F120 is vergelijkbaar, en is momenteel ook erg goedkoop (prijs is incl. shipping).

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik heb gekozen om te beginnen met die stm32 bordjes, mede omdat ze zo enorm goedkoop zijn. Bedankt voor jullie adviezen.

[ Voor 5% gewijzigd door huub8 op 02-09-2012 18:39 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Je hebt dan al wel gekozen, maar ik moest toch nog even de Olimexino noemen. Die heeft een Arduino shield formaat, is ook behoorlijk goedkoop (19 euro) en kan ook nog eens geprogrammeerd worden met de Maple Leaf IDE (gebaseerd op de Arduino IDE). Goede STM32 documentatie heb ik zelf niet kunnen vinden, dus dan is iets dat op Arduino lijkt wel erg handig.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Het probleem daarbij is alleen dat ik er niet echt een kan kopen voor minder geld met minder extra aansluitingen en dergelijke, iets wat ik voor een eenvoudig/klein project wel zou willen kunnen doen.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik heb vandaag mijn stm32f0 bordje binnen gekregen, en ik kan nu via iar de code aanpassen. Maar ik loop nu tegen een gebrek aan documentatie aan, en ik kan nergens goede tutorials of een boek vinden. Iemand een aanrader? IAR komt alleen met wat algemene tutorials over de ide, maar ik heb totorials nodig die de code uitleggen.

(dingen die ik dus niet begrijp en nergens kan vinden zijn bijvoorbeeld wat dit nou precies doet: SysTick_Config(RCC_Clocks.HCLK_Frequency / 1000); )

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Niemand?

Acties:
  • 0 Henk 'm!

  • Sphere-
  • Registratie: November 2003
  • Laatst online: 28-08 19:53
Blijkbaar draait je voorbeeld code een embedded operating system, Die functie die aangeroepen wordt stelt de "tick rate" in. De klok waarop processen opnieuw gescheduled worden als ze niet vrijwillig de processor "terug geven".

Volgens mij gebruik je nu CircleOS.

Ik weet niet of dit is wat je wilt (een embedded operating system draaien), anders zal je toch andere voorbeelden moeten zoeken. Het belangrijkste is eigenlijk dat je weet hoe je registers instelt, dan kom je al behoorlijk vooruit met de datasheet van de microcontroller (en ja daar gaat behoorlijk wat tijd inzitten, maar het is ontzettend leerzaam).

[ Voor 46% gewijzigd door Sphere- op 05-09-2012 18:17 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
De code die ik draai is de code die erbij kwam en hier te vinden is: http://www.st.com/internet/evalboard/product/253215.jsp

Ik had eerlijk gezegd nog niet door dat dit een OS was, ik zou liever beginnen zonder OS.

Ik kan alleen nergens simpele voorbeelden met uitleg vinden, dus dingen als zo configureer je die pin als output met die en die eigenschappen.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Als ik kijk daar bij design support tab, staat er helemaal onderaan een zip file met voorbeelden. Daar heb je een map peripheral examples in, daar staan wel wat van zulke voorbeelden. Moet zeggen dat het er niet heel simpel uit ziet ;)

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Dat is dus het probleem, ik snap wel enigzins wat er staat maar er is nauwelijks toelichting, plus dat ik liever begin met de echte basis (output hoog of laag maken) en niet direct met spi of adc

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Je hebt een IO toggle project bij die peripheral library zitten, daarmee moet je een eind komen.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
je bedoeld: stm32f0xx_gpio.h ?

Want daar snap ik al niet al te veel van, kan je niet gewoon een soort van trisX instellen bij deze chips (of zoiets dergelijks)?

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Download de zip file helemaal onderaan bij de link die je me gaf onder design & support tab. Vervolgens: stm32f0discovery_fw.zip\STM32F0-Discovery_FW_V1.0.0\Project\Peripheral_Examples\IO_Toggle
Dan gewoon de main.c file.

[ Voor 6% gewijzigd door Sissors op 05-09-2012 18:55 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ik heb het gevonden, dat maakt het inderdaad al een stuk duidelijker, maar dit blijft nog vaag voor mij:
code:
1
2
3
4
    /* Set PC8 and PC9 */
    GPIOC->BSRR = BSRR_VAL;
    /* Reset PC8 and PC9 */
    GPIOC->BRR = BSRR_VAL;


zou jij kunnen uitleggen wat hier nou precies gebeurd?

En de reden dat niet 1 keer dit stukje code in de loop staat maar een aantal keer is omdat je zo per knipper minder vaak de loop opnieuw begint en dus een hogere frequentie haalt?

Hoe komt het trouwens dat als je hem regel voor regel debugt hij wel beide leds laat knipperen, maar als je hem runt dan brand alleen ld3 half (zoals verwacht) en ld4 niet?

[ Voor 15% gewijzigd door huub8 op 05-09-2012 19:06 ]


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Denk dat ja. Houdt er rekening mee dat ik geen STM32 heb, dus ik weet het ook niet precies, het zal vast in de datasheet zijn uitgelegd.

Maar in tegenstelling to bijvoorbeeld Atmegas, hebben LPCs, en blijkbaar ook STMs, set en reset register. Schrijf een '1' in een set register, en de bit in achterliggende register wordt 1, schrijf een '1' in een reset register, en het achterliggende bit wordt nul. Als je '0' schrijft wordt het genegeerd.

Wat je hebt dan is dat van het GPIO gedeelte je schrijft naar iets van een BitSetRegister/BitResetRegister om hemt 1 of 0 te maken.

Waarom hij verder wel en niet werkt weet ik niet ;)
Zou kunnen dat er verschillen tussen de twee paden van de LEDs zitten, waarbij de ene de hoge frequentie niet aankan ofzo. Kijk of je er een delay tussen kan zetten.


Of koop een mbed :P
code:
1
2
3
4
5
6
7
8
9
10
11
12
#include "mbed.h"

DigitalOut myled(LED1); 

int main() {
    while(1) {
        myled = 1;
        wait(0.2);
        myled = 0;
        wait(0.2);
    }
}

[ Voor 27% gewijzigd door Sissors op 05-09-2012 19:21 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Duidelijk, voor andere mensen die dit topic nog tegenkomen, hier staat ook een boel uitgelegd (net gevonden):

http://hertaville.com/201...2f0-gpio-tutorial-part-1/

Acties:
  • 0 Henk 'm!

  • Sphere-
  • Registratie: November 2003
  • Laatst online: 28-08 19:53
Bij nader inzien draait dat voorbeeld met systick geen operating system maar is het gewoon een library voor het instellen van een timer interrupt.

Zie ook hier http://electronics.stacke...sic-timings-with-an-stm32

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Ik ben blij dat ik met mijn parallax tenminste geen gebrek heb aan duidelijke educatieve uitleg.
Sorry, dit is niet sarcastisch bedoeld maar wie, behalve een doorgewinterde micro-gestudeerde, koopt er nu een micro waar je vrijwel alleen aan de hand van de datasheet moet gaan uitvogelen hoe je zo'n ding moet gaan aansturen ? :/

Ik zou er niet uitkomen in ieder geval en hopelijk vind je nog genoeg lectuur op internet om hier toch mee uit de voeten te kunnen huub.
Sterkte ermee :)

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Er zijn dus wel voorbeelden beschikbaar, anders is het wel wat lastiger ja. Aan de andere kant toen ik ooit begon met microcontrollers was dat ook met enkele datasheet, een atmega en assembly code. Nu hebben atmegas wat minder registers dan ARMs, maar nog steeds, het kan wel. Al hoeft het natuurlijk nooit, er zijn van elk type microcontrollers voorbeelden online te vinden.

Maar dat is wel inderdaad de reden dat het eenvoudiger is om bijvoorbeeld met Arduino, of in het 32-bit geval mbed, te beginnen. Al moet je dan wel weer oppassen dat je wel de limitaties kent van de libraries tov rechtstreeks de hardware aansturen.

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 28-09 14:11
Mogge,
Tot een dag of drie geleden wist ik niet eens welk type micro ik heb (een pic16c57c) terwijl ik die toch al een paar jaar in huis heb. Ik zal dan ook eens proberen wellicht of het enkel met de datasheet en buiten de normale boekjes om, wat mee te beginnen valt.
Lijkt me wel een uitdaging en bedankt voor je serieuze antwoord op een post die wat schimpend over zou kunnen komen.

edit:
Volgens de boeken zou ik een 16C57 moeten hebben maar met een vergrootglas (smd-size) zie ik toch echt PIC16F57 staan. Dus ik was al bijna begonnen de verkeerde sheet door te lezen van 195 pagina's.

[ Voor 27% gewijzigd door kitao op 06-09-2012 12:02 ]


  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik zou graag proberen een 16 bit parallel aangestuurd lcd scherm aan te sturen en kom steeds fcsm tegen, maar ik kan hier weinig over vinden, zou iemand kunnen uitleggen wat dit is?
Pagina: 1