Keuze Arduino.

Hardware geleverd door Arduino
Berichten: 15
Geregistreerd: 15 Jan 2017, 22:14

Re: Keuze Arduino.

Berichtdoor anthony » 21 Jan 2017, 20:44

Inderdaad :(

Shop al gemaild. Hoop dat dit snel opgelost word.

Advertisement

Berichten: 9
Geregistreerd: 18 Jan 2017, 21:39

Re: Keuze Arduino.

Berichtdoor Philippe Steelant » 31 Jan 2017, 23:44

Hallo ,

Ik ben begonnen met wat experimenteren met Arduino Uno en Nextion 2.4 display.
met de editor zal het lukken , daar al wat testjes mee gedaan , maar ik vind maar niet de juiste library voor Arduino en weet ook niet goed waar die te plaatsten.
Werk onder W10...
Misschien ergens een vb waar 2 of meerder buttons relais aan en uit kunnen zetten.
Dan kan ik daar verder op " borduren "...

Grts

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

Re: Keuze Arduino.

Berichtdoor nicoverduin » 01 Feb 2017, 00:33

Philippe Steelant schreef:Hallo ,

Ik ben begonnen met wat experimenteren met Arduino Uno en Nextion 2.4 display.
met de editor zal het lukken , daar al wat testjes mee gedaan , maar ik vind maar niet de juiste library voor Arduino en weet ook niet goed waar die te plaatsten.
Werk onder W10...
Misschien ergens een vb waar 2 of meerder buttons relais aan en uit kunnen zetten.
Dan kan ik daar verder op " borduren "...

Grts

Alle libraries die je extra download moet je in "Mijn Documenten\Arduino\Libraries" zetten. De Arduino IDE schijnt ook de .zip files te kunnen importeren. Ik werk zelf met een andere omgeving. Verder kun je de Nextion Arduino library hier downloaden : https://github.com/itead/ITEADLIB_Arduino_Nextion
Daar zitten ook voorbeelden.
Let op
In de installatie folder van de IDE zelf is ook een folder met libraries. Blijf daar verder helemaal vanaf. Als je een nieuwe versie van de IDE er overheen installeert ben je gelijk al die libraries kwijt.
Verder heeft de IDE een hele batterij aan voorbeelden die bij de installatie van de IDE worden meegeleverd. Helaas slaan de meesten die voorbeelden over of laden de sketch (=programma) compileren die en doen een upload. Als ie werkt (natuurlijk werkt ie) gaan ze over op het volgende voorbeeld. Er wordt niet onderzocht waarom zoiets werkt met als gevolg dat er hele ritsen vragen komen die gewoon in de basis voorkomen.
Het is mij opgevallen dat er nog nooit vragen zijn gesteld over een van de voorbeelden.....
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

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

Re: Keuze Arduino.

Berichtdoor Koepel » 01 Feb 2017, 01:51

@PhilippeSteelant @nicoverduin,
Misschien helpen mijn eerste stapjes met Nextion voor Philippe, en ik heb ook vragen voor nico : http://arduinoforum.nl/viewtopic.php?f=4&t=2345.

Berichten: 15
Geregistreerd: 15 Jan 2017, 22:14

Re: Keuze Arduino.

Berichtdoor anthony » 01 Feb 2017, 19:08

Gisteren toch maar een scherm gekocht (5 inch).

Ben zelf al een heel eind met me sketch

- Led dimmer PWM
- Temperatuur meten. (DS18B20) Hier door verwarmen / koelen
- Klok (DS3231).

Nog te doen.
Water wissel door vlotters.

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

Re: Keuze Arduino.

Berichtdoor Dries » 13 Feb 2017, 10:48

Dag Anthony,

lukt het ?

Berichten: 15
Geregistreerd: 15 Jan 2017, 22:14

Re: Keuze Arduino.

Berichtdoor anthony » 13 Feb 2017, 13:23

Lukt aardig.

Volgende heb ik nu.
-Temperatuur regeling
-RTC met aanpassing via de nextion.
-Waterflow (liters de uur)
-Koeling

Alleen nog de relay pagina met daar de bedrijfs uren van iedere relay.

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

Re: Keuze Arduino.

Berichtdoor Dries » 14 Feb 2017, 10:35

Allright! ik ben eerlijk gezegd beniewd naar je code, ik ben nog aan het knoeien met knoppen toe te voegen op de Nextion maar het lukt me nog niet helemaal om er iets deftigs uit te krijgen....

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

Re: Keuze Arduino.

Berichtdoor nicoverduin » 14 Feb 2017, 11:54

Inmiddels begint mijn tooltje om een batterij code te genereren al aardig de goede richting uit te komen.
Vanuit een HMI scherm genereert hij een Include bestand (hier een voorbeeld). Daar hef je verder niets aan te doen
cpp code
#ifndef TWOSCREEN_H
#define TWOSCREEN_H
//
// include file generated from HMI file TWOSCREEN.HMI
// HMI file was created with Nextion IDE version V0.43
// generated on 2017-02-14T08:38:54
//

#include <Arduino.h>
#include <Nextion.h>
/**
* Structure of page: page0
*/
struct {
NexPage page0 = NexPage(0, 0, "page0");
NexButton b0 = NexButton(0, 1, "b0");
NexButton b1 = NexButton(0, 2, "b1");
} page0_str;

/**
* Structure of page: page1
*/
struct {
NexPage page1 = NexPage(1, 0, "page1");
NexButton b0 = NexButton(1, 1, "b0");
} page1_str;

/**
* Structure of page: page2
*/
struct {
NexPage page2 = NexPage(2, 0, "page2");
NexButton b3 = NexButton(2, 1, "b3");
} page2_str;

void OnRelease_page0(void *ptr);
/**
* @name page0__ReleaseCallBack
* @param ptr Pointer to page0 object that generated this event
* is called when a release event is generated from NexPage page0
*/
void page0_ReleaseCallBack (void *ptr) {
OnRelease_page0(&ptr);
}

void OnPush_page0(void *ptr);
/**
* @name page0_PushCallBack
* @param ptr Pointer to page0 object that generated this event
* is called when a push event is generated from NexPage page0
*/
void page0_PushCallBack (void *ptr) {
OnPush_page0(&ptr);
}

void OnRelease_page1_b0(void *ptr);
/**
* @name page1_b0__ReleaseCallBack
* @param ptr Pointer to b0 object that generated this event
* is called when a release event is generated from NexButton b0
*/
void page1_b0_ReleaseCallBack (void *ptr) {
OnRelease_page1_b0(&ptr);
}

void OnPush_page1_b0(void *ptr);
/**
* @name page1_b0__PushCallBack
* @param ptr Pointer to b0 object that generated this event
* is called when a push event is generated from NexButton b0
*/
void page1_b0_PushCallBack (void *ptr) {
OnPush_page1_b0(&ptr);
}

void OnRelease_page2(void *ptr);
/**
* @name page2__ReleaseCallBack
* @param ptr Pointer to page2 object that generated this event
* is called when a release event is generated from NexPage page2
*/
void page2_ReleaseCallBack (void *ptr) {
OnRelease_page2(&ptr);
}

void OnPush_page2(void *ptr);
/**
* @name page2_PushCallBack
* @param ptr Pointer to page2 object that generated this event
* is called when a push event is generated from NexPage page2
*/
void page2_PushCallBack (void *ptr) {
OnPush_page2(&ptr);
}

/**
* @name attachCallBacks()
* attaches our callback functions to the Nextion system
*/
void attachCallBacks() {
page0_str.page0.attachPop(page0_ReleaseCallBack, &(page0_str.page0));
page0_str.page0.attachPush(page0_PushCallBack, &(page0_str.page0));
page1_str.b0.attachPop(page1_b0_ReleaseCallBack, &(page1_str.b0));
page1_str.b0.attachPush(page1_b0_PushCallBack, &(page1_str.b0));
page2_str.page2.attachPop(page2_ReleaseCallBack, &(page2_str.page2));
page2_str.page2.attachPush(page2_PushCallBack, &(page2_str.page2));
}
/**
* @name nex_listen_list
* is a list of all objects that need listening to
*/
NexTouch * nex_listen_list[] {
&page0_str.page0,
&page1_str.b0,
&page2_str.page2,
NULL
};

#endif"


En als je wilt een .ino bestand met alle user events die je met de editor hebt aangegeven. Nadeel is nog wel dat je dit in principe maar 1x kan doen. In deze code zet je dan de functionaliteit die je wilt hebben als je een knop in drukt of los laat en dan voor elk component wat de editor onsteunt.
cpp code
#ifndef TWOSCREEN_USER_EVENTS_HMI
#define TWOSCREEN_USER_EVENTS_HMI
// user function file generated from HMI file twoscreen.HMI
// HMI file was created with Nextion IDE version V0.43
// generated on 2017-02-14T08:38:54
//

#include <Arduino.h>
#include <Nextion.h>
#include "twoscreen.h"

/**
* @name OnRelease_page0
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the release event
*/
void OnRelease_page0(void *ptr) {
page1_str.page1.show();
}

/**
* @name OnPush_page0
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the push event
*/
void OnPush_page0(void *ptr) {
}

/**
* @name OnRelease_page1_b0
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the release event
*/
void OnRelease_page1_b0(void *ptr) {
page2_str.page2.show();
}

/**
* @name OnPush_page1_b0
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the push event
*/
void OnPush_page1_b0(void *ptr) {
}

/**
* @name OnRelease_page2
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the release event
*/
void OnRelease_page2(void *ptr) {
page0_str.page0.show();
}

/**
* @name OnPush_page2
* @param ptr Pointer to object generating the event
* this is the user function corresponding to the push event
*/
void OnPush_page2(void *ptr) {
}

#endif


En dan is een kale sketch als volgt:
cpp code
#include <SoftwareSerial.h>

#include "Arduino.h"
#include "twoscreen.h"
#include "Nextion.h"

SoftwareSerial HMISerial(9,10);

void setup()
{

nexInit();
attachCallBacks();
}

// The loop function is called in an endless loop
void loop()
{
nexLoop(nex_listen_list);
}
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Vorige

Terug naar Arduino hardware

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 9 gasten