欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于單片機溫度采集串口中斷的問題?

查看數: 4341 | 評論數: 11 | 收藏 2
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2018-4-8 20:47

正文摘要:

在用STC89C52單片機做一個溫度采集功能。 功能是這樣的:       1、工作頻率 11.0592       2、P2.0,P2.1,P2.2,P2.3 普通IO口分別接了四個S18B20溫度傳感器,用來采集溫 ...

回復

ID:449525 發(fā)表于 2018-12-27 17:18
樓上有人說的是對的
我今天也寫了類似代碼,你串口檢測接受。當你采集溫度的時候,把串口中斷關閉。
還有就是你的顯示,你可以先判斷下數據改變了,在去刷屏顯示。沒有必要接受到數據就是顯示,做個判斷也是對資源合理利用
ID:158375 發(fā)表于 2018-12-27 13:04
軟件結構問題。
你可以定義標志位,有發(fā)送標志,發(fā)送數據;有接收數據完成標志,處理接收數據;有屏刷新標志,刷新屏幕。。。。。。
ID:284106 發(fā)表于 2018-4-9 23:05
看到了用這個 RTX51 Tiny 可以讓51單片機實現多任務,得研究一下。這樣就可以實現收數據時,同時執(zhí)行查詢DS18B20溫度。
ID:284106 發(fā)表于 2018-4-9 19:57
wulin 發(fā)表于 2018-4-9 15:33
你如果無法協(xié)調使用時間片輪詢處理多任務管理,這通訊協(xié)議就要修改。上位機每發(fā)送一個字節(jié)需要等待下位機 ...

用兩個51單片機實現多任務,每個51單片機執(zhí)行不同的任務。
兩個單片機通信,不能用串口,因為被占用了。也不能用中斷,不然會引響時序。
用輪詢,有好的穩(wěn)定的實例嗎?
ID:213173 發(fā)表于 2018-4-9 15:33
本帖最后由 wulin 于 2018-4-9 16:50 編輯
duwen009 發(fā)表于 2018-4-9 12:46
如果使用查詢法,單片機不能一直只查詢串口有沒有數據來到。同時還要l輪詢DS18B20的溫度數據,查詢一個DS ...

你如果無法協(xié)調使用時間片輪詢處理多任務管理,這通訊協(xié)議就要修改。上位機每發(fā)送一個字節(jié)需要等待下位機應答后才能發(fā)送下一個字節(jié)。你的程序寫得很啰嗦,會占用MCU很多時間,DS18B20是單總線器件,不必開多個I/O口。串口中斷里也不要處理非必須的事務,信息保存后由主程序處理。
ID:284106 發(fā)表于 2018-4-9 12:46
wulin 發(fā)表于 2018-4-8 21:23
串口接收使用查詢法,放棄使用中斷法,這樣可以避免與其他應用程序發(fā)生沖突。

如果使用查詢法,單片機不能一直只查詢串口有沒有數據來到。同時還要l輪詢DS18B20的溫度數據,查詢一個DS18B20 時間就早己超過1毫秒,如果查詢幾個,還執(zhí)行其他的操作,如1602顯示的話,就會更長。

9600波特率下,串口收取數據,下一個字節(jié)數據接收完成前,約有1毫秒的時間,要把數據取走,不然串口就會丟棄接收的數據。這樣,在查詢其他器件時,串口還是會丟數據。

感覺查詢法似乎不行
ID:284106 發(fā)表于 2018-4-9 09:08
滄浪 發(fā)表于 2018-4-8 22:40
在進行DS18B20查詢之前把中斷給關掉不就好了嗎

中斷關了,如果這時串口有數據來到,串口數據就會丟失。
ID:111517 發(fā)表于 2018-4-8 22:40
在進行DS18B20查詢之前把中斷給關掉不就好了嗎
ID:213173 發(fā)表于 2018-4-8 21:23
串口接收使用查詢法,放棄使用中斷法,這樣可以避免與其他應用程序發(fā)生沖突。

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表