[Open Source] Simende Yakawanda-Mari Yekuyeresa Chimbo

——Kubva kuDWIN Developer Forum

Iyo inohwina mubairo yakavhurika sosi kesi inokurudzirwa neDWIN foramu inogona kushandiswa muindasitiri yekuvaka kuona semendi yemukati - simende yakawanda-mari yekuyeresa chiridzwa chakavakirwa paT5L smart screen.Mainjiniya anoshandisa T5L smart screen kudzora yemagetsi uremu yekuona module, tembiricha yekuyera module, yekudziya module, hunyoro sensor, uye kusanganisa module kuona basa rekuona kwesolution solution uye liquid simende chikamu chemukati, uye kutsigira chaiyo-nguva kuratidzwa kwechiyero, kugadzika tembiricha, nhoroondo rekodhi, Stage parameter kumisikidza uye mamwe mabasa.

1. Chirongwa Chimiro

acdsb (1)

2.UI Material Display

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

3.UI Development Muenzaniso

acdsb (6)

4.C51 software design

Iyo yekutanga yekuraira chirongwa cheinjiniya kutaurirana nebhodhi rekutonga uchishandisa T5L serial port 2 ndeiyi inotevera:

void app_init()

{

is_testing = 0;

test_run_time = 0;

is_sec = 0;

nguva1 = 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);

}

Chirongwa chikuru cheT5L intelligent screen inodyidzana necontrol board kuona basa rekuona sement kuumbwa rakadai:

void btn_click_handler()

{

#define BTN_VAL_ADDR 0x1000

u16 btn_val;

kana(is_testing&&is_sec)

{

is_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);

kana(uart2rxsta&UART2_PACKET_OK)

{

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

{

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

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

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

}zvimwe kana(uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

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

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

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

}zvimwe kana(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);

}zvimwe kana(uart2buf[0]==0x04)

{

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

}zvimwe kana(uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2];

}

uart2rxsta = 0;

}

}

kana(iri_nguva1)

{

is_period1 = 0;

t_sample();

kana(is_testing&&is_en_tmp)

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

}

kana(is_btn_scan==0)

return;

is_btn_scan = 0;

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

kana(btn_val==0)

return;

kana(btn_val<=0x10)

start_win_btn_click_handler(btn_val);

 

btn_val = 0;

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

}

 

Tarisa kusource code kuti uwane zvimwe.


Nguva yekutumira: Zvita-02-2023