[ମୁକ୍ତ ଉତ୍ସ] ସିମେଣ୍ଟ ବହୁ-ପରିମାଣର ମାପ ଉପକରଣ |

—— DWIN ଡେଭଲପର୍ ଫୋରମ୍ ରୁ |

DWIN ଫୋରମ୍ ଦ୍ୱାରା ସୁପାରିଶ କରାଯାଇଥିବା ପୁରସ୍କାର ବିଜେତା ମୁକ୍ତ ଉତ୍ସ କେସ୍ ନିର୍ମାଣ ଶିଳ୍ପରେ ସିମେଣ୍ଟ ଉପାଦାନ ବିଷୟବସ୍ତୁ ଚିହ୍ନଟ କରିବାକୁ ବ୍ୟବହାର କରାଯାଇପାରିବ - T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ ଉପରେ ଆଧାରିତ ଏକ ସିମେଣ୍ଟ ମଲ୍ଟି-ମାପ ମାପ ଉପକରଣ |ଇଲେକ୍ଟ୍ରୋନିକ୍ ଓଜନ ଚିହ୍ନଟ ମଡ୍ୟୁଲ୍, ତାପମାତ୍ରା ମାପ ମଡ୍ୟୁଲ୍, ଗରମ ମଡ୍ୟୁଲ୍, ଆର୍ଦ୍ରତା ସେନ୍ସର, ଏବଂ ମିଶ୍ରଣ ମଡ୍ୟୁଲ୍ ନିୟନ୍ତ୍ରଣ କରିବା ପାଇଁ ଇଞ୍ଜିନିୟର୍ମାନେ T5L ସ୍ମାର୍ଟ ସ୍କ୍ରିନ୍ ବ୍ୟବହାର କରନ୍ତି, ଏବଂ କଠିନ ସମାଧାନ ଏବଂ ତରଳ ସିମେଣ୍ଟ ଉପାଦାନ ବିଷୟବସ୍ତୁର ଚିହ୍ନଟ କାର୍ଯ୍ୟକୁ ହୃଦୟଙ୍ଗମ କରିବା ପାଇଁ ଏବଂ ପ୍ରକୃତ ସମୟର ପ୍ରଦର୍ଶନକୁ ସମର୍ଥନ କରିବା ପାଇଁ, ତାପମାତ୍ରା ସେଟିଂ, ଇତିହାସ ରେକର୍ଡ, ପର୍ଯ୍ୟାୟ ପାରାମିଟର ସେଟିଂ ଏବଂ ଅନ୍ୟାନ୍ୟ କାର୍ଯ୍ୟଗୁଡ଼ିକ |

1. ପ୍ରୋଗ୍ରାମ୍ ଗଠନ

acdsb (1)

2.UI ସାମଗ୍ରୀ ପ୍ରଦର୍ଶନ |

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

3.UI ବିକାଶ ଉଦାହରଣ |

acdsb (6)

4.C51 ସଫ୍ଟୱେର୍ ଡିଜାଇନ୍ |

ଇଞ୍ଜିନିୟର୍ ପାଇଁ T5L କ୍ରମିକ ପୋର୍ଟ 2 ବ୍ୟବହାର କରି କଣ୍ଟ୍ରୋଲ୍ ବୋର୍ଡ ସହିତ ଯୋଗାଯୋଗ କରିବାକୁ ପ୍ରାରମ୍ଭିକ ନିର୍ଦ୍ଦେଶ ନିର୍ଦ୍ଦେଶ ନିମ୍ନଲିଖିତ ଅଟେ:

ଶୂନ୍ୟ app_init ()

{

is_testing = 0;

test_run_time = 0;

is_sec = 0;

ଅବଧି 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", sizeof ("AT + START \ r \ n") - 1);

}

ସିମେଣ୍ଟ ରଚନା ଚିହ୍ନଟ କାର୍ଯ୍ୟକୁ ବୁ realize ିବା ପାଇଁ କଣ୍ଟ୍ରୋଲ ବୋର୍ଡ ସହିତ ଯୋଗାଯୋଗ କରୁଥିବା T5L ବୁଦ୍ଧିମାନ ସ୍କ୍ରିନର ମୁଖ୍ୟ କାର୍ଯ୍ୟକ୍ରମ ହେଉଛି:

ଶୂନ୍ୟ btn_click_handler ()

{

# BTN_VAL_ADDR 0x1000 କୁ ବ୍ୟାଖ୍ୟା କରନ୍ତୁ |

u16 btn_val;

ଯଦି (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));

commbuff [btn_val + 1] = 0;

sys_write_vp (TEST_TIME_VP, commbuff, 5);

ଯଦି (uart2rxsta & UART2_PACKET_OK)

{

ଯଦି (uart2buf [0] == 0x01 && uart2buf [1] == 0x02)

{

init_weight = * (ଫ୍ଲୋଟ୍ *) (uart2buf + 2);

init_weight * = (* (ଫ୍ଲୋଟ୍ *) ଫ୍ଲାସଡାଟ୍);

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

} ଅନ୍ୟଥା ଯଦି (uart2buf [0] == 0x02 && uart2buf [1] == 0x05)

{

init_ml = * (ଭାସମାନ *) (uart2buf + 2);

init_ml / = (* (ଭାସମାନ *) ଫ୍ଲାସଡାଟ୍ + 20);

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

} ଅନ୍ୟଥା ଯଦି (uart2buf [0] == 0x03 && uart2buf [1] == 0x07)

{

ସ୍ପିଡ୍_ଭାଲ୍ = * (ଭାସମାନ *) (uart2buf + 2);

disp_val + = (ସ୍ପିଡ୍_ଭାଲ୍ * 2.45 ଫ);

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

} ଅନ୍ୟଥା ଯଦି (uart2buf [0] == 0x04)

{

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

} ଅନ୍ୟଥା ଯଦି (uart2buf [0] == 0x05)

{

is_en_tmp = uart2buf [2];

}

uart2rxsta = 0;

}

}

ଯଦି (is_period1)

{

is_period1 = 0;

t_sample ();

ଯଦି (is_testing && is_en_tmp)

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

}

ଯଦି (is_btn_scan == 0)

ଫେରସ୍ତ;

is_btn_scan = 0;

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

ଯଦି (btn_val == 0)

ଫେରସ୍ତ;

ଯଦି (btn_val <= 0x10)

start_win_btn_click_handler (btn_val);

 

btn_val = 0;

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

}

 

ଅଧିକ ପାଇଁ ଉତ୍ସ କୋଡ୍ କୁ ଅନୁସରଣ କରନ୍ତୁ |


ପୋଷ୍ଟ ସମୟ: ଡିସେମ୍ବର -02-2023 |