[Oopbron] Sement Multi-hoeveelheid Meetinstrument

——Van DWIN-ontwikkelaarsforum

Die bekroonde oopbron-geval wat deur die DWIN-forum aanbeveel word, kan in die konstruksiebedryf gebruik word om sementkomponent-inhoud op te spoor - 'n sement-meetinstrument vir meervoudige hoeveelhede gebaseer op T5L-slimskerm.Ingenieurs gebruik die T5L-slimskerm om die elektroniese gewigopsporingsmodule, temperatuurmetingsmodule, verwarmingsmodule, vogsensor en mengmodule te beheer om die opsporingsfunksie van vaste oplossing en vloeibare sementkomponent-inhoud te realiseer, en ondersteun intydse vertoning van tempo, temperatuurinstelling, geskiedenisrekord, stadiumparameterinstelling en ander funksies.

1. Programstruktuur

acdsb (1)

2.UI materiaal vertoon

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

3.UI Ontwikkeling Voorbeeld

acdsb (6)

4.C51 sagteware ontwerp

Die inisialiseringsbevelprogram vir die ingenieur om met die beheerbord te kommunikeer deur die T5L-reekspoort 2 te gebruik, is soos volg:

void app_init()

{

is_toetsing = 0;

toets_looptyd = 0;

is_sek = 0;

periode1 = 0;

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

}

Die hoofprogram van die intelligente T5L-skerm wat met die beheerbord in wisselwerking tree om die funksie van die opsporing van sementsamestelling te besef, is soos volg:

nietig btn_click_handler()

{

#definieer BTN_VAL_ADDR 0x1000

u16 btn_val;

if(is_toets&&is_sek)

{

is_sek = 0;

toets_looptyd++;

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

commbuff[btn_val+1] = 0;

sys_write_vp(TEST_TIME_VP,commbuff,5);

if(uart2rxsta&UART2_PACKET_OK)

{

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

{

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

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

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

}anders as(uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

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

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

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

}anders as(uart2buf[0]==0x03&&uart2buf[1]==0x07)

{

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

disp_val += (spoed_val*2.45f);

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

}anders as(uart2buf[0]==0x04)

{

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

}anders as(uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2];

}

uart2rxsta = 0;

}

}

as(is_periode1)

{

is_periode1 = 0;

t_voorbeeld();

if(is_toets&&is_en_tmp)

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

}

if(is_btn_scan==0)

terugkeer;

is_btn_scan = 0;

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

if(btn_val==0)

terugkeer;

if(btn_val<=0x10)

start_win_btn_click_handler(btn_val);

 

btn_val = 0;

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

}

 

Verwys na die bronkode vir meer.


Postyd: Des-02-2023