找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關(guān)于單片機(jī)定時器與串口中斷沖突

查看數(shù): 3698 | 評論數(shù): 6 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2021-3-24 20:47

正文摘要:

本帖最后由 Elilala 于 2021-3-25 10:00 編輯 使用PWM控制電機(jī)轉(zhuǎn)速,同時實時使用串口采集溫度。同時TR0=1,TR1=1時溫度采集出錯。將TR0=1注釋掉后正確,但是無法控制電機(jī)轉(zhuǎn)速,只能啟動。部分代碼如下:#include ...

回復(fù)

ID:390416 發(fā)表于 2021-3-25 16:14
串口的發(fā)送 不能擁擠,比如9600波特率 發(fā)一個字節(jié)需要1ms  那么 連續(xù)兩次寫入SBUF 時間間隔必須大于1040us 。 可以看看我發(fā)的貼子, 串口發(fā)送不需要while 死等。提高CPU效率。
ID:811405 發(fā)表于 2021-3-25 16:03
串口實時發(fā)送溫度值給上位機(jī),每一次發(fā)送之間沒有時間間隔,當(dāng)上位機(jī)通過串口下發(fā)指令時,串口被占用而產(chǎn)生錯誤

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

ID:306086 發(fā)表于 2021-3-25 09:28
人人學(xué)會單片機(jī) 發(fā)表于 2021-3-24 21:41
DS18B20是串口?你確定沒搞錯?

更新了一下代碼。DS18B20讀到的數(shù)據(jù)通過串口發(fā)送給上位機(jī)。
ID:306086 發(fā)表于 2021-3-24 21:47
將TMOD=0x21后能正確讀取溫度,并且可以控制風(fēng)扇轉(zhuǎn)速,可是溫度讀取會偶爾出現(xiàn)錯誤。
ID:390416 發(fā)表于 2021-3-24 21:41
DS18B20是串口?你確定沒搞錯?
ID:306086 發(fā)表于 2021-3-24 20:48
采用串口助手控制電機(jī)轉(zhuǎn)速與采集溫度。
2代表啟動,3反轉(zhuǎn),0加速,1減速,4停止,5復(fù)位。

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

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

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