找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3316|回復(fù): 17
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)為什么不能同時(shí)檢測(cè)多個(gè)傳感器

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1065536 發(fā)表于 2023-9-13 17:07 來自手機(jī) | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
利用51單片機(jī)連接溫度傳感器,煙霧傳感器,人體紅外傳感器,利用GSM模塊發(fā)短信,當(dāng)系統(tǒng)執(zhí)行到某一個(gè)傳感器時(shí),就會(huì)去發(fā)短信,但是發(fā)短信用的時(shí)間有點(diǎn)久,程序就會(huì)卡在這里不能干其他事,有什么方法可以解決嗎?想要這種效果我檢測(cè)到了煙霧在發(fā)短信的同時(shí),也可以繼續(xù)檢測(cè)其他兩個(gè)傳感器的情況?希望大佬指點(diǎn)一下,小白一個(gè)。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:883242 發(fā)表于 2023-9-13 19:22 | 只看該作者
其實(shí)還有個(gè)更嚴(yán)重的問題,你檢測(cè)一個(gè)傳感器就發(fā)一條,你的錢包受得了嗎?
回復(fù)

使用道具 舉報(bào)

板凳
ID:771630 發(fā)表于 2023-9-13 19:49 | 只看該作者
依靠串口中斷和輪詢的方式進(jìn)行GSM的處理,或者使用合宙系列的GSM Cat.1模塊編寫luat代碼,單片機(jī)只需要發(fā)送短信內(nèi)容,剩下的GSM模塊自己處理
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2023-9-13 20:11 | 只看該作者
時(shí)間片輪詢
回復(fù)

使用道具 舉報(bào)

5#
ID:1065536 發(fā)表于 2023-9-14 08:34 來自手機(jī) | 只看該作者
XLinliY.Zhang 發(fā)表于 2023-9-13 19:49
依靠串口中斷和輪詢的方式進(jìn)行GSM的處理,或者使用合宙系列的GSM Cat.1模塊編寫luat代碼,單片機(jī)只需要發(fā)送 ...

謝謝,我用了SIN900A這個(gè)模塊
回復(fù)

使用道具 舉報(bào)

6#
ID:1065536 發(fā)表于 2023-9-14 08:35 來自手機(jī) | 只看該作者
wulin 發(fā)表于 2023-9-13 20:11
時(shí)間片輪詢

感謝大佬指點(diǎn)
回復(fù)

使用道具 舉報(bào)

7#
ID:1034262 發(fā)表于 2023-9-14 16:05 | 只看該作者
這些都是簡(jiǎn)單任務(wù),為什么不能?那是你的編程思想的問題,沒有多任務(wù)概念(多線程、時(shí)間片等等)。
你上一個(gè)RTOS看看。
回復(fù)

使用道具 舉報(bào)

8#
ID:47541 發(fā)表于 2023-9-14 16:46 | 只看該作者
本身單片機(jī)執(zhí)行程序也是一個(gè)一個(gè)來的,只不過太快你感覺不到而已
回復(fù)

使用道具 舉報(bào)

9#
ID:690831 發(fā)表于 2023-9-14 20:12 | 只看該作者
用兩個(gè)芯片,一個(gè)負(fù)責(zé)檢測(cè),一個(gè)負(fù)責(zé)發(fā)送,芯片間用串口通訊
回復(fù)

使用道具 舉報(bào)

10#
ID:584814 發(fā)表于 2023-9-15 08:16 | 只看該作者
51單片機(jī)為什么不能同時(shí)檢測(cè)多個(gè)傳感器 ?因?yàn)樵荚O(shè)計(jì)就沒這個(gè)能力。
但,單片機(jī)輪流檢測(cè)10個(gè)傳感器,可能也只需10微秒。
也許對(duì)你來說,1微秒也不是實(shí)時(shí),實(shí)時(shí)就是要同步,但就傳感器件本身來說就呵呵
回復(fù)

使用道具 舉報(bào)

11#
ID:101869 發(fā)表于 2023-9-15 08:43 | 只看該作者
首先有點(diǎn)久這個(gè)是什么概念  1秒還是100秒  任何單片機(jī)都是一行一行執(zhí)行代碼 做不到真正意義的實(shí)時(shí),不知道你對(duì)時(shí)間有多高要求,看你這項(xiàng)目也就是個(gè)家用安防報(bào)警  這點(diǎn)任務(wù)1秒內(nèi)肯定都能完成啊
回復(fù)

使用道具 舉報(bào)

12#
ID:1083996 發(fā)表于 2023-9-16 08:55 | 只看該作者
有的單片機(jī)能雙工模式的
回復(fù)

使用道具 舉報(bào)

13#
ID:206581 發(fā)表于 2023-9-16 20:53 | 只看該作者
可以的,采用多線程
回復(fù)

使用道具 舉報(bào)

14#
ID:1083996 發(fā)表于 2023-9-20 18:11 | 只看該作者
可以的啊,弄過16路巡檢的,沒發(fā)現(xiàn)異常啊
回復(fù)

使用道具 舉報(bào)

15#
ID:155507 發(fā)表于 2023-9-20 18:54 | 只看該作者
小白菜c 發(fā)表于 2023-9-14 08:34
謝謝,我用了SIN900A這個(gè)模塊


你可以試試這一個(gè)使用定時(shí)器節(jié)拍進(jìn)行任務(wù)調(diào)度例程。


53-通過定時(shí)器周期性調(diào)度任務(wù)綜合例程.zip
這一個(gè)例程基于STC8H為主控芯片的實(shí)驗(yàn)箱進(jìn)行編寫測(cè)試。
使用Timer0的16位自動(dòng)重裝來產(chǎn)生1ms節(jié)拍,程序使用這個(gè)節(jié)拍進(jìn)行任務(wù)調(diào)度.
每個(gè)任務(wù)設(shè)置相應(yīng)的調(diào)度周期,根據(jù)設(shè)置的周期時(shí)間執(zhí)行任務(wù)函數(shù).
下載時(shí), 選擇時(shí)鐘 24MHz (可以在配置文件"config.h"中修改).


STC8H8K64U實(shí)驗(yàn)箱-V9.6程序包 2023/8/16,STC8H新實(shí)驗(yàn)箱程序


53-通過定時(shí)器周期性調(diào)度任務(wù)綜合例程.zip

42.78 KB, 下載次數(shù): 1

53-通過定時(shí)器周期性調(diào)度任務(wù)綜合例程.zip

回復(fù)

使用道具 舉報(bào)

16#
ID:468209 發(fā)表于 2023-9-20 19:29 來自手機(jī) | 只看該作者
讓每個(gè)傳感器檢測(cè)完成后先分別保存在一個(gè)變量里 等全部檢測(cè)確認(rèn)完成標(biāo)志后再打包所數(shù)據(jù)發(fā)送
回復(fù)

使用道具 舉報(bào)

17#
ID:879348 發(fā)表于 2023-9-21 08:32 | 只看該作者
rtos系統(tǒng)就是干這個(gè)的,51有些迷你的系統(tǒng)可以用
回復(fù)

使用道具 舉報(bào)

18#
ID:811253 發(fā)表于 2023-9-21 23:21 | 只看該作者
分時(shí)復(fù)用,把每個(gè)任務(wù)分開時(shí)間片來執(zhí)行即可。再把所有傳感器要發(fā)送的信息匯總成一個(gè)消息隊(duì)列,這樣依次一個(gè)個(gè)利用GSM模塊發(fā)出去。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表