——DWINi arendajafoorumist
Selles numbris tutvustame teile Devini arendajafoorumi auhinnatud avatud lähtekoodiga juhtumit Divin Screeni rakendamiseks uues valdkonnas - brauseri veebileht ja T5L Divin Screen jadapordi põhjalik laiendamine (Node-RED tehnoloogia) .Insenerid kasutavad T5L nutikaid ekraane Node-RED-tehnoloogia läbimiseks, Interneti-ühenduse loomiseks ning Diweni ekraani ja brauseri veebilehe vaheliseks andmevahetuseks on vaja ainult jadaporti.See lahendus teostab selliseid funktsioone nagu andmete saatmine ja vastuvõtmine, diagrammi interaktsioon ja põhiteabe kuvamine nutiekraani ja veebilehe vahel.
1. Node-RED veebilehe tööefekti kuva
(1) Node-RED tehnoloogia abil kasutatakse brauserit interaktsiooni sissepääsuna, nii et brauser ja ekraan suhtlevad jadapordi kaudu, et realiseerida vastava funktsiooni kuva.
Andmete saatmise ja vastuvõtmise vahekaart
Ikoon interaktiivne vahekaart
Põhiteave Vahelehe efekt
(2) Node-RED veebikliendi peamised viitekoodid on järgmised:
{
"id": "fbb314a16ea00889",
"type": "serial in",
"z": "09e0777eaff7fdea",
"g": "c1661722c7db00f9",
"name": "Jadaport võtab andmeid vastu",
"serial": "83fb45b5f4b51d61",
"x": 390,
"y": 140,
"juhtmed": [
[
"685a2fb2c2dc8fba"
]
]
},
{
"id": "1ba3c6e812e03e27",
"type": "serial out",
"z": "09e0777eaff7fdea",
"g": "c1661722c7db00f9",
"name": "Jadapordi saatmine",
"serial": "83fb45b5f4b51d61",
"x": 860,
"y": 260,
"juhtmed": []
},
{
"id": "5fb7f1d3d7425133",
"tüüp": "staatus",
"z": "09e0777eaff7fdea",
"g": "c1661722c7db00f9",
"name": "Jälgida jadapordi olekut",
"ulatus": [
"fbb314a16ea00889"
],
"x": 390,
"y": 200,
"juhtmed": [
[
"3f18d1fdea398d35"
]
]
},
{
"id": "3f18d1fdea398d35",
"tüüp": "funktsioon",
"z": "09e0777eaff7fdea",
"g": "c1661722c7db00f9",
"name": "Extract jadapordi olek",
"func": "lase sta = msg.status.text;\nlet color = 'red';\nif (sta.indexOf('mitteühendatud') >= 0) \n sta = 'Ühendamata';\nelse if (sta.indexOf('connected') >= 0)\n{\n sta = 'ühendus õnnestus';\n color = 'roheline';\n}else\n sta = 'tekkis viga';\nmsg[' payload'] = sta;\nmsg['color'] = värv;\n\ntagasta sõnum;",
"väljundid": 1,
"timeout": 0,
"noerr": 0,
"initsialiseerida": "",
"finalize": "",
"libs": [],
"x": 620,
"y": 200,
"juhtmed": [
[
"2ec78ff0b0b9a56f"
]
]
},
{
"id": "2ec78ff0b0b9a56f",
"type": "ui_template",
"z": "09e0777eaff7fdea",
"g": "c1661722c7db00f9",
"grupp": "4e4db779a7b91019",
"name": "Kuva jadapordi olek",
"tellimus": 1,
"laius": 0,
"kõrgus": 0,
"vorming": "\n Jadapordi olek:
2.DGUSIn-liidesDesign
1. C51 tehniline projekteerimine
Lahendus kasutab Node-RED veebilehega suhtlemiseks T5L nutika ekraani jadaporti 2.Mõned viitekoodid on järgmised:
#include "sys.h"
#include "uart2.h"
#kaasa
#kaasa
u8 buff [200];
tühine põhi(tühine)
{
u16num;
u16val;
u16 vana;
u8i;
sys_init();
uart2_init(115200);
vana = 0;
samal ajal (1)
{
if(on_recv_complete)
{
uart2_buf[recv_len++]= 0;
uart2_buf[recv_len++]= 0;
if(strstr((char*)uart2_buf,"cmd"))
{
arv= uart2_buf[3]-'0';
if(arv<3)
{
for(i=0;i<3;i++)
{
val= (arv==i);
sys_write_vp(0x2300+i,(u8*)&val, 1);
}
}elseif(arv<5)
{
val= (arv==3);
sys_write_vp(0x2200,(u8*)&val, 1);
}
}muu
{
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<100;i++)
{
if(buff==0xff)
{
buff= 0x00;
buff[i+1] = 0x00;
murda;
}
}
u2_send_bytes(buff,strlen(buff));
val = 0;
sys_write_vp(0x1000,(u8*)&val, 1);
}
sys_read_vp(0x2400,(u8*)&val, 1);
if(val!=vana)
{
sprintf(buff,"%d", val);
u2_send_bytes(buff,strlen(buff));
vana= val;
}
}
}
Postitusaeg: 28. detsember 2023