Open Source Browser Webpage ug T5L DWIN Screen Serial Port Deep Expansion (Node-RED nga teknolohiya)

——Gikan sa DWIN Developer Forum

Niini nga isyu, ipaila namo kanimo ang usa ka award-winning nga open source nga kaso sa Devin Developer Forum alang sa aplikasyon sa Divin Screen sa bag-ong field - browser webpage ug T5L Divin Screen serial port sa lawom nga pagpalapad (Node-RED nga teknolohiya) .Gigamit sa mga inhenyero ang T5L nga mga smart screen aron mapasa ang Node- RED nga teknolohiya nanginahanglan lamang ug serial port aron makonektar sa Internet ug makaamgo sa interaksyon sa datos tali sa screen sa Diwen ug sa web page sa browser.Kini nga solusyon nakaamgo sa mga gimbuhaton sama sa pagpadala ug pagdawat sa datos, interaksyon sa tsart, ug pagpakita sa sukaranang impormasyon tali sa smart screen ug sa web page.

1. Node-RED nga web page nga nagpadagan sa epekto nga gipakita

(1) Gamit ang teknolohiya sa Node-RED, ang browser gigamit ingon nga entrance sa interaksyon, aron ang browser ug ang screen makig-interact pinaagi sa serial port aron maamgohan ang katumbas nga function display.

asva (1)
asva (2)

Pagpadala ug pagdawat sa datos nga panid sa Tab

Icon interactive Tab panid

asva (3)

Batakang impormasyon Tab page effect

(2) Ang mga nag-unang reference code alang sa Node-RED web client mao ang mosunod:

{

"id": "fbb314a16ea00889",

"type": "serial in",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Ang serial port nagdawat ug datos",

"serial": "83fb45b5f4b51d61",

"x": 390,

"y": 140,

"mga alambre": [

[

"685a2fb2c2dc8fba"

]

]

},

{

"id": "1ba3c6e812e03e27",

"type": "serial out",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Pagpadala sa serial port",

"serial": "83fb45b5f4b51d61",

"x": 860,

"y": 260,

"mga alambre": []

},

{

"id": "5fb7f1d3d7425133",

"type": "status",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "I-monitor ang status sa serial port",

"sakupan": [

"fbb314a16ea00889"

],

"x": 390,

"y": 200,

"mga alambre": [

[

"3f18d1fdea398d35"

]

]

},

{

"id": "3f18d1fdea398d35",

"type": "function",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Kuhaa ang serial port status",

"func": "let sta = msg.status.text;\nlet color = 'red';\nif (sta.indexOf('not-connected') >= 0) \n sta = 'Unconnected';\nse if (sta.indexOf('connected') >= 0)\n{\n sta = 'koneksyon milampos';\n color = 'green';\n}uban pa\n sta = 'error occurred';\nmsg[' payload'] = sta;\nmsg['color'] = color;\n\nreturn msg;",

"mga output": 1,

"oras": 0,

"noerr": 0,

"initialize": "",

"finalize": "",

"libs": [],

"x": 620,

"y": 200,

"mga alambre": [

[

"2ec78ff0b0b9a56f"

]

]

},

{

"id": "2ec78ff0b0b9a56f",

"type": "ui_template",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"grupo": "4e4db779a7b91019",

"name": "Ipakita ang serial port status",

"order": 1,

"lapad": 0,

"taas": 0,

"format": "\n Status sa serial port:

2.DGUSInterfaceDesign

asva (4)

1. C51 Disenyo sa Inhenyero

Ang solusyon naggamit sa T5L smart screen serial port 2 aron makigkomunikar sa Node-RED web page.Ang ubang mga reference code mao ang mosunod:

#ilakip ang "sys.h"

#ilakip ang "uart2.h"

#apil

#apil

u8 buff[200];

walay kapuslanan (void)

{

u16num;

u16val;

u16 anyos;

u8i;

sys_init();

uart2_init(115200);

daan= 0;

samtang(1)

{

kon(mao_recv_complete)

{

uart2_buf[recv_len++]= 0;

uart2_buf[recv_len++]= 0;

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

{

num= uart2_buf[3]-'0';

kung(num<3)

{

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

{

val= (num==i);

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

}

}elseif(num<5)

{

val= (num==3);

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

}

}lain

{

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

}

recv_len= 0;

is_recv_complete= 0;

}

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

kon(val==1)

{

sys_read_vp(0x2100,buff, 50);

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

{

kung(buff==0xff)

{

buff= 0x00;

buff[i+1]= 0x00;

guba;

}

}

u2_send_bytes(buff,strlen(buff));

val= 0;

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

}

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

kung(val!=daan)

{

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

u2_send_bytes(buff,strlen(buff));

tigulang = val;

}

}

}


Oras sa pag-post: Dis-28-2023