|
@ -370,6 +370,7 @@ void L3_weight_ONdebug(u8 filter)//// ON listen function |
|
|
L4_weight_out(); |
|
|
L4_weight_out(); |
|
|
D_LED1_REV(); |
|
|
D_LED1_REV(); |
|
|
break; |
|
|
break; |
|
|
|
|
|
|
|
|
case 0x20: |
|
|
case 0x20: |
|
|
///// 校准
|
|
|
///// 校准
|
|
|
////选择一个砝码,发送0x12指令,然后读取的数据 和砝码的重量使用 20 21 22参数来
|
|
|
////选择一个砝码,发送0x12指令,然后读取的数据 和砝码的重量使用 20 21 22参数来
|
|
@ -384,26 +385,38 @@ void L3_weight_ONdebug(u8 filter)//// ON listen function |
|
|
/// Fe 01 00 00 c8 02 00 35 20kg 放置20kg 然后输入
|
|
|
/// Fe 01 00 00 c8 02 00 35 20kg 放置20kg 然后输入
|
|
|
/// Fe 02 00 01 d6 03 00 35 47kg 10个3kg砝码实际是27kg+20kg
|
|
|
/// Fe 02 00 01 d6 03 00 35 47kg 10个3kg砝码实际是27kg+20kg
|
|
|
////如果需要上位机设置 需要在上位机的串口 加上D4 D代表chuandi
|
|
|
////如果需要上位机设置 需要在上位机的串口 加上D4 D代表chuandi
|
|
|
if(pd->R1 < 3) |
|
|
|
|
|
|
|
|
//AA 02 20 00 03 pIndex kgx10_0 kgx10_1 ocr 对pIndex(0/1/2)点进行校准,校准值为kgx10
|
|
|
|
|
|
if(pd485->buf[0] < 3) |
|
|
{ |
|
|
{ |
|
|
ts_weight_SPara.ts_WPoint[pd->R1].kg = D_2uc_u16(pd->R3,pd->R4); |
|
|
ts_weight_SPara.ts_WPoint[pd485->buf[0]].kg = D_2uc_u16(pd485->buf[1],pd485->buf[2]); |
|
|
ts_weight_SPara.ts_WPoint[pd->R1].adc = tst_weight.adc32;////使用当前采样值
|
|
|
ts_weight_SPara.ts_WPoint[pd485->buf[0]].adc = tst_weight.adc32;////使用当前采样值
|
|
|
|
|
|
|
|
|
printf5("\r\nset %d: %4x(%6d) %4x(%6d)\r\n",(int)pd->R1, |
|
|
// printf5("\r\nset %d: %4x(%6d) %4x(%6d)\r\n",(int)pd->R1,
|
|
|
ts_weight_SPara.ts_WPoint[pd->R1].kg,ts_weight_SPara.ts_WPoint[pd->R1].kg, |
|
|
// ts_weight_SPara.ts_WPoint[pd->R1].kg,ts_weight_SPara.ts_WPoint[pd->R1].kg,
|
|
|
ts_weight_SPara.ts_WPoint[pd->R1].adc,ts_weight_SPara.ts_WPoint[pd->R1].adc); |
|
|
// ts_weight_SPara.ts_WPoint[pd->R1].adc,ts_weight_SPara.ts_WPoint[pd->R1].adc);
|
|
|
} |
|
|
D_LED1_REV(); |
|
|
|
|
|
L4_WPoint_out(); |
|
|
|
|
|
D_LED1_REV(); |
|
|
|
|
|
|
|
|
|
|
|
//写入IAP
|
|
|
L3_R_2_S(); |
|
|
L3_R_2_S(); |
|
|
L0_Iap_Program_array(D_EEP_BASE,D_struct2U8(S),D_S_LEN); |
|
|
L0_Iap_Program_array(D_EEP_BASE,D_struct2U8(S),D_S_LEN); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
|
|
|
|
|
|
case 0x30: |
|
|
case 0x30: |
|
|
/// 清零指令 把当前的重量值作为0点; 可以在pad上配置参数
|
|
|
/// 清零指令 把当前的重量值作为0点; 可以在pad上配置参数
|
|
|
////Fe 223344556677 21
|
|
|
////Fe 223344556677 21
|
|
|
L4_weight_print(); |
|
|
//L4_weight_print();
|
|
|
tst_weight.kgx10_zero = tst_weight.kgx10; |
|
|
tst_weight.kgx10_zero = tst_weight.kgx10; |
|
|
printf2("\r\n kgx10_zero= %4x(%4d)",tst_weight.kgx10_zero,tst_weight.kgx10_zero); |
|
|
//printf2("\r\n kgx10_zero= %4x(%4d)",tst_weight.kgx10_zero,tst_weight.kgx10_zero);
|
|
|
|
|
|
|
|
|
|
|
|
D_LED1_REV(); |
|
|
|
|
|
L4_kgx10zero_out(); |
|
|
|
|
|
D_LED1_REV(); |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
|
|
|
|
|
|
case 0x40: |
|
|
case 0x40: |
|
@ -457,10 +470,11 @@ void L4_weight_print(void) |
|
|
printf2("out (%d)%4x\r\n", tst_weight.kgx10_out,tst_weight.kgx10_out); |
|
|
printf2("out (%d)%4x\r\n", tst_weight.kgx10_out,tst_weight.kgx10_out); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
TS_weight_out_ ts_weight_out; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if 0 |
|
|
#if 0 |
|
|
|
|
|
TS_weight_out_ ts_weight_out; |
|
|
void L4_weight_out(void) |
|
|
void L4_weight_out(void) |
|
|
{ |
|
|
{ |
|
|
ts_weight_out.fx = 0x55; |
|
|
ts_weight_out.fx = 0x55; |
|
@ -485,9 +499,10 @@ void L4_weight_out(void) |
|
|
|
|
|
|
|
|
#else |
|
|
#else |
|
|
|
|
|
|
|
|
|
|
|
TS_weight_out_ ts_weight_out; |
|
|
void L4_weight_out(void) |
|
|
void L4_weight_out(void) |
|
|
{ |
|
|
{ |
|
|
U8 dnum = 12,total = 18; |
|
|
U8 dnum = 12, total = 18; |
|
|
ts_weight_out.filter = 0xAA; |
|
|
ts_weight_out.filter = 0xAA; |
|
|
ts_weight_out.slaveId = 0x02; |
|
|
ts_weight_out.slaveId = 0x02; |
|
|
ts_weight_out.cmd = 0x10; |
|
|
ts_weight_out.cmd = 0x10; |
|
@ -503,6 +518,36 @@ void L4_weight_out(void) |
|
|
L1_uartD_Array((u8 *)&ts_weight_out,total); |
|
|
L1_uartD_Array((u8 *)&ts_weight_out,total); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
TS_WPoint_out_ ts_wpoint_out; |
|
|
|
|
|
void L4_WPoint_out(void) |
|
|
|
|
|
{ |
|
|
|
|
|
U8 dnum = 12, total = 18; |
|
|
|
|
|
ts_wpoint_out.filter = 0xAA; |
|
|
|
|
|
ts_wpoint_out.slaveId = 0x02; |
|
|
|
|
|
ts_wpoint_out.cmd = 0x20; |
|
|
|
|
|
ts_wpoint_out.num[0] = (dnum >> 8) & 0xFF; |
|
|
|
|
|
ts_wpoint_out.num[1] = dnum & 0xFF; |
|
|
|
|
|
Lc_buf_from_const_uc(ts_wpoint_out.wpoint, S.weight_SPara.ts_WPoint , sizeof(S.weight_SPara.ts_WPoint)); |
|
|
|
|
|
ts_wpoint_out.ocr =0x33; |
|
|
|
|
|
L1_uartD_Array((u8 *)&ts_wpoint_out,total); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TS_Kgx10zero_out_ ts_kgx10zero_out; |
|
|
|
|
|
void L4_kgx10zero_out(void) |
|
|
|
|
|
{ |
|
|
|
|
|
U8 dnum = 2, total = 8; |
|
|
|
|
|
ts_kgx10zero_out.filter = 0xAA; |
|
|
|
|
|
ts_kgx10zero_out.slaveId = 0x02; |
|
|
|
|
|
ts_kgx10zero_out.cmd = 0x30; |
|
|
|
|
|
ts_kgx10zero_out.num[0] = (dnum >> 8) & 0xFF; |
|
|
|
|
|
ts_kgx10zero_out.num[1] = dnum & 0xFF; |
|
|
|
|
|
ts_kgx10zero_out.kgx10zero[0] = tst_weight.kgx10_zero >> 8 & 0xFF; |
|
|
|
|
|
ts_kgx10zero_out.kgx10zero[1] = tst_weight.kgx10_zero >> 0 & 0xFF; |
|
|
|
|
|
ts_kgx10zero_out.ocr =0x33; |
|
|
|
|
|
L1_uartD_Array((u8 *)&ts_kgx10zero_out,total); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
#endif |
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|