Open Source Browser Webpage sareng T5L DWIN Screen Serial Port Expansion Deep (téknologi Node-RED)

——Ti DWIN Forum pamekar

Dina masalah ieu, kami bakal ngenalkeun ka anjeun kasus open source anu meunang pangajén tina Forum Pangembang Devin pikeun aplikasi Divin Screen dina widang anyar - halaman wéb browser sareng T5L Divin Screen port serial ékspansi jero (téknologi Node-RED) .Insinyur ngagunakeun T5L layar pinter lulus Node- téhnologi RED ngan merlukeun port serial pikeun nyambung ka Internet sarta ngawujudkeun interaksi data antara layar Diwen jeung kaca web browser.Solusi ieu ngawujudkeun fungsi sapertos ngirim sareng nampi data, interaksi bagan, sareng tampilan inpormasi dasar antara layar pinter sareng halaman wéb.

1. Node-RED kaca web ngajalankeun tampilan pangaruh

(1) Ngagunakeun téhnologi Node-RED, browser dipaké salaku lawang interaksi, ku kituna browser jeung layar berinteraksi ngaliwatan port serial pikeun ngawujudkeun tampilan fungsi pakait.

asva (1)
asva (2)

Data ngirim jeung nampa kaca Tab

Kaca Tab interaktif Ikon

asva (3)

Inpo dasar tab pangaruh kaca

(2) Kodeu rujukan utama pikeun klien wéb Node-RED nyaéta kieu:

{

"id": "fbb314a16ea00889",

"type": "serial in",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Serial port narima data",

"Serial": "83fb45b5f4b51d61",

"x": 390,

"y": 140,

"kawat": [

[

"685a2fb2c2dc8fba"

]

]

},

{

"id": "1ba3c6e812e03e27",

"type": "serial kaluar",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Pangiriman port serial",

"Serial": "83fb45b5f4b51d61",

"x": 860,

"y": 260,

"kawat": []

},

{

"id": "5fb7f1d3d7425133",

"type": "status",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Pantau status port serial",

"wengkuan": [

"fbb314a16ea00889"

],

"x": 390,

"y": 200,

"kawat": [

[

"3f18d1fdea398d35"

]

]

},

{

"id": "3f18d1fdea398d35",

"type": "fungsi",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Cabut status port serial",

"func": "Nyanggakeun sta = msg.status.text;\nlet color = 'beureum';\nif (sta.indexOf('teu nyambung') >= 0) \n sta = 'Teu nyambung';\nse lamun (sta.indexOf ( 'nyambung') >= 0)\n{\n sta = 'sambungan hasil';\n warna = 'héjo';\n}sejenna\n sta = 'kasalahan lumangsung';\nmsg[' muatan'] = sta;\nmsg['warna'] = warna;\n\nngabalikeun pesen;",

"kaluaran": 1,

"Wayahna": 0,

"noerr": 0,

"initialize": "",

"finalize": "",

"libs": [],

"x": 620,

"y": 200,

"kawat": [

[

"2ec78ff0b0b9a56f"

]

]

},

{

"id": "2ec78ff0b0b9a56f",

"type": "ui_template",

"z": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"grup": "4e4db779a7b91019",

"name": "Témbongkeun status port serial",

"urutan": 1,

"lebar": 0,

"jangkungna": 0,

"format": "\n Status port serial:

2. DGUSIpanganteurDesign

asva (4)

1. C51 Desain Téknik

Solusi ngagunakeun T5L layar pinter port serial 2 pikeun komunikasi sareng kaca web Node-RED.Sababaraha kode rujukan nyaéta kieu:

#include "sys.h"

#kalebet "uart2.h"

#kaasup

#kaasup

u8 buff[200];

batal utama (void)

{

u16num;

u16val;

u16 heubeul;

u8i;

sys_init();

uart2_init(115200);

heubeul = 0;

bari (1)

{

lamun (is_recv_complete)

{

uart2_buf [recv_len++] = 0;

uart2_buf [recv_len++] = 0;

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

{

num= uart2_buf[3]-'0';

lamun (num<3)

{

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

{

val= (angka==i);

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

}

}elseif(num<5)

{

val= (jumlah==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);

lamun(val==1)

{

sys_read_vp (0x2100, buff, 50);

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

{

lamun (buff ==0xff)

{

buff = 0x00;

buff[i+1]= 0x00;

megatkeun;

}

}

u2_send_bytes(buff,strlen(buff));

val = 0;

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

}

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

lamun (val! = heubeul)

{

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

u2_send_bytes(buff,strlen(buff));

heubeul = val;

}

}

}


waktos pos: Dec-28-2023