Uitgang 13 (led aan board van Arduino Uno )

Hardware geleverd door Arduino
Gebruikers-avatar
Berichten: 903
Geregistreerd: 06 Aug 2016, 01:03

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor Koepel » 14 Mrt 2017, 23:54

@louis lenchan, mag ik "je" tegen "u" zeggen ?
In Nederland zeggen we gemakkelijker "je" tegen elkaar, zeker op dit forum als Arduino-enthousiastelingen onder elkaar ;)
Hier (http://www.arduinoforum.nl/viewtopic.php?f=25&t=2417&start=10#p18425) gebruikte ik het woord "patatten", en ik veronderstelde dat iedereen weet dat het "aardappelen" zijn. Het schijnt echter Belgisch dialect te zijn ! :lol:

Een ATmega of ATtiny maakt niet veel uit. Je kunt beide op dezelfde manier met een programmer programmeren. De ATmega heeft de mogelijk voor een bootloader als extraatje. Daar zijn fuses voor. Vul hier eens ATmega328P in dan zie je de fuses voor o.a. de bootloader: http://www.engbedded.com/fusecalc/.

De Arduino IDE heeft zelf ook de mogelijkheid om code (de sketch) direct in de ATmega te branden zonder bootloader. In het menu: Schets / Uploaden met programmer.
Dat heeft veel voordelen, omdat dan de fuses meteen goed gezet worden. Dat wordt allemaal gedefineerd in het bestand "boards.txt".
Wil je daarna weer via de seriële verbinding een sketch uploaden, kies dan in het menu: Schets / Bootloader branden.
Waar die bootloader staat wordt ook beschreven in boards.txt

Ik gebruik een USBasp versie 2 als programmer (vandaag nog).

De OptiBoot staat hier: https://github.com/Optiboot/optiboot.

Advertisement

Berichten: 94
Geregistreerd: 28 Dec 2014, 23:20
Woonplaats: Bilzen BE

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor Dries » 15 Mrt 2017, 11:37

Dag Lenko,
Nog een Belg en zelfs in de buurt, ik ben van Bilzen :mrgreen:
We hebben inderdaad ons Belgisch dialectje en dat Limburgs is natuurlijk het mooist en ja patatten daar maken we onze frieten van Koepel :mrgreen:
Ik volg deze post met intresse mee, ben ook nog maar een leek op Arduino gebied maar ik heb toch wat kunnen verwezenlijken door de hulp van de specialisten hier

Berichten: 16
Geregistreerd: 19 Feb 2015, 12:21
Woonplaats: Genk

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor louis lenchant » 19 Mrt 2017, 22:07

Beste Arduino specialisten,

Ik heb mijn experimenteerdoos boven gehaald en de Atmega328p uit een defect bordje
gehaald en proberen te programmeren met een Arduino.

Ik liep al direct vast omdat ik hier geen board file voor had zoals ik er heb voor de Attiny's.

Dan heb ik geprobeerd van een test file die ik gebruik voor de Attiny's uit te proberen en in een
lege 328p te programmeren met een onlangs aan gekochte programmeer apparaat bij Elektor
(type Minipro TL866A) wat allemaal perfect lukte.

Bij opstart van de schakeling gebeurde er niets, geen enkele uitgang werd aangestuurd.

Om zeker te zijn van de werking van mijn experimenteerschakeling heb ik een controller
uit een werkende Arduino met een bootloader en het zelfde programma ingeladen in de
test opstelling geplaatst en deze werkte wel en stuurde de voorziene uitgangen wel aan.

Het blijkt in deze opstelling dat de uitgang BP5 (Pin 19) waar de led op de Arduino board
mee aan gaat bij opstart van voeding spanning nu niet meer aangestuurd word.

Mijn vraag is nu ; kan ik een programma schrijven in de Arduino IDE en er de hex file
via een andere programmeer apparaat in een lege 328p schrijven en laten opstarten zonder een
bootloader van de Arduino.

Of zijn er board file's waar ge de 328P kan programmeren via de Arduino zo als bij de Attiny's,
als het gaat, liefst zonder bootloader.

groetjes,

Lenko

Gebruikers-avatar
Berichten: 4245
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor nicoverduin » 19 Mrt 2017, 22:10

Heb je wel een kristal op de 328p zitten?
Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 16
Geregistreerd: 19 Feb 2015, 12:21
Woonplaats: Genk

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor louis lenchant » 20 Mrt 2017, 22:43

Ja zeker en de twee 22 pico's ook,

de schakeling werkt (de ledjes staan hier al twee dagen te blinken) met een losse 328p met een bootloader en een sketch die in de IDE
geschreven is.

Voor zo ver ik de voorgaande teksten begrijp, als ik een file uit de IDE rechtstreeks met een externe programmeer toestel
programmeer zijn de fuse bits vermoedelijk niet op de juiste plaats gezet, wat bij het programmeren met een Arduino en
bootloader dit automatisch gebeurd.

Groetjes,

Lenko

Gebruikers-avatar
Berichten: 4245
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor nicoverduin » 20 Mrt 2017, 23:16

Met die programmer lees je de fuse bits van een goede en dan schrijf je die in die ander chip
Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 16
Geregistreerd: 19 Feb 2015, 12:21
Woonplaats: Genk

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor louis lenchant » 23 Mrt 2017, 11:56

Hallo Nico,

Als ik nu de bootloader eerst in een lege 328P plaats en schrijf er daarna een programma
zonder bootloader uit de IDE in, gaat dan de eerste dan niet overschreven worden of zitten deze
programma's op een andere plaats in het geheugen.

Groetjes,

Lenko

Gebruikers-avatar
Berichten: 903
Geregistreerd: 06 Aug 2016, 01:03

Re: Uitgang 13 (led aan board van Arduino Uno )

Berichtdoor Koepel » 23 Mrt 2017, 14:40

Volgens mij is het op deze manier (70% kans dat het zo is, en 50% kans dat die 70% ongeveer klopt :lol: ) :
De reset pointer wijst niet meer naar de bootloader, dus of die bootloader er nu wel of niet in zit, de bootloader is uitgeschakeld.
Ik weet niet zeker of de ruimte voor de bootloader nog steeds wordt vrij gehouden als je een sketch via een programmer upload, ik vermoed van wel. Wanneer je zelf de fuses aanpast, kun je die ruimte weglaten en een grotere sketch uploaden. Voor die grotere sketch zal waarschijnlijk 'boards.txt' aangepast moeten worden.
Volgens mij kan de optiboot bootloader passen in 512 byte, dus dat is heel weinig.
Ik dacht dat de code onderin het flash geheugen zit, en de bootloader bovenin het flash geheugen.

De bootloader zorgt ook nog voor een beveiliging: je kunt vanuit de sketch niet het flash geheugen gaan wissen en schrijven, maar vanuit de bootloader wel.

De ATmega32U4 heeft trouwens een enorme bootloader, die doet de USB-serial verbinding binnen de chip zelf.

Vorige

Terug naar Arduino hardware

Wie is er online?

Gebruikers in dit forum: Google [Bot] en 1 gast