[Umthombo oVulekileyo] Isixhobo sokulinganisa sesamente enamanani amaninzi

——Ukusuka kwiQonga labaphuhlisi be-DWIN

I-award-winning open source case ecetyiswa yiforum ye-DWIN ingasetyenziselwa kushishino lokwakha ukufumanisa umxholo wecandelo le-samente - isixhobo se-samente esinexabiso elininzi esisekelwe kwi-T5L smart screen. Iinjineli zisebenzisa i-T5L smart screen ukulawula imodyuli yokufumanisa ubunzima be-elektroniki, imodyuli yokulinganisa ubushushu, imodyuli yokufudumeza, inzwa yomswakama, kunye nemodyuli yokuxuba ukuqonda umsebenzi wokufumanisa isisombululo esiqinileyo kunye nomxholo wecandelo le-samente, kunye nokuxhasa umboniso wexesha langempela lomlinganiselo, setting lobushushu, irekhodi imbali, iSigaba parameter setting kunye neminye imisebenzi.

1. Ubume beNkqubo

acdsb (1)

2.UI Material Display

acdsb (2)
acdsb (4)
acdsb (3)
acdsb (5)

Umzekelo woPhuhliso lwe-UI

acdsb (6)

4.C51 uyilo lwesoftware

Inkqubo yomyalelo wokuqalisa ukuba injineli inxibelelane nebhodi yolawulo isebenzisa i-T5L serial port 2 ihamba ngolu hlobo lulandelayo:

usetyenziso olungenanto_init()

{

is_testing = 0;

test_run_time = 0;

yi_sec = 0;

ixesha1 = 0;

is_period1 = 0;

uart2_init(115200);

send_bytes("AT+INIT=0\r\n",sizeof("AT+INIT=0\r\n")-1);

sys_delay_ms(2500);

sys_pic(1);

send_bytes("AT+START\r\n",sizeof("AT+START\r\n")-1);

}

Inkqubo ephambili ye-T5L yesikrini esikrelekrele esisebenzisana nebhodi yokulawula ukuqonda umsebenzi wokufumanisa ukubunjwa kwesamente ngolu hlobo lulandelayo:

akukho nto btn_click_handler()

{

#chaza BTN_VAL_ADDR 0x1000

u16 btn_val;

ukuba (kuya_kuyavavanya&&is_sec)

{

yi_sec = 0;

test_run_time++;

btn_val = sprintf(commbuff,"%02u:%02u",(u16)(test_run_time/60),(u16)(test_run_time%60));

combuff[btn_val+1] = 0;

sys_write_vp(TEST_TIME_VP,commbuff,5);

ukuba(uart2rxsta&UART2_PACKET_OK)

{

ukuba(uart2buf[0]==0x01&&uart2buf[1]==0x02)

{

init_weight = *(float*)(uart2buf+2);

init_weight *= (*(float*)flashdat);

sys_write_vp(0x1178, (u8*)&init_weight, 2);

}kungenjalo ukuba(uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

init_ml = *(float*)(uart2buf+2);

init_ml /= (*(float*)flashdat+20);

sys_write_vp(0x1180, (u8*)&init_ml, 2);

}kungenjalo ukuba(uart2buf[0]==0x03&&uart2buf[1]==0x07)

{

speed_val = *(float*)(uart2buf+2);

disp_val += (speed_val*2.45f);

sys_write_vp(0x1180, (u8*)&disp_val, 2);

}kungenjalo ukuba(uart2buf[0]==0x04)

{

inani_elilonke = uart2buf[1]*256+uart2buf[2];

}kungenjalo ukuba(uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2];

}

uart2rxsta = 0;

}

}

ukuba(lixesha_1)

{

is_period1 = 0;

t_isampulu();

ukuba (kuya_kuyavavanya&&is_en_tmp)

sys_write_vp(0x1170,(u8*)&tmp,2);

}

ukuba(is_btn_scan==0)

buya

is_btn_scan = 0;

sys_read_vp(BTN_VAL_ADDR,(u8*)&btn_val,1);

ukuba(btn_val==0)

buya

ukuba(btn_val

start_win_btn_click_handler(btn_val);

 

btn_val = 0;

sys_write_vp(BTN_VAL_ADDR,(u8*)&btn_val,1);

}

 

Jonga kwikhowudi yemvelaphi ngokungakumbi.


Ixesha lokuposa: Dec-02-2023