Нээлттэй эхийн хөтчийн вэб хуудас ба T5L DWIN дэлгэцийн цуврал портын гүн өргөтгөл (Node-RED технологи)

——DWIN хөгжүүлэгчдийн форумаас

Энэ дугаарт бид Дивин Дэлгэцийн шинэ талбарт хэрэглэгдэх Devin Developer Forum-ын шагналт нээлттэй эхийн кейсийг танилцуулах болно - хөтөч вэб хуудас болон T5L Divin Screen сериал портын гүнзгий өргөтгөл (Node-RED технологи) . Инженерүүд T5L ухаалаг дэлгэцийг Node-RED технологид нэвтрүүлэхийн тулд зөвхөн интернетэд холбогдож, Diwen дэлгэц болон хөтчийн вэб хуудасны хооронд өгөгдлийн харилцан үйлчлэлийг хэрэгжүүлэхэд цуваа порт шаарддаг. Энэхүү шийдэл нь ухаалаг дэлгэц болон вэб хуудасны хооронд өгөгдөл дамжуулах, хүлээн авах, диаграмын харилцан үйлчлэл, үндсэн мэдээллийг харуулах зэрэг функцуудыг гүйцэтгэдэг.

1. Node-RED вэб хуудас ажиллаж байгаа эффектийн дэлгэц

(1) Node-RED технологийг ашиглан хөтөчийг харилцан үйлчлэлийн хаалга болгон ашигладаг бөгөөд ингэснээр хөтөч болон дэлгэц нь цуваа портоор дамжуулан харгалзах функцийг харуулахын тулд харилцан үйлчилдэг.

asva (1)
asva (2)

Мэдээлэл илгээх, хүлээн авах таб хуудас

Интерактив таб хуудасны дүрс тэмдэг

asva (3)

Үндсэн мэдээлэл Таб хуудасны эффект

(2) Node-RED вэб клиентийн үндсэн лавлах кодууд нь дараах байдалтай байна.

{

"id": "fbb314a16ea00889",

"төрөл": "цуваа",

"from": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Цуваа порт өгөгдөл хүлээн авдаг",

"цуваа": "83fb45b5f4b51d61",

"x": 390,

"ба": 140,

"утас": [

[

"685a2fb2c2dc8fba"

]

]

},

{

"id": "1ba3c6e812e03e27",

"төрөл": "цуваа гарах",

"from": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Цуваа порт илгээж байна",

"цуваа": "83fb45b5f4b51d61",

"x": 860,

"ба": 260,

"утас": []

},

{

"id": "5fb7f1d3d7425133",

"төрөл": "төлөв",

"from": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"name": "Цуваа портын төлөвийг хянах",

"хамрах хүрээ": [

"fbb314a16ea00889"

],

"x": 390,

"ба": 200,

"утас": [

[

"3f18d1fdea398d35"

]

]

},

{

"id": "3f18d1fdea398d35",

"төрөл": "функц",

"from": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"нэр": "Цуваа портын статусыг задлах",

"func": "let sta = msg.status.text;\nlet өнгө = 'улаан';\nif (sta.indexOf('холбогдоогүй') >= 0) \n sta = 'Холбогдоогүй';\nlet хэрэв байвал (sta.indexOf('холбогдсон') >= 0)\n{\n sta = 'холболт амжилттай';\n өнгө = 'ногоон';\n}өөрөөр\n sta = 'алдаа гарлаа';\nmsg[' ачаалал'] = sta;\nmsg['color'] = color;\n\nбуцах мессеж;",

"гаралт": 1,

"цаг хугацаа": 0,

"noerr": 0,

"эхлүүлэх": "",

"эцсийн болгох": "",

"libs": [],

"x": 620,

"ба": 200,

"утас": [

[

"2ec78ff0b0b9a56f"

]

]

},

{

"id": "2ec78ff0b0b9a56f",

"төрөл": "ui_template",

"from": "09e0777eaff7fdea",

"g": "c1661722c7db00f9",

"group": "4e4db779a7b91019",

"name": "Цуваа портын төлөвийг харуулах",

"захиалга": 1,

"өргөн": 0,

"өндөр": 0,

"формат": "

\n Цуваа портын төлөв:

2. DGUSIинтерфэйсДэлчин

asva (4)

1. C51 Инженерийн дизайн

Энэхүү шийдэл нь Node-RED вэб хуудастай холбогдохын тулд T5L ухаалаг дэлгэцийн цуваа порт 2-ыг ашигладаг. Зарим лавлах кодууд дараах байдалтай байна.

#"sys.h"-г оруулах

#"uart2.h" оруулах

#оруулна

#оруулна

u8 buff[200];

хүчингүй гол (хүчингүй)

{

u16 тоо;

u16val;

u16 настай;

u8i;

sys_init();

uart2_init(115200);

хуучин = 0;

байхад(1)

{

хэрэв(боловор_бүрэн_бол)

{

uart2_buf[recv_len++]= 0;

uart2_buf[recv_len++]= 0;

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

{

тоо = uart2_buf[3]-'0';

хэрэв(тоо

{

for(i=0;i

{

val= (тоо ==i);

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

}

}elseif(тоо

{

val=(тоо ==3);

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

}

} өөр

{

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

}

recv_len= 0;

is_recv_complete= 0;

}

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

хэрэв(val==1)

{

sys_read_vp(0x2100, buff, 50);

for(i=0;i

{

хэрэв(буфф==0xff)

{

шаргал = 0x00;

buff[i+1]= 0x00;

завсарлага;

}

}

u2_send_bytes(buff,strlen(buff));

val= 0;

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

}

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

хэрэв(val!=хуучин)

{

sprintf(буфф,"%d", val);

u2_send_bytes(buff,strlen(buff));

хуучин= val;

}

}

}


Шуудангийн цаг: 2023 оны 12-р сарын 28