http://jeugd4bascom.blogeiland.nl

Top sites
- Gratis website
- Speur plaza
- Auto spot
- Gratis weblog
- Nieuwe ringtones
- Webcam chat
- Gratis dating
- Plaatjes kleurplaten
- Verhuur je koophuis

Logs van
--- Archief ---

Links
Aavrs, op weg naar AVR
Mcselec, voor de Bascom-compiler
Blogeiland

Poll



Afbeelding/foto


Blogeiland-blogs
wietvrij.blogeiland.nl
Iranian.blogeiland.nl
jojolee.blogeiland.nl
220796.blogeiland.nl
hopper.blogeiland.nl
gtstwraakoprene.blogeiland.nl
kickboxingclub.blogeiland.nl
taartenva15.blogeiland.nl
instromet.blogeiland.nl
Edhoogland.blogeiland.nl
html / Webdesign vragen?
Je eigen weblog?

15-10-2008 - Het eerste projekt.
Ons eerste projekt. Kerst komt er aan en dan hangen veel mensen een ster of ander ornament met lichtjes voor het raam.

Dat kunnen wij natuurlijk ook met onze microcontroller.


Maar hoe werkt het nou eigenlijk? Hoe werkt een computer?


Een computer is een stom ding, weet helemaal niks. Nog stommer als het achtereind van lijn 50.


Een computer, ook een microcontroller moet je alles vertellen. Dat doe je met een boodschappenlijst. Een programma. Eigenlijk ben je zelf ook een computer, je draait ook elke dag een programma af.


1- Je staat 's morgens op.
2- Gapen en uitrekken
3- Wassen en tanden poetsen
4- Boterhammen smeren en opeten
5- Jas aan en je fiets pakken
6- Naar school


En zo nog de hele dag door, elke dag weer. Dat doet een computer ook. De opdrachten zien er natuurlijk anders uit.



Een microcontroller heeft vaak één of meer poorten met elk 8 bits. Poorten? Bits? Dat vraagt om uitleg. Een poort is net als in het gewone leven een ingang of uitgang. In ons geval met 8 deurtjes. Deze deurtjes zijn zoals gezegd ingang of uitgang. In ons kerststerretje gebruiken we de poort als uitgang. Elk deurtje (bit) kan iets inschakelen of uitschakelen. Aan elk bit (pennetje van de controller) sluiten we een weerstand en een LED aan. Hoe dat moet kun je het beste in de praktijk zien.


Er loopt nu nog geen stroom want er is nog geen programma dat zegt dat de LED licht moet gaan geven.


Zodra de computer spanning krijgt, is het eerste wat ie doet is kijken wat er boven aan de lijst opdrachten (het programma) staat. Daar staan een heleboel opdrachten die we hier voor het gemak maar even vergeten. Zodra de controller in ons geval weet dat ie een Bascom-programma moet gaan uitvoeren kijkt ie naar de eerste regel.


Daar kan bv staan:


Config PORTD output



Goed, ik moet van PORTD een 'uitgang´ maken, dat betekent dat ik op alle bitjes van Poort D (pennen 2-6 en 11-13) een spanning (Vcc of 0 volt) moet kunnen zetten zodra er een opdracht daarvoor komt. Vcc is in dit geval de spanning van de 3 batterijtjes.


OK, is gebeurd. Volgende opdracht.


PORTD = &B11111111


Huh? &B? Een computer kent alleen 'enen' en 'nullen'. '1' en '0'. ´1´ is aan of ook wel hoog, ´0´ is uit of laag. De 8 bits van Poort D worden in dit geval 11111111.


'&B' geet aan dat het hier om een 'binaire' waarde gaat. Binair, Bi = 2. Je kunt ook een 'hexadecimale' waarde opgeven: '&H'. Dat doen we later nog wel eens.


PORTD = &B11111111


Aan poort D.0 (PD0 of pen 2) hangen we een weerstand en een LED-je. Zoals je al weet is een LED een lichtgevende diode.


De lange draad van de LED, de 'anode', de driehoek op het schema verbinden we met de '+' van de batterijtjes. Dat kun je makkelijk onthouden, het driehoekje lijkt op een 'A' van 'anode'. Aan de korte draad, de kathode, het streepje van het schema komt de weerstand. Waarom een weerstand?


Als we de LED direkt de volle spanning geven, doet ie het heel kort heel erg goed. Daarna is ie kaduuk. Er loopt dan een te hoge stroom. Grote kans dat ook de controller kapot gaat. De weerstand zorgt ervoor dat de stroom minder wordt. Als je twee deuren tegenover elkaar open zet en het stormt, slaat de deur met een harde klap dicht. Zet je één van de deuren op een kiertje, dan waait de andere deur langzaam dicht. Onze weerstand is 470 ohm.


Nu weer de controller. Als er op het pennetje waaraan de weerstand vastzit ook de batterijspanning staat, gebeurt er....


Niks!


Dat klopt, de computer ziet deze opdracht:


PORTD = &B11111111


Spanning op de weerstand en LED en spaning aan de andere kant van de LED. Er loopt geen stroom. Net als je tussen twee vijvers met evenveel water op dezelfde hoogte een kanaal graaft. Dan gebeurt er ook niks.


Haal je uit de ene vijver het water weg, dan loopt het water uit de volle vijver naar de lege vijver. Een stroom.


We geven daarom de opdracht:


PORTD = &B11111110


Poort D.0 (helemaal rechts op de regel met enen en nullen, PD0, pen 2) = 0. De controller heeft de opdracht begrepen en maakt pen 2 laag (0). Er loopt een stroom en de LED geeft licht. Klaar!


Erg saai, vind je niet? Is dat nou alles? In het volgende deel gaan we verder.


Ons programma tot nu toe:


Config PORTD Output


PORTD.0 = &B11111110


End


Ed



Gepost door: Ed op 15-10-2008 om 09:58
14-10-2008 - De compiler.

Er moet nu eerst de compiler geïnstalleerd worden


Ga daarvoor naar:


http://www.mcselec.com/index.php?option=com_docman&task=cat_view&gid=99&Itemid=54


En download het programma met de naam Bascom AVR Demo version 1.11.9.1. Dit is een 'gezipt' installatieprogramma, vraag je vader of moeder of ze willen helpen met installeren. Heb je een computer met windows 98 of windows ME EN een vrije printeraansluiting dan kun je daar de programmer in prikken.


Daarna wordt het een beetje moeilijker. Snuffel maar even rond in de compiler als die geïnstalleerd is.


Ed



Gepost door: Ed op 14-10-2008 om 19:26
14-10-2008 - Overal computers.
Computers zitten tegenwoordig overal in. Ook waar je ze niet verwacht. Een wasmachine bv, of een koffiezetapparaat De CV. Waar vroeger veel elektronika voor nodig was, doet nu een klein chipje van een vierkante centimeter het werk. Maar ze doen allemaal wat de fabrikant wil.

Dat gaat veranderen.


Deze weblog gaat proberen jullie iets te leren over een heel kleine computer, of beter gezegd een microcontroller


Wat kun je er mee? Je kunt beter vragen: wat kun je er niet mee. Hangt allemaal af van de dikte van je portemonnee, je vrije tijd en vooral hoeveel zin je hebt om te programmeren.


We beginnen heel eenvoudig met een kerststerretje, maar als je het programma verandert kan dat ook een tandenpoetswekker worden.


http://www.elektor.nl/artikelen-als-pdf/2006/juli/tandenpoetswekker.53897.lynkx


of een alarmpje.


http://www.elektor.nl/artikelen-als-pdf/2008/juli-047-augustus/tentalarm.551842.lynkx


Wat dacht je van een servo er mee besturen?


http://www.elektor.nl/artikelen-als-pdf/2005/februari/synchrone-servobesturing.206065.lynkx


Of een simpele robot?


http://www.elektor.nl/artikelen-als-pdf/2007/juli-047-augustus/eenfoud.200470.lynkx


Het kan allemaal.



Ikzelf gebruik er een om mijn tuinspoorlok er mee te besturen.


Wat heb je nodig?


1- een hoop geduld, niet alles lukt in één keer.


2- een PC met op z'n minst Windows 98.


 


 


 


 



3- Heel mooi is een experimenteerbordje. Dan hoef je nog niets te solderen. Hierin kun je de microcontroller en andere onderdelen steken en ook weer verwijderen. Kost ongeveer 5 euro.


 


 




 


 


 


 


 


 



4- een ISP-programmer om het programma dat je zelf maakt in de microcontroller te 'branden'.


 


 


 


 



Voor Windows 98, en Windows ME heb je genoeg aan een programmer voor de printerpoort op de PC (hier in het midden), als daar niet al een printerkabel zit. Kost € 7.95 Een usb-programmer kost € 39.-


Met Windows XP wordt het misschien iets moeilijker, ik heb dit nog niet geprobeerd met een programmer op de printerpoort. Maar er is ook de USB-aansluiting, vaak zit er meer dan één USB-poort op de PC(rechts op de foto). De programmer kost ook iets meer (€ 39.-).


Verreweg het goedkoopst en makkelijkst is een controller met een zogenaamde 'bootloader'. Die kun je dan verbinden met de seriele of R232-poort (links op de foto). Iets wat een computer die niet al te nieuw is nog wel heeft.


Mcselec


http://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=159&category_id=7&option=com_phpshop&Itemid=1


levert controllers met bootloader voor € 2.95.


De seriele aansluiting is ook handig voor de controle van je programma. Je kunt dan 'zien' wat het doet.



5- wat LED-jes (lichtgevende diodes)





en weerstanden om te zien wat het programma doet. Kosten LED vanaf 10 ct, weerstanden en andere kleine onderdelen meestal nog goedkoper.




 


 


 



6- De controller zelf natuurlijk. We beginnen met een Atmel ATmega88. Die heeft genoeg aan een spanning van 2.7-5.5 volt. 3 (mini)penlite batterijtjes of akkus dus. Kost ongeveer € 2.50.



7- Een batterijhouder voor 3 penlites of potloodbatterijtjes € 2.30


Waar koop je dat allemaal?


 - De meeste kleine onderdelen, experimenteerbordje, batterijhouder enz. bij de elektronikaboer in de grotere steden. DIL in Rotterdam, Radio Piet in Arnhem even Googelen.



- Per postorder bij Conrad, maar een heel goede is
:

http://www.aavrs.nl

voor controllers, batterijhouder enz. enz. Je moet je daar even aanmelden en dan ook vooruit betalen. Vraag je vader of moeder hoe dat moet. Ik heb nog nooit problemen gehad, ook niet met bestellingen in het buitenland. Probeer ebay te vermijden.


Daar komen dan nog verzendkosten bij (ongeveer €2.50) en bij Conrad moet je voor minstens € 20.- bestellen. Die sturen dan een grote doos met 10 LED-jes. Verzendkosten € 6.50. De controller is er ook veel duurder. Ook niet doen dus, tenzij je nog wat anders wilt bestellen.


Dan heb je natuurlijk een programma voor de PC nodig om je eigen programma voor de controller te maken. Een compiler heet dat. Bij Atmel, de fabrikant van de controller ATmega88 kun je gratis een assembler downloaden. Maar dat is eigenlijk niets voor beginners.


Wij zijn beter af met een Basic-compiler, Bascom-AVR in dit geval.


Er is een gratis 'demo-versie', waarmee je programma's tot 4 kilobyte (wordt later uitgelegd) kunt maken en in de controller kunt 'branden'. Meer dan genoeg voor ons beginners.


Bascom AVR Demo version 1.11.9.1


http://www.mcselec.com/index.php?option=com_docman&task=cat_view&gid=99&Itemid=54


Vragen? Stel ze hier, door te klikken op 'Reageer' rechts boven. Let op je moet de lettertjes of cijfertjes invullen om je vraag op te slaan zodat ik en anderen die kunnen lezen.


Er is ook een Nederlands forum, waar meer mensen die programmeren met elkaar over problemen en oplossingen praten. Daar moet je eerst registreren.


http://www.circuitsonline.net


Enthousiast geworden? Op naar deel 2 !! Dat volgt over een tijdje.


Ed



Gepost door: Ed op 14-10-2008 om 17:00

Statistieken
Hits vandaag: 1
Hits totaal: 7613
Aantal logs: 3
Aantal reacties: 0



PHP Parsetijd: 0.021 sec, MySQL 17 queries in 0.014 secs