我正在嘗試處理來自傳感器的數據,並同時將數據上傳到服務器(Thingspeak)。如何將測量結果發送到服務器並同時接收來自傳感器的數據?
問題是,無論何時服務器連接(使用wifi)結束(並且我找不到延長我的會話以防止超時的方式),重新連接需要時間,在此期間,我無法處理數據傳感器,導致我的數據偶爾出現漏洞。
我聽說有一種方法可以解決這個問題,通過使用回調函數,讓核心在每次嘗試連接服務器時都等待來自服務器的響應,同時處理數據,從傳感器中獲得。
我的代碼現在的問題是這樣的
loop
{
while(now==prev)
{
processdata;
}
prev=now;
count++;
if(count==15)
{
count=0;
senddata();
}
}
senddata()
{
if(!serverconnected)
{
if(!send connect request()) error message; //after this function calls,
if(!receive connection confirmed()) error message; //takes too long time until this function finishes executing.
}
send data.
}
實際函數名的註釋部分是從
client.connect(host, port)
client,verify(fingerprint, host)
功能WiFiClientSecure.h
有什麼辦法使用回調方法來解決這個問題? 在尋找解決方案,我發現下面的頭文件
裏面好像有,我可以使用回調函數......但我不知道這是否是使用以建立WiFi連接的不同方法服務器,以及如何使用這些功能本身。
考慮嘗試下面的答案嗎? – cagdas