jp's plooibank

Arduino specifieke Software
Berichten: 20
Geregistreerd: 15 Okt 2019, 20:00

Re: jp's plooibank

Berichtdoor jean-paul » 21 Dec 2019, 23:20

Hoi GK,

Dit heb ik er van gemaakt en met 2 drukknoppen en een led werkt het volgens mij prima.
Moet me excuseren omdat ik niet naar je sketch had gekeken. Wist niet dat het een hint was ivm hulpcontact.
Uw laatste sketch ga ik nu bekijken; Denk wel dat de sketch die ik heb gemaakt goed is. Wil je er aub nog eens naar kijken, dan ga ik
het testen op de plooibank;

const int dsKlemToe = 24;
const int resetdruksch = 26;
const int venKlemToe = 28;


bool dsKlemToeStat;
bool hulpcontact;

int resetdrukschStat;


void setup() {

Serial.begin(9600);

pinMode (dsKlemToe,INPUT );
pinMode (resetdruksch,INPUT);
pinMode (venKlemToe,OUTPUT);
}

void loop() {

dsKlemToeStat =digitalRead(dsKlemToe);
resetdrukschStat =digitalRead (resetdruksch);

if(dsKlemToeStat){hulpcontact=HIGH;}

if (hulpcontact) {
digitalWrite (venKlemToe,HIGH);}

if (resetdrukschStat == HIGH){
(hulpcontact=LOW);
digitalWrite (venKlemToe,LOW);}

Advertisement

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

Re: jp's plooibank

Berichtdoor Koepel » 24 Dec 2019, 09:03

Kun je netter werken ?
Als de tekst van de code een puinhoop is, dan zal de werking ook wel een puinhoop zijn ;)
Zet iedere spatie, ieder inspringen, ieder haakje, iedere komma, enzovoorts, op de juiste plaats.

Kun je code-tags gebruiken als je een sketch op dit forum zet ? Boven het tekst-veld staat de knop "Code" voor code tags. Daartussen kun je de sketch zetten. Er is ook een "Select a Syntax" en dan "C++".

De namen kunnen misschien beter, maar dan worden ze wel lang. Er zijn programmeertechnieken om dat anders te doen. Bijvoorbeeld met een array van de pinnummers en dan een lijst met 'enum' die bijhoudt welke naam bij de index van het array hoort.

Gebruik altijd dezelfde stijl van de tekst.

Hier struikel ik over: (hulpcontact=LOW);
Ik begrijp de '(' en ')' niet en de variabele is een 'bool', dus die kan 'true' of 'false' zijn, maar niet 'LOW'.

Dit kan ook niet: dsKlemToeStat = digitalRead( dsKlemToe);
Want je hebt die variabele als 'bool' gedeclareerd.
De digitalRead() geeft een HIGH of LOW terug.
https://www.arduino.cc/reference/en/language/functions/digital-io/digitalread/

Dit is hoe de tekst van de sketch er wat netter uit kan zien, maar kies gerust je eigen stijl.
cpp code
// Plooibank sketch
// December 2019
//
// Hier nog meer uitleg over het gebruikte Arduino board,
// welke Arduino IDE versie, gebruikte libraries, hoe het is aangesloten,
// enzovoorts.

// pin nummers
const int dsKlemToePin = 24;
const int resetdrukschPin = 26;
const int venKlemToePin = 28;

bool hulpcontact;

void setup()
{
Serial.begin(9600);

pinMode( dsKlemToePin, INPUT);
pinMode( resetdrukschPin, INPUT);
pinMode( venKlemToePin, OUTPUT);
}

void loop()
{
// Haal de knoppen op
int dsKlemToeStat = digitalRead( dsKlemToePin);
int resetdrukschStat = digitalRead( resetdrukschPin);

if( dsKlemToeStat == HIGH)
{
hulpcontact = true;
}

if( hulpcontact)
{
digitalWrite( venKlemToePin, HIGH);
}

if( resetdrukschStat == HIGH)
{
hulpcontact = false;
digitalWrite( venKlemToePin, LOW);
}
}

Vorige

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 7 gasten