Het lijkt me erg leuk en leerzaam om met microcontrollers te werken. Alleen weet ik niet waar ik moet beginnen. Door de vele bomen zie ik het bos niet meer. De ene zegt dit en de ander zegt dat. Ik heb geen ervaring met programma's schrijven, behalve TI-83 programatjes
. Ik weet niet of je dit kunt vergelijken.
Dan is mijn vraag:
Waar moet ik beginnen? Schema's in elkaar solderen lukt wel. Ik zag dat er AVR en PIC was. Welke is het makkelijkst of beste en zit er verschil in de familie's (details uitgezonder)?
ledfreak
Moderator green laser forum http://www.greenlasers.co.uk/cgi-bin/yabb/YaBB.cgi
de verschillen zijn niet zo groot
ze kunnen alle 2 ongeveer het zelfde
van beiden kan je ook gratis samples aan vragen dus opties genoeg om dr gratis aan te komen
en aan programmer bouwen is ook niet zo'n probleem
Marcel
AVR C tutorial http://expand.xs4all.nl/avr
De grootste uitdaging zit in het programmeren. Wat voor ervaring heb je daarmee? Je heb het over de TI83, programmeerde je die in Basic of in Z80 assembler?
Ik programmeer zelf AVR. Je hebt trouwens nog wel meer dan alleen AVR en PIC hoor.
Een aantal voordelen (van de AVR):
1. Ze zijn vrijwel allemaal te programmeren met dezelfde zeer simpele programmeer hardware.
2. Er is een goede opensource C compiler die geschikt is voor alle types met RAM geheugen (gratis).
Voordeel 2 is natuurlijk nogal persoonlijk.
Roel
Hieper de piep!
http://www.circuitsonline.net/artikelen/view/8
een hele uitgebreide handleiding over PICs!
ben der nu ook mee bezig, is echt fet handig!
Dat tutorial heb ik al een paar keer gelezen. Die codes vormen voor mij niet zo'n probleem denk ik. Alleen wat is assembleren, compilen en dergelijke.
Er wordt over een asm en hex bestand gepraat. Dat hex-bestand doe je in de microcontroller, dat snap ik (hoe heet dat trouwens).
In het tutorial staat:
Het schrijven van een programma kun je simpelweg gewoon in Notepad of een andere teksteditor doen. Je dient het alleen nog wel te assembleren en je wilt het misschien ook nog wel eerst simuleren.
Ik dacht dat het schrijven assembleren was en dat dat in zo'n C++ (wat dat mag wezen) moest gebeuren.
MAW hoe is de volgorde om het project te laten slagen in het nederlands.
In zo'n TI-83 heb je het ook over AND, OR, OUTPUT, IF, THEN, END, GOTO, Lbl en dat soort instructies.
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 16 april 2004 19:56:58 schreef Lampie:
Ik zag dat er AVR en PIC was. Welke is het makkelijkst of beste en zit er verschil in de familie's (details uitgezonder)?
Je beste keuze is de chip die je buurman (of iemand anders in de buurt die je kan helpen) al gebruikt.
De mensen uit mijn buurt noemen mij Lampie, omdat ik een keer met ledjes heb lopen spelen. Electronica is iets wat mijn omgeving niet kent. Voor hun is het "prik".
Asembleren: Is dat het geschreven stukje omzetten in hexadecimale getallen?
Op 16 april 2004 23:42:21 schreef Lampie:
De mensen uit mijn buurt noemen mij Lampie, omdat ik een keer met ledjes heb lopen spelen. Electronica is iets wat mijn omgeving niet kent. Voor hun is het "prik".Asembleren: Is dat het geschreven stukje omzetten in hexadecimale getallen?
yep assembleren is idd het omzetten van je geschreven asm code naar een hexadecimaal .hex bestand. Je kunt je zelf asm code omzetten naar een hex dmv. een programma die je op www.microchip.com kunt downloaden
compileren kun je er een beetje mee vergelijken; Dit is het omzetten van de bijvoorbeeld geschreven C/basic/jal whatever code naar asm waarbij de asm naar .hex word omgezet.
Je moet dus eerst de code schrijven, dan assembleren dan in de mcu flashen met een programmer.
Hoop dat het zo wat duidelijker is:)
Marcel
AVR C tutorial http://expand.xs4all.nl/avr
Op 17 april 2004 12:00:00 schreef Wouter Sijm:
yep assembleren is idd het omzetten van je geschreven asm code naar een hexadecimaal .hex bestand. Je kunt je zelf asm code omzetten naar een hex dmv. een programma die je op www.microchip.com kunt downloaden
Ja, asm code voor een PIC naar hex code voor een PIC. Voor andere code heb je niets aan dat programma.
compileren kun je er een beetje mee vergelijken; Dit is het omzetten van de bijvoorbeeld geschreven C/basic/jal whatever code naar asm waarbij de asm naar .hex word omgezet.
De meeste compilers gaan rechtstreeks naar machinecode, niet eerst naar assembler.
Frits Kieftenbelt
Ohm sweet Ohm | www.picbasic.nl
Op 17 april 2004 12:56:57 schreef Marcel
e meeste compilers gaan rechtstreeks naar machinecode, niet eerst naar assembler.
Dat vind ik helemaal geen voordeel, als je compiler een Basic, C++ or whatever rechtstreeks omzet kun je niet even neuzen in hoe hij het heeft omgezet.
Een goede compiler zet hem eerst om naar assembler en vandaaruit (automatisch) naar .hex machinecode zodat jezelf nog eventuele veranderingen/verbeteringen aan kunt brengen. (My opinion)
Marcel
AVR C tutorial http://expand.xs4all.nl/avr
Op 16 april 2004 21:30:44 schreef Lampie:
Ik dacht dat het schrijven assembleren was en dat dat in zo'n C++ (wat dat mag wezen) moest gebeuren.
C++ is een hogere programmeertaal. Assembler is een lagere programmeertaal. Met C ben heel direct met het programma zelf bezig en minder met de uC. Met assembler sta je heel dicht bij de echte machinecode. Voor assembler moet je wel goed weten wat de controller kan en doet. Voor een beginner is een hogere programmertaal makkelijker om mee te beginnen.
In zo'n TI-83 heb je het ook over AND, OR, OUTPUT, IF, THEN, END, GOTO, Lbl en dat soort instructies.
Dat is TI83 basic. Een basic variant dus. Voor de AVR heb je bijvoorbeeld de Bascom compiler. Dat is een basic compiler. Die zet dus basic code om in machinecode (hex bestand).
Maar is het niet verstandiger om eerst eens wat meer ervaring op te doen met programmeren?
Op 17 april 2004 13:07:48 schreef Marcel:
Maar is het niet verstandiger om eerst eens wat meer ervaring op te doen met programmeren?
Hoe bedoel je dit? Stukjes gaan schrijven om later te simuleren?
Met de TI-83 ging het altijd goed. Ooit heb ik voor mezelf een html-bestandje, als startpagina voor mezelf, in elkaar geflanst met kladblok. Dat ging ook altijd goed. Ik weet niet of dit een beetje te vergelijken is, maar ik raak niet in de war van rare codes ofzo. Eerder van afkortingen, zoals UART C++ en dat soort dingen.
Roland van Leusden
It's the rule that you live by and die for It's the one thing you can't deny Even though you don't know what the price is. It is justified.
Ik ben zelf met dit bordje begonnen met de AT90S2313 en Bascom. Op het bordje zit al een programmer dus je kan gelijk beginnen. Bascom is een soort van basic en lijkt op wat je bij de TI-83 ook gebruikt.
En is hier te koop: http://www.futurlec.com/ATDevBoard.shtml
Voor 19,90 US$
De AT90S2313 heeft 2K programgeheugen en kan dus volledig met de gratis Bascom-AVR demo worden geprog.
http://www.mcselec.com/bascom-avr.htm
RES
RES
Wil je heel voordelig starten, dan kan je dit kiezen:
MCU -> AT90S2313, ATtiny15L, ATmega8 (etc.)
ISP kabel zelf maken (paar euro)
Programmer software voor alle AVR's -> SP12 (gratis)
Windows Assembler -> WAVRASM (gratis)
Op breadboardjes of gaatjesprint bouw je je protoypen, en dan op print finalizen bijv.
Dan kan je kiezen tussen, C+, ASM, BASIC als programmeertaal.
Voordeel van AVR tov van de PIC is voordeliger en sneller.
AVR's zijn in drie groepen opgedeelt:
ATmega's (grote complexe projekten)
AT90S's (hobby en middelgrote projekten)
ATtiny's (hobby en kleine projekten)
Deze chipjes hebben Harvard RISC architectuur, betekend 1 MIPS (million intrustructions per second) bij 1 MHz clock.
Wat ook leuke controllers zijn is de MSP430 familie (16 bitters)
http://focus.ti.com/mcu/docs/overview.tsp?familyId=342&templateId=…
En weer een voordeel van de PIC is dat er heel veel te vinden is op internet, en er veel meer van zijn dan de AVR en deze laatste van TI nog amper.
e meeste compilers gaan rechtstreeks naar machinecode, niet eerst naar assembler.