analoge input Arduino uno

Arduino specifieke Software
Berichten: 3
Geregistreerd: 16 Okt 2018, 22:52

analoge input Arduino uno

Berichtdoor bwslurink » 16 Okt 2018, 22:55

Ik wil mijn analoge inputs gebruiken om een waarde van 0V of 5V te lezen. Mijn digitale I/O's zijn bezet. Hoe kan ik deze waarden via de analoge input uitlezen?

Advertisement

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

Re: analoge input Arduino uno

Berichtdoor Koepel » 16 Okt 2018, 23:00

Sommige pinnen hebben meerdere functies. Toevallig zijn alle analoge ingangen van de Arduino Uno ook digitale in- en uitgangen.

Dus je kunt gewoon pinMode(A0, INPUT) doen, en dan digitalRead(A0).
De pin nummers zijn dus A0, A1, A2, enzovoorts. Je kunt daar een variabele voor gebruiken: const int pinGroeneKnop = A3;

Je kunt natuurlijk ook altijd met een analoge ingang kijken welk voltage er op staat. En dan controleren of het boven of onder het midden is.

Er zijn heel veel manieren om het aantal gebruikte pinnen te verminderen. Als je vertelt wat er aan hangt, of als je een schema hebt, dan kunnen we misschien hier en daar nog een pin vrij maken. Behalve als je zo'n goedkoop "motor shield" hebt, dat gebruikt bijna alles.

Berichten: 3
Geregistreerd: 16 Okt 2018, 22:52

Re: analoge input Arduino uno

Berichtdoor bwslurink » 17 Okt 2018, 11:15

We hebben een bord gemaakt met vier modules van 3 ledjes (rood, geel, groen) elke module stelt een stoplicht voor. m.a.w. De leerlingen hebben de opdracht om de stoplichten te programmeren. Elke module heeft een readcontact (de sensor die meet of er auto's voor het stoplicht staan)

Volgens mij ontkom ik dan niet aan het gebruiken van 12 digitale I/O's voor de stoplichten want die moeten afzonderlijk aan en uit gedaan kunnen worden.

Wij programmeren de Arduino overigens met Mblock.

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

Re: analoge input Arduino uno

Berichtdoor nicoverduin » 17 Okt 2018, 11:36

Jammer dat je het met gewone leds moet doen. Had je bijv. gebruik mogen maken van bijv een stukje LED strip, dan was je weggekomen met 1 data pin door alle verkeersborden gewoon in serie te zetten
Docent HBO Software Engineering, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 3
Geregistreerd: 16 Okt 2018, 22:52

Re: analoge input Arduino uno

Berichtdoor bwslurink » 17 Okt 2018, 13:44

Het lukt ons inmiddels om via de Arduino software de led's aan te sturen middels de analoge input A0. Maar het lukt ons niet om hetzelfde te doen m.b.v. Mblock-software. Is er iemand die daar ervaring mee heeft? Ik hoor het graag.

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

Re: analoge input Arduino uno

Berichtdoor Koepel » 17 Okt 2018, 18:40

Als ik het goed begrijp, dan gaat het om het volgende:

- mBlock http://www.mblock.cc/.
- in Arduino Mode
- als Arduino Uno
- en dan een analoge pin als digitale output pin HIGH of LOW zetten

Ow! dat is flauw zeg. Er zit geen A0 bij. Je mag ook doortellen. Dus A0 = pin 14, A1 = pin 15, enzovoorts.

Dat is een tekortkoming van mBlock. Ik gebruik soms Tinkercad.com voor een Arduino simulatie. Die heeft ook een mBlock-achtige mode, en die kan wel A0 selecteren.

Afbeelding
Bijlagen
mBlock-analog-pin.png
mBlock gebruikt getallen voor een analog pin die als digitale pin wordt gebruikt.
mBlock-analog-pin.png (12.86 KiB) 581 keer bekeken

Berichten: 2491
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: analoge input Arduino uno

Berichtdoor shooter » 18 Okt 2018, 21:17

koepel heeft helemaal gelijk, je kunt de analoge pinnen gewoon doornummeren, (zelfs een NANO werkt prima)
Ik gebruik vaak NANO met mblock op de coderdojo.
er zijn twee manieren om dit te doen, koepel laat een manier zien waarbij je dus altijd moet compileren en naar de arduino sturen.
Op deze manier kun je veel snellere programmas laten draaien en is een array geen probleem, dat heet de arduino mode. je kunt dan echter lang niet alles van scratch gebruiken.
Ik zou aanbevelen om niet in arduino mode te gaan maar gewoon in mblock, dan kun je tegelijk ook nog een beeldje maken en geluid etc.
de arduino is dan eigenlijk een afstandsbedieining en werkt niet zo snel
onder verbinden staat firmware upgraden, dan komt er een soort emulatie in de arduino te staan die jouw commandos overneemt.
Mocht je meer willen weten dan stuur maar een mailtje naar shooter@home.nl.
paul deelen
shooter@home.nl

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 3 gasten