0
我使用Xbee和STM32F4微控制器作爲協調器和終端設備。我期待在每次調用定時器中斷時向我的終端設備發送3個不同的RF數據包。我目前的問題是,如果我將所有3個數據包一起發送到同一終端設備,那麼我的終端設備將丟棄2個數據包並僅接收一個數據包。所以我想在不同的時間間隔內發送所有三個數據包。我發現我不能在定時器中斷回調函數中使用延遲函數。因此,任何人都可以告訴我如何設置2次發送之間的延遲,或者有任何其他方式來解決這個問題。如何在定時器中斷回調函數中使用延遲功能?
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
uint8_t temp[10] = {0};
// send query to Thermal Sensor
temp[0] = EN_TYPE_QUERY_TO_PD;
Send_To_Target(PD_SENSOR_ADDR_SL,temp,1);
***/*I want to Set Delay Here*/***
//Send Data to Thermal Sensor
temp[0] = EN_TYPE_DATA_TO_PD;
Send_To_Target(PD_SENSOR_ADDR_SL,temp,1);
***/*I want to Set Delay Here*/***
//Send command to Thermal Sensor
temp[0] = EN_TYPE_COMMAND_TO_PD;
Send_To_Target(PD_SENSOR_ADDR_SL,temp,1);
}