Alfa testers gezocht voor Nextion uitbreiding
4 berichten
• Pagina 1 van 1
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Alfa testers gezocht voor Nextion uitbreiding
Allen,
Begin vorig jaar ben ik begonnen met het decoderen van een HMI file. De stelling was dat als alle informatie in de HMI moet zitten die je eigenlijk nodig hebt in een sketch (of C programma). Daarnaast vind ik dat je nog teveel typewerk heb om alles op te zetten. Dus gezocht naar een oplossing om een include generator te maken die een HMI file leest en dan een include (.h) file maakt waarin alle objecten komen te staan maar ook de ontkoppeling van scherm en programma. De reden is dat je dan bij een hergeneratie niet aan de include code hoeft te komen terwijl je wel de event routines in stand kan houden.
Als voorbeeld:
Bijgaand het volgende scherm:
Om daar een sketch te maken heb je best nog wel wat typewerk te doen om voor elke event de code te maken als ook de definitie van elk object. Met mijn tool genereer ik de volgende include:
cpp code
Hier in is opgenomen alle objecten die in het scherm zitten (nu nog ff een scherm maar wordt verder getest), de prototype functies die aangeroepen worden (de user functies die je verder zelf kan ontwikkelen), de event list.
Dit is het hoofd (en voorlopig enige) scherm maar kan al het bovengenoemde. Niet voor alle objecten wordt er al code gegenereerd. Wordt aan gewerkt.....
Dus stuur ff een pb met je mail adres als je interesse hebt. Ik weet niet of ik die zip file hier zo kan zetten.
Daarnaast. Ik was op zoek om te kijken of het mogelijk is om mbv open source cross platform te kunnen ontwikkelen. Ik heb gekozen voor Code::Blocks en wxWidgets (kan nog wel een uitdaging zij voor het aan de praat is maar dan heb je ook wat). Het is nu nog Windows maar Linux en Mac OSx wil ik ook zien draaien.
Dus laat wat weten
Nico
Begin vorig jaar ben ik begonnen met het decoderen van een HMI file. De stelling was dat als alle informatie in de HMI moet zitten die je eigenlijk nodig hebt in een sketch (of C programma). Daarnaast vind ik dat je nog teveel typewerk heb om alles op te zetten. Dus gezocht naar een oplossing om een include generator te maken die een HMI file leest en dan een include (.h) file maakt waarin alle objecten komen te staan maar ook de ontkoppeling van scherm en programma. De reden is dat je dan bij een hergeneratie niet aan de include code hoeft te komen terwijl je wel de event routines in stand kan houden.
Als voorbeeld:
Bijgaand het volgende scherm:
Om daar een sketch te maken heb je best nog wel wat typewerk te doen om voor elke event de code te maken als ook de definitie van elk object. Met mijn tool genereer ik de volgende include:
cpp code
#ifndef MAINSCREEN_H
#define MAINSCREEN_H
//
// include file generated from HMI file MAINSCREEN.HMI
// HMI file was created with Nextion IDE version V0.43
// generated on 2017-02-06T20:28:39
//
#include <Arduino.h>
#include <Nextion.h>
/**
* Structure of page: MainScreen
*/
struct {
NexButton ButtonOn = NexButton(0, 1, "ButtonOn");
NexButton ButtonOff = NexButton(0, 2, "ButtonOff");
NexText DisplayText = NexText(0, 3, "DisplayText");
NexSlider Slider = NexSlider(0, 4, "Slider");
} MainScreen;
void OnRelease_MainScreenButtonOn(void *ptr);
/**
* @name MainScreenButtonOnReleaseCallBack
* @param ptr Pointer to ButtonOnobject that generated this event
* is called when a release event is generated from button ButtonOn
*/
void MainScreenButtonOnReleaseCallBack (void *ptr) {
OnRelease_MainScreenButtonOn(&ptr);
}
void OnRelease_MainScreenButtonOff(void *ptr);
/**
* @name MainScreenButtonOffReleaseCallBack
* @param ptr Pointer to ButtonOffobject that generated this event
* is called when a release event is generated from button ButtonOff
*/
void MainScreenButtonOffReleaseCallBack (void *ptr) {
OnRelease_MainScreenButtonOff(&ptr);
}
/**
* @name attachCallBacks()
* attaches our callback functions to the Nextion system
*/
void attachCallBacks() {
MainScreen.ButtonOn.attachPop(MainScreenButtonOnReleaseCallBack, &(MainScreen.ButtonOn));
MainScreen.ButtonOff.attachPop(MainScreenButtonOffReleaseCallBack, &(MainScreen.ButtonOff));
}
/**
* @name nex_listen_list
* is a list of all objects that need listening to
*/
NexTouch * nex_listen_list[] {
&ButtonOn,
&ButtonOff,
&Slider,
NULL
};
#endif
Hier in is opgenomen alle objecten die in het scherm zitten (nu nog ff een scherm maar wordt verder getest), de prototype functies die aangeroepen worden (de user functies die je verder zelf kan ontwikkelen), de event list.
Dit is het hoofd (en voorlopig enige) scherm maar kan al het bovengenoemde. Niet voor alle objecten wordt er al code gegenereerd. Wordt aan gewerkt.....
Dus stuur ff een pb met je mail adres als je interesse hebt. Ik weet niet of ik die zip file hier zo kan zetten.
Daarnaast. Ik was op zoek om te kijken of het mogelijk is om mbv open source cross platform te kunnen ontwikkelen. Ik heb gekozen voor Code::Blocks en wxWidgets (kan nog wel een uitdaging zij voor het aan de praat is maar dan heb je ook wat). Het is nu nog Windows maar Linux en Mac OSx wil ik ook zien draaien.
Dus laat wat weten
Nico
Advertisement
Re: Alfa testers gezocht voor Nextion uitbreiding
Ziet er erg nice uit.
Heb zelf wel geen Nextion uitbreiding.
Heb zelf wel geen Nextion uitbreiding.
Re: Alfa testers gezocht voor Nextion uitbreiding
Ik heb je een PB gestuurd Nico...
Software engineer industriële automatisering
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: Alfa testers gezocht voor Nextion uitbreiding
Ik had ook een versie opgestuurd als zip file. En zojuist nog een keer. Is wel een zip file van 8MB. Daarna is het allemaal veel kleiner. De eerste keer zit er een dll bij
4 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 11 gasten