[اوپن سورس] سیمنٹ کثیر مقدار کی پیمائش کرنے والا آلہ

—— 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 کا استعمال کرتے ہوئے کنٹرول بورڈ کے ساتھ بات چیت کرنے کے لیے انجینئر کے لیے ابتدائی کمانڈ پروگرام درج ذیل ہے:

void 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؛

}

T5L ذہین اسکرین کا مرکزی پروگرام کنٹرول بورڈ کے ساتھ بات چیت کرتے ہوئے سیمنٹ کی ساخت کا پتہ لگانے کے کام کا احساس کرنے کے لئے مندرجہ ذیل ہے:

void btn_click_handler()

{

#BTN_VAL_ADDR 0x1000 کی وضاحت کریں۔

u16 btn_val;

if(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)

{

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

{

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

init_weight *= (*(float*)flashdat؛

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

}ورنہ اگر(uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

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

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

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

}ورنہ اگر(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)؛

}ورنہ اگر(uart2buf[0]==0x04)

{

کل_num = uart2buf[1]*256+uart2buf[2]؛

}ورنہ اگر(uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2]؛

}

uart2rxsta = 0;

}

}

if(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