導航:首頁 > 操作系統 > 單片機串口發送數據突然很慢

單片機串口發送數據突然很慢

發布時間:2025-01-02 01:02:07

單片機通過串口向PC不間斷發送變化的數據,PC接收總是延遲

這個問題很常見了,解決方法:
如果你能更改上位機軟體,將上位機軟體接收數據那塊改為"一旦接收緩沖區有數據,立刻讀出來顯示".
如果你沒辦法更改上位機軟體,那麼你可以間隔發送,比如兩包數據間隔為0.5S,或者找一款可以實時顯示的調試助手,推薦使用ttermpro測試下

⑵ 單片機串口發送數據不及時怎麼處理

不是很明白你要實現的功能。
你的中斷函數里寫的是如果接收到串口信息時,就將標志位置1,同時獲取此時P1口的按鍵狀態。
然後主程序檢測到標志位被置1,就將剛剛獲取的P1口按鍵狀態發回給上位機是這樣嗎?
不用說了,肯定是這樣。
我說說你程序的問題吧,首先你的P1口到底接了些什麼外圍電路我不知道,如果是按鍵,還分哪類按鍵呢,比如拔動開關,或者是普通按鍵。如果是拔動開關的話,那麽這個程序也沒多大問題。因為拔動開關是可以讓你的按鍵電平鎖定在高電平或低電平的,但如果是普通按鍵的話,那麽你的程序就很大問題了。
首先要產生RX信號,讓程序進入中斷,同時你的按鍵要按下。兩步要同時。所以導致你要不斷地按,狂按。
其實如果你的單片機不接收上位機傳來的串口信號,可以直接去掉中斷的。
while(1)
{
if(P1!=0XFF) // 證明有按鍵按下
{
pd1=P1; //將值取出。
while(P1!=0xff) ; //直到鬆手。

SBUF=pd1; //SUBF接受/發送緩沖器
P2=pd1;
//delay(); 這句delay沒多大意義。
while(TI==0);
TI=0;
Flag=0;
}

}
也可能是我誤解了你的意思,有什麼問題歡迎一起探討,希望我的回答對你有幫助。

⑶ 單片機串口通信,發送數據感覺不對,請大佬幫看看

你的主循環轉得太快,前一個數據還沒發送完就把SBUF又填充新數值,這樣很容易破壞發送的幀。
既然你不開中斷,就應當採用查詢工作方式,查詢TI標志位確認發送完成之後再進行下一步工作。

⑷ 51單片機 開啟串口TI後時鍾變慢

第一:這種情況只有在開串口中斷才會出現,你的程序中有IE=0x90;的語句嗎?
第二:開啟串口發送,是向SBUF中送數,如SBUF=0x8AH;但不能人為地TI=1,這樣做是錯誤的,當串口發送一個位元組後會自動置TI=1的,表示已發送完一個位元組,這樣,要由軟體清TI=0,再發送下一個位元組。
第三,人為地置TI=1,就會出現在沒有發送數據的情況下也會產生中斷,如果還沒有串口中斷子函數,也沒有清TI=0的語句,就會不停地中斷,當然就會影響執行延時子函數,那延時的時間肯定要長了。

⑸ stc8h單片機串口通訊數據不發送

stc8h單片機串口通訊數據不發送如果都配置檢測沒什麼問題,能夠正常的發送數據但是不能夠接收數據的話就要考慮是不是IO沒有配置好。將指指基RX的埠配置成設置I/O口為准雙向口模式,唯謹再次逗好進行嘗試。

閱讀全文

與單片機串口發送數據突然很慢相關的資料

熱點內容
win7怎麼安裝編程 瀏覽:241
安卓光遇怎麼轉ios服 瀏覽:400
android展示文本 瀏覽:210
比特幣命令 瀏覽:956
pythonweb開發實戰常式 瀏覽:316
android圖片自動裁剪圖片 瀏覽:906
程序員閃退怎麼解決 瀏覽:526
看小視頻APP什麼秀 瀏覽:163
linuxping源地址 瀏覽:738
編程語言的優點與缺點 瀏覽:980
台灣歷史pdf 瀏覽:826
貸款簡訊提醒源碼 瀏覽:114
喬家的兒女在什麼app播 瀏覽:340
javalicense實現 瀏覽:376
mysql創建資料庫命令 瀏覽:990
紅色的魚是什麼app 瀏覽:685
程序員的生涯經歷 瀏覽:437
納粹命令 瀏覽:590
什麼講鬼故事app 瀏覽:969
程序員級升 瀏覽:89