Hoi petervandenbrink, welkom.
Het is heel belangrijk dat je erg goed oplet tijdens en secuur werkt als je aan het programmeren bent.
Dat geldt dus ook tijdens de upload.
Uit je eerste bericht haal ik dit stukje even naar voren:
petervandenbrink:
Board:ATMEGA 32u4 5v/16MHZ (pro micro)
Wordt herkend door USB-poort als leonardo
Instelling voor uploaden:
Board: Arduino Duemilanove or diecimila
Processor: ATmega328
pootr:COM5 (is de poort waar het board in de USB zit)
Programmer:AVRISP mkII
Hierin staat alle informatie die je nodig hebt.
Ik begrijp heel goed dat als je voor t eerst aan de gang gaat, alles nogal overdonderend kan zijn en je dus zaken mist.
Hierboven staat dat het board dat je hebt een 32u4 controller (de 'processor') heeft en dat het als een Leonardo word herkend.
Die herkenning is door het board en de bij de IDE (je Arduino programma) meegeleverde drivers geregeld, en ook correct.
In technisch opzicht is er geen verschil tussen jouw board en de Leonardo, maar de aanwijzing waar het hier om gaat is dus dat je met een Leonardo werkt.
Dan geef je bij de instelling voor de upload aan dat er een ATmega328 controller word verwacht, op een vrij oude Duemilanove (Italiaans voor 2009) of diecimila board.
Dat komt dus niet overeen, en daarin zit dus ook de fout.
Bij je derde post had je dit inmiddels al min of meer opgemerkt, en heb je wel de juiste instellingen gebruikt waarmee de upload ook slaagde.
De tweede alinea in die post, de Engelse tekst, is een aanwijzing die er voor is de juiste instellingen te kiezen voor hetzelfde board, maar met een iets andere opzet.
Dat andere boardje werkt op 3.3 volt, en kan daarom niet op 16 MHz geklokt worden.
De instellingen die voor de IDE nodig zijn, vertellen niets over die 3.3 volt, maar wel wat over de kloksnelheid die nu met 8 MHz gehalveerd is.
Dat is belangrijk, want zo weet de IDE waar ie rekening mee moet houden tijdens zaken die van timing afhankelijk zijn.
Zou je dit niet goed doen, dan word uploaden mogelijk al een probleem, maar anders gaat het bijvoorbeeld fout als jij het ding vertelt dat ie 5 seconden moet wachten tot de volgende opdracht, want het word dan ineens 10 seconden.
Overigens is 5 seconden wachttijd een eeuwigheid voor zo'n ding, want hij kan in die tijd zo'n 80 miljoen handelingen verrichten.
Maar daar ga je snel meer over leren.
Het antwoord voor je drivers, voor ik het vergeet, je zit nu goed.
De Leonardo derivaten zijn geinige dingen waar je nog best wel iets moet weten in het onderscheid tussen dit ding en de Uno achtige varianten.
De Uno heeft een controller er op die zelf geen USB signalen kan verwerken.
Daarom zit er op dat boardje een USB naar serieel converter chipje.
De Leonardo's hebben een controller die wel een USB functionaliteit aan boord heeft, en daarom niet zo'n converter chipje nodig heeft.
Hiermee kun je leuke dingen doen, zoals de emulatie van een USB muis of toetsenbord.
Als ik me niet vergis, meldt de Leonardo zich als een Leonardo op de USB bus zodra ie word aangesloten op de USB poort.
Na een (korte) tijd, meldt ie zich dan weer af, en daarna als een HID (een Human Interface Device, dat zijn zaken als muis en toetsenbord).
Je kunt dat gedrag zien door apparaatbeheer van Win7 te openen (druk op de windows toets, en tegelijk op de pause toets rechtsboven, kies dan voor Apparaatbeheer).
Dan kun je zien wat er allemaal gebeurt.
Overigens zie ik dat niet met de 2 varianten die ik hier heb, maar dat kan er aan liggen dat ik er al eens wat anders heb ingezet.
Wanneer je met je programma een upload naar de Arduino gaat doen, dan stuurt het programma een reset signaal naar de Arduino.
Als een Arduino voor het eerst word ingeschakeld of word gereset (komt op hetzelfde neer), dan roept ie meteen op de seriële poort "heb je wat te uploaden voor me ?", en wacht vervolgens heel even of er een antwoord komt.
Als er dan geen antwoord komt, gaat ie uitvoeren wat er verderop geprogrammeerd is (blink in jouw geval).
Soms gaat het resetten door het programma niet goed, dat is wat jij ervaren hebt en kan verschillende oorzaken hebben.
Dan kun je een en ander dus helpen door 'm met de hand te resetten en dat heb je ook al ervaren.
Het juiste moment om heel snel een reset uit te voeren, is als je in het programma ziet verschijnen dat de upload start.
Het programma wacht daarna heel even om te zien of er al een reactie komt op de reset.
Dat wachten van het programma duurt langer dan het wachten van de Arduino (voor ie het al eerder geprogrammeerde gaat uitvoeren).
Aangezien jouw boardje geen reset knopje heeft (een Uno heeft dat wel), moet je er dus zoals je al gedaan hebt een paar draadjes aan solderen.
Met andere woorden:
Jij hebt het probleem zelf al opgelost, en op de juiste wijze.
Dat zien we hier graag, want das de beste manier om te leren (eerst fouten maken, en die vervolgens uit de weg ruimen).
Bevestiging vragen is prima, dan weet je zeker dat je het correct hebt gedaan.
Wees gerust, je gaat nog meer fouten maken, dus kansen zat om goed van te leren.
En das dus erg leuk.
Veel plezier tijdens je ontdekkingsreis met de Arduino.
Houd er rekening mee dat sommige zaken op de Pro Mini (/Leonardo) anders werken dan op de Uno waar de meeste voorbeelden voor geschreven zijn.
De IDE schiet die niet allemaal af omdat ie nu wel weet met welk board ie te maken heeft.
Mijn Pro Mini werd geleverd met de blink sketch er al in (dat is bij de meeste originele en heel veel clones zo).
Maar die blink is net ff anders, want die blinkt heen en weer tussen de 2 LEDs die aangeven of er data via de seriele poort verzonden of ontvangen word.
Dat komt dus door zo'n verschil: een Pro Mini heeft geen LED aan boord die gekoppeld is met pin 13.