[Stòr fosgailte] Inneal tomhais ioma-suim saimeant

——Bho Fòram Luchd-leasachaidh DWIN

Faodar a’ chùis stòr fosgailte a choisinn duaisean a mhol fòram DWIN a chleachdadh anns a’ ghnìomhachas togail gus susbaint saimeant a lorg - inneal tomhais ioma-mheud saimeant stèidhichte air scrion smart T5L.Bidh innleadairean a’ cleachdadh an scrion smart T5L gus smachd a chumail air a’ mhodal lorg cuideam dealanach, modal tomhais teodhachd, modal teasachaidh, sensor taise, agus modal measgachadh gus gnìomh lorg fuasgladh cruaidh agus susbaint saimeant liùlach a thoirt gu buil, agus taic a thoirt do thaisbeanadh fìor-ùine de reata, suidheachadh teòthachd, clàr eachdraidh, suidheachadh paramadair ìre agus gnìomhan eile.

1. Structar a' Phrògraim

acdsb (1)

Taisbeanadh Stuth 2.UI

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

Eisimpleir Leasachaidh 3.UI

acdsb (6)

4.C51 dealbhadh bathar-bog

Tha am prògram àithne tòiseachaidh airson an innleadair conaltradh leis a’ bhòrd-smachd a’ cleachdadh port sreathach T5L 2 mar a leanas:

falamh app_init()

{

is_testing = 0;

test_run_time = 0;

is_sec = 0;

ùine 1 = 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", meud ("AT+START\r\n")-1);

}

Tha am prìomh phrògram den sgrion tùrail T5L ag eadar-obrachadh leis a’ bhòrd smachd gus gnìomh lorg saimeant a lorg mar a leanas:

falamh btn_click_handler()

{

#define BTN_VAL_ADDR 0x1000

u16 btn_val;

ma tha (a' dèanamh_deuchainn&&is_sec)

{

is_sec = 0;

deuchainn_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, combuff,5);

ma tha(uart2rxsta&UART2_PACKET_OK)

{

ma tha(uart2buf[0]==0x01&&uart2buf[1]==0x02)

{

init_weight = *(fleòdradh*)(uart2buf+2);

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

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

} eile ma tha(uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

init_ml = *(fleòdradh*)(uart2buf+2);

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

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

} eile ma tha(uart2buf[0]==0x03&&uart2buf[1]==0x07)

{

speed_val = *(fleòdradh*)(uart2buf+2);

disp_val + = (speed_val * 2.45f);

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

} eile ma tha(uart2buf[0]==0x04)

{

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

} eile ma tha(uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2];

}

uart2rxsta = 0;

}

}

ma tha (is_period1)

{

is_period1 = 0;

t_sample();

ma tha (a' dèanamh_deuchainn&&is_en_tmp)

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

}

ma tha(is_btn_scan===0)

tilleadh;

is_btn_scan = 0;

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

ma tha(btn_val==0)

tilleadh;

ma tha(btn_val<=0x10)

start_win_btn_click_handler(btn_val);

 

btn_val = 0;

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

}

 

Thoir sùil air a’ chòd stòr airson barrachd.


Ùine puist: Dùbhlachd-02-2023