使用BT3L开发智能浇花控制器,定时显示面板问题,我上传的都是0,但会显示灌溉时间4小时16分,刚好一个字节,这个是怎么回事啊?
图片在附件
代码如下:
Code: Select all
static void user_send_common_timing_table(uint8_t versions)
{
u8 i, j;
u8 *send_data = NULL;
u8 send_len=0;
send_data = (uint8_t*)tuya_ble_malloc(140);
if(send_data==NULL){
TUYA_BLE_LOG_ERROR("uart_data_buffer malloc failed.");
return;
}
send_data[send_len++] = versions;
for(i=0; i<TIMING_NUM; i++){
if(user.common_table[i].common_begin_time != 0xffff){
#if 0
send_data[send_len++] = user.common_table[i]._sn;
send_data[send_len++] = user.common_table[i].common_begin_time>>8;
send_data[send_len++] = user.common_table[i].common_begin_time;
send_data[send_len++] = user.common_table[i].watering_time>>8;
send_data[send_len++] = user.common_table[i].watering_time;
send_data[send_len++] = user.common_table[i].periods;
send_data[send_len++] = user.common_table[i].percent;
send_data[send_len++] = user.common_table[i]._switch;
for(j=0; j<5; j++){
send_data[send_len++] = user.common_table[i].loop_buf[j];
}
#else
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
send_data[send_len++] = 0;
for(j=0; j<5; j++){
send_data[send_len++] = 0;
}
#endif
}
}
TUYA_APP_LOG_INFO("========================8888==============================>");
__report_one_raw_dp_data(DP_ID_COMMON_TIMING, DT_RAW, send_len, send_data);
tuya_ble_free(send_data);
}
void __report_one_raw_dp_data(const uint8_t dp_id, const uint8_t dp_type, const uint16_t dp_len, const uint8_t *dp_data)
{
uint16_t i;
sg_repo_array[DP_DATA_INDEX_OFFSET_ID] = dp_id;
sg_repo_array[DP_DATA_INDEX_OFFSET_TYPE] = dp_type;
sg_repo_array[DP_DATA_INDEX_OFFSET_LEN_H] = (uint8_t)(dp_len >> 8);
sg_repo_array[DP_DATA_INDEX_OFFSET_LEN_L] = (uint8_t)dp_len;
for (i = 0; i < dp_len; i++) {
sg_repo_array[DP_DATA_INDEX_OFFSET_DATA + i] = dp_data[i];
}
tuya_ble_dp_data_send(sg_sn++, DP_SEND_TYPE_ACTIVE, DP_SEND_FOR_CLOUD_PANEL, DP_SEND_WITHOUT_RESPONSE, sg_repo_array, dp_len + DP_DATA_INDEX_OFFSET_DATA);
}