[問題]arduino 使用struct包裝兩個數值回傳

看板C_and_CPP作者 (small swine)時間7年前 (2016/08/28 02:06), 7年前編輯推噓1(108)
留言9則, 4人參與, 最新討論串1/1
抱歉新手我想請問一下 我使用DHT11溫溼度感測器 想寫作副程式讀取資料在主程式顯示 由於return無法回傳溫度.濕度兩個數值 所以我想用 struct 包裝起來回傳 以下是我目前寫出的副程式碼 接下來可以怎麼撰寫 再麻煩了 謝謝 #include <dht11.h> #define dht_dpin 7 dht11 DHT; //環境溫濕度 int DHTt() { DHT.read(dht_dpin); struct data { int humidity; int temperature; }; struct data dht = {DHT.humidity,DHT.temperature}; tetrun dht; } 以下是網頁板程式碼 ----------------------------------------------- http://ideone.com/LhM3J6 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.120.130 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1472321170.A.52B.html

08/28 09:33, , 1F
先用C或CPP跑,再移植過去比較好測試,資料也好找
08/28 09:33, 1F

08/28 09:37, , 2F
結構定義通常定在全域,你這樣定裡面外面找不到吧
08/28 09:37, 2F

08/28 09:38, , 3F
arduino的話,新手建議你連宣告都放全域了,省副程式
08/28 09:38, 3F

08/28 09:38, , 4F
傳遞的事也好操作
08/28 09:38, 4F
瞭解了 謝謝您 我在修改一下

08/28 10:20, , 5F
你副程式宣告int,卻要他傳一個struct回去,沒問題嗎?
08/28 10:20, 5F
ㄜ……也是 我在修改一下 謝謝您 ※ 編輯: smallswine (61.230.120.130), 08/28/2016 14:01:59

08/28 14:52, , 6F
為何不直接傳入 struct?
08/28 14:52, 6F

08/28 15:32, , 7F
https://goo.gl/OfDuUe 直接定在全域做
08/28 15:32, 7F

08/28 15:42, , 8F
08/28 15:42, 8F

08/28 20:59, , 9F
int有32bit吧,可以分成16bit兩個啊
08/28 20:59, 9F
文章代碼(AID): #1NmTQIKh (C_and_CPP)