——Vom DWIN-Entwicklerforum
In dieser Ausgabe stellen wir Ihnen einen preisgekrönten Open-Source-Fall des Devin Developer Forum für die Anwendung von Divin Screen im neuen Bereich vor – Browser-Webseite und eingehende Erweiterung der seriellen Schnittstelle von T5L Divin Screen (Node-RED-Technologie). . Ingenieure verwenden T5L-Smart-Screens, um die Node-RED-Technologie zu bestehen. Für die Verbindung zum Internet und die Dateninteraktion zwischen dem Diwen-Bildschirm und der Browser-Webseite ist lediglich ein serieller Port erforderlich. Diese Lösung realisiert Funktionen wie das Senden und Empfangen von Daten, die Diagramminteraktion und die Anzeige grundlegender Informationen zwischen dem Smart Screen und der Webseite.
1. Anzeige des laufenden Effekts auf der Node-RED-Webseite
(1) Mithilfe der Node-RED-Technologie wird der Browser als Interaktionseingang verwendet, sodass der Browser und der Bildschirm über die serielle Schnittstelle interagieren, um die entsprechende Funktionsanzeige zu realisieren.
![asva (1)](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96baa7b18a54530.jpg)
![asva (2)](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96babae2d997861.jpg)
Registerkarte „Daten senden und empfangen“.
Symbol der interaktiven Registerkartenseite
![asva (3)](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96bad3193a85099.jpg)
Grundlegende Informationen zum Tab-Seiteneffekt
(2) Die wichtigsten Referenzcodes für den Node-RED-Webclient lauten wie folgt:
{
„id“: „fbb314a16ea00889“,
„Typ“: „Seriell in“,
„von“: „09e0777eaff7fdea“,
„g“: „c1661722c7db00f9“,
„name“: „Serieller Port empfängt Daten“,
„seriell“: „83fb45b5f4b51d61“,
„x“: 390,
„und“: 140,
"Drähte": [
[
„685a2fb2c2dc8fba“
]
]
},
{
„id“: „1ba3c6e812e03e27“,
„Typ“: „Serieller Ausgang“,
„von“: „09e0777eaff7fdea“,
„g“: „c1661722c7db00f9“,
„name“: „Senden über die serielle Schnittstelle“,
„seriell“: „83fb45b5f4b51d61“,
„x“: 860,
„und“: 260,
"Drähte": []
},
{
„id“: „5fb7f1d3d7425133“,
„Typ“: „Status“,
„von“: „09e0777eaff7fdea“,
„g“: „c1661722c7db00f9“,
„name“: „Status der seriellen Schnittstelle überwachen“,
"Umfang": [
„fbb314a16ea00889“
],
„x“: 390,
„und“: 200,
"Drähte": [
[
„3f18d1fdea398d35“
]
]
},
{
„id“: „3f18d1fdea398d35“,
„Typ“: „Funktion“,
„von“: „09e0777eaff7fdea“,
„g“: „c1661722c7db00f9“,
„name“: „Status der seriellen Schnittstelle extrahieren“,
"func": "let sta = msg.status.text;\nlet color = 'red';\nif (sta.indexOf('not-connected') >= 0) \n sta = 'Unconnected';\nelse if (sta.indexOf('connected') >= 0)\n{\n sta = 'Verbindung erfolgreich';\n color = 'grün';\n}else\n sta = 'Fehler aufgetreten';\nmsg[' payload'] = sta;\nmsg['color'] = color;\n\nreturn msg;",
„Ausgänge“: 1,
„timeout“: 0,
„noerr“: 0,
„initialisieren“: „“,
„finalisieren“: „“,
"libs": [],
„x“: 620,
„und“: 200,
"Drähte": [
[
„2ec78ff0b0b9a56f“
]
]
},
{
„id“: „2ec78ff0b0b9a56f“,
„type“: „ui_template“,
„von“: „09e0777eaff7fdea“,
„g“: „c1661722c7db00f9“,
„Gruppe“: „4e4db779a7b91019“,
„name“: „Status der seriellen Schnittstelle anzeigen“,
„Bestellung“: 1,
"Breite": 0,
"Höhe": 0,
"Format": "
2. DGUSICHSchnittstelleDDesign
![asva (4)](https://ecdn6.globalso.com/upload/p/1355/source/2024-03/65f96bae62cee44597.jpg)
1. C51 Ingenieurdesign
Die Lösung nutzt den seriellen Port 2 des T5L Smart Screen für die Kommunikation mit der Node-RED-Webseite. Einige Referenzcodes lauten wie folgt:
#include „sys.h“
#include „uart2.h“
#enthalten
#enthalten
u8 Buff[200];
void main(void)
{
u16num;
u16val;
u16alt;
u8i;
sys_init();
uart2_init(115200);
alt= 0;
while(1)
{
if(is_recv_complete)
{
uart2_buf[recv_len++]= 0;
uart2_buf[recv_len++]= 0;
if(strstr((char*)uart2_buf,"cmd"))
{
num= uart2_buf[3]-'0';
if(num
{
for(i=0;i
{
val= (num==i);
sys_write_vp(0x2300+i,(u8*)&val, 1);
}
}elseif(num
{
val=(num==3);
sys_write_vp(0x2200,(u8*)&val, 1);
}
}anders
{
sys_write_vp(0x2000,uart2_buf, recv_len/2+2);
}
recv_len= 0;
is_recv_complete= 0;
}
sys_read_vp(0x1000,(u8*)&val, 1);
if(val==1)
{
sys_read_vp(0x2100,buff, 50);
for(i=0;i
{
if(buff==0xff)
{
Buff= 0x00;
buff[i+1]= 0x00;
brechen;
}
}
u2_send_bytes(buff,strlen(buff));
Wert= 0;
sys_write_vp(0x1000,(u8*)&val, 1);
}
sys_read_vp(0x2400,(u8*)&val, 1);
if(val!=old)
{
sprintf(buff,"%d", val);
u2_send_bytes(buff,strlen(buff));
alt = Wert;
}
}
}
Zeitpunkt der Veröffentlichung: 28. Dezember 2023
- English
- French
- German
- Portuguese
- Spanish
- Russian
- Japanese
- Korean
- Arabic
- Irish
- Greek
- Turkish
- Italian
- Danish
- Romanian
- Indonesian
- Czech
- Afrikaans
- Swedish
- Polish
- Basque
- Catalan
- Esperanto
- Hindi
- Lao
- Albanian
- Amharic
- Armenian
- Azerbaijani
- Belarusian
- Bengali
- Bosnian
- Bulgarian
- Cebuano
- Chichewa
- Corsican
- Croatian
- Dutch
- Estonian
- Filipino
- Finnish
- Frisian
- Galician
- Georgian
- Gujarati
- Haitian
- Hausa
- Hawaiian
- Hebrew
- Hmong
- Hungarian
- Icelandic
- Igbo
- Javanese
- Kannada
- Kazakh
- Khmer
- Kurdish
- Kyrgyz
- Latin
- Latvian
- Lithuanian
- Luxembou..
- Macedonian
- Malagasy
- Malay
- Malayalam
- Maltese
- Maori
- Marathi
- Mongolian
- Burmese
- Nepali
- Norwegian
- Pashto
- Persian
- Punjabi
- Serbian
- Sesotho
- Sinhala
- Slovak
- Slovenian
- Somali
- Samoan
- Scots Gaelic
- Shona
- Sindhi
- Sundanese
- Swahili
- Tajik
- Tamil
- Telugu
- Thai
- Ukrainian
- Urdu
- Uzbek
- Vietnamese
- Welsh
- Xhosa
- Yiddish
- Yoruba
- Zulu
- Kinyarwanda
- Tatar
- Oriya
- Turkmen
- Uyghur