[עפֿן מקור] צעמענט מולטי-סכום מעאַסורינג ינסטרומענט

——פֿון DWIN דעוועלאָפּער פאָרום

די אַוואָרד-ווינינג עפֿענען מקור פאַל רעקאַמענדיד דורך די DWIN פאָרום קענען זיין געוויינט אין די קאַנסטראַקשאַן אינדוסטריע צו דעטעקט צעמענט קאָמפּאָנענט אינהאַלט - אַ צעמענט מאַלטי-סכום מעסטן ינסטרומענט באזירט אויף T5L קלוג פאַרשטעלן.ענדזשאַנירז נוצן די T5L סמאַרט פאַרשטעלן צו קאָנטראָלירן די עלעקטראָניש וואָג דיטעקשאַן מאָדולע, טעמפּעראַטור מעזשערמאַנט מאָדולע, באַהיצונג מאָדולע, נעץ סענסער און מיקסינג מאָדולע צו פאַרשטיין די דיטעקשאַן פונקציע פון ​​האַרט לייזונג און פליסיק צעמענט קאָמפּאָנענט אינהאַלט, און שטיצן פאַקטיש-צייט ווייַז פון קורס, טעמפּעראַטור באַשטעטיקן, געשיכטע רעקאָרד, סטאַגע פּאַראַמעטער באַשטעטיקן און אנדערע פאַנגקשאַנז.

1. פּראָגראַם סטרוקטור

acdsb (1)

2.וי מאַטעריאַל ווייַז

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

3.וי אַנטוויקלונג בייַשפּיל

acdsb (6)

4.C51 ווייכווארג פּלאַן

די יניטיאַליזאַטיאָן באַפֿעלן פּראָגראַם פֿאַר ינזשעניר צו יבערגעבן מיט די קאָנטראָל ברעט ניצן די T5L סיריאַל פּאָרט 2 איז ווי גייט:

void app_init()

{

איז_טעסטינג = 0;

test_run_time = 0;

איז_סעק = 0;

פּעריאָד1 = 0;

איז_פּעריאָד1 = 0;

uart2_init (115200);

send_bytes("AT+INIT=0\r\n",sizeof("AT+INIT=0\r\n")-1);

sys_delay_ms (2500);

סיס_פּיק (קסנומקס);

send_bytes("AT+START\r\n",sizeof("AT+START\r\n")-1);

}

די הויפּט פּראָגראַם פון די T5L ינטעליגענט פאַרשטעלן ינטעראַקטינג מיט די קאָנטראָל ברעט צו פאַרשטיין די פאַנגקשאַנז פון צעמענט זאַץ דיטעקשאַן איז ווי גייט:

void btn_click_handler()

{

# דעפינירן BTN_VAL_ADDR 0x1000

u16 btn_val;

אויב (איז_טעסטינג &&איז_סעק)

{

איז_סעק = 0;

test_run_time++;

בטנ_וואַל = ספּרינטף (קאָמבוף,"% 02ו:% 02ו", (ו16) (טעסט_רון_טיים / 60), (ו16) (טעסט_רון_טיים% 60));

קאָממבאַף[בטנ_וואַל+1] = 0;

sys_write_vp(TEST_TIME_VP,commbuff,5);

אויב (uart2rxsta&UART2_PACKET_OK)

{

אויב (uart2buf[0]==0x01&&uart2buf[1]==0x02)

{

init_weight = * (פלאָוט *) (ואַרט2בוף + קסנומקס);

init_weight *= (*(פלאָוט*) פלאַשדאַט);

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

} else if (uart2buf[0]==0x02&&uart2buf[1]==0x05)

{

יניט_מל = * (פלאָוט *) (ואַרט2בוף + קסנומקס);

init_ml /= (*(פלאָוט*) פלאַשדאַט+20);

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

} else if (uart2buf[0]==0x03&&uart2buf[1]==0x07)

{

ספּיד_וואַל = * (פלאָוט *) (ואַרט2בוף + קסנומקס);

דיספּ_וואַל += (ספּעד_וואַל * 2.45ף);

sys_write_vp (0x1180, (u8 *) & דיספּ_וואַל, 2);

} אַנדערש אויב (uart2buf[0]==0x04)

{

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

} אַנדערש אויב (uart2buf[0]==0x05)

{

is_en_tmp = uart2buf[2];

}

ואַרט2רקסטאַ = 0;

}

}

אויב (איז_פּעריאָד1)

{

איז_פּעריאָד1 = 0;

ט_סאַמפּלע ();

אויב (איז_טעסטינג &&איז_ען_טמפּ)

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

}

אויב (איז_בטנ_סקאַן==0)

צוריקקומען;

איז_בטן_סקאַן = 0;

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

אויב (בטנ_וואַל==0)

צוריקקומען;

אויב (בטנ_וואַל <=0x10)

start_win_btn_click_handler (btn_val);

 

בטנ_וואַל = 0;

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

}

 

אָפּשיקן צו די מקור קאָד פֿאַר מער.


פּאָסטן צייט: דעצעמבער 02-2023