Atvērtā pirmkoda pārlūkprogrammas vietne un T5L DWIN ekrāna seriālā porta dziļa paplašināšana (Node-RED tehnoloģija)

——No DWIN izstrādātāju foruma

Šajā numurā mēs jūs iepazīstināsim ar Devin Developer Forum godalgotu atvērtā pirmkoda gadījumu Divin Screen pielietošanai jaunajā jomā - pārlūkprogrammas tīmekļa vietnē un T5L Divin Screen seriālā porta padziļinātā paplašināšanā (Node-RED tehnoloģija) .Inženieri izmanto T5L viedos ekrānus, lai nodotu Node-RED tehnoloģijai ir nepieciešams tikai seriālais ports, lai izveidotu savienojumu ar internetu un realizētu datu mijiedarbību starp Diwen ekrānu un pārlūkprogrammas tīmekļa lapu.Šis risinājums realizē tādas funkcijas kā datu sūtīšana un saņemšana, diagrammu mijiedarbība un pamatinformācijas parādīšana starp viedo ekrānu un tīmekļa lapu.

1. Node-RED tīmekļa lapas darbības efekta displejs

(1) Izmantojot Node-RED tehnoloģiju, pārlūkprogramma tiek izmantota kā mijiedarbības ieeja, lai pārlūkprogramma un ekrāns mijiedarbotos caur seriālo portu, lai realizētu atbilstošās funkcijas displeju.

asva (1)
asva (2)

Datu sūtīšanas un saņemšanas cilnes lapa

Ikona interaktīva cilnes lapa

asva (3)

Pamatinformācija Cilnes lapas efekts

(2) Node-RED tīmekļa klienta galvenie atsauces kodi ir šādi:

{

"id": "fbb314a16ea00889",

"type": "serial in",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Seriālais ports saņem datus",

"serial": "83fb45b5f4b51d61",

"x": 390,

"y": 140,

"vadi": [

[

"685a2fb2c2dc8fba"

]

]

},

{

"id": "1ba3c6e812e03e27",

"type": "serial out",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Sērijveida porta sūtīšana",

"serial": "83fb45b5f4b51d61",

"x": 860,

"y": 260,

"vadi": []

},

{

"id": "5fb7f1d3d7425133",

"tips": "statuss",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Pārraudzīt seriālā porta statusu",

"joma": [

"fbb314a16ea00889"

],

"x": 390,

"y": 200,

"vadi": [

[

"3f18d1fdea398d35"

]

]

},

{

"id": "3f18d1fdea398d35",

"tips": "funkcija",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Izvilkt seriālā porta statusu",

"func": "let sta = msg.status.text;\nlet color = 'sarkans';\nif (sta.indexOf('not-connected') >= 0) \n sta = 'Nesavienots';\nelse if (sta.indexOf('connected') >= 0)\n{\n sta = 'savienojums izdevies';\n color = 'zaļš';\n}else\n sta = 'notikusi kļūda';\nmsg[' payload'] = sta;\nmsg['color'] = krāsa;\n\natgriezt ziņu;",

"izejas": 1,

"taimauts": 0,

"noerr": 0,

"palaist": "",

"finalize": "",

"libs": [],

"x": 620,

"y": 200,

"vadi": [

[

"2ec78ff0b0b9a56f"

]

]

},

{

"id": "2ec78ff0b0b9a56f",

"tips": "ui_template",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"grupa": "4e4db779a7b91019",

"name": "Parādīt seriālā porta statusu",

"pasūtījums": 1,

"platums": 0,

"augstums": 0,

"formāts": "\n Seriālā porta statuss:

2.DGUSIinterfeissDesign

asva (4)

1. C51 Inženierprojektēšana

Risinājums izmanto T5L viedā ekrāna seriālo portu 2, lai sazinātos ar Node-RED tīmekļa lapu.Daži atsauces kodi ir šādi:

#include "sys.h"

#include "uart2.h"

#iekļauts

#iekļauts

u8 buff[200];

nederīgs galvenais (neesošs)

{

u16num;

u16val;

u16 vecs;

u8i;

sys_init();

uart2_init(115200);

vecs = 0;

kamēr (1)

{

if(ir_recv_complete)

{

uart2_buf[recv_len++]= 0;

uart2_buf[recv_len++]= 0;

if(strstr((char*)uart2_buf,"cmd"))

{

num= uart2_buf[3]-'0';

ja(skaitlis<3)

{

for(i=0;i<3;i++)

{

val= (skaits==i);

sys_write_vp(0x2300+i,(u8*)&val, 1);

}

}elseif(skaitlis<5)

{

val= (skaits==3);

sys_write_vp(0x2200,(u8*)&val, 1);

}

}cits

{

sys_write_vp(0x2000,uart2_buf, recv_len/2+2);

}

recv_len= 0;

ir_recv_complete= 0;

}

sys_read_vp(0x1000,(u8*)&val, 1);

ja(val==1)

{

sys_read_vp(0x2100,buff, 50);

for(i=0;i<100;i++)

{

if(buff==0xff)

{

buff= 0x00;

buff[i+1]= 0x00;

pārtraukums;

}

}

u2_send_bytes(buff,strlen(buff));

val = 0;

sys_write_vp(0x1000,(u8*)&val, 1);

}

sys_read_vp(0x2400,(u8*)&val, 1);

if(val!=vecs)

{

sprintf(buff,"%d", val);

u2_send_bytes(buff,strlen(buff));

vecs= val;

}

}

}


Izlikšanas laiks: 28. decembris 2023