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

標題: 請教一個關于51單片機串口發送字符串的問題 [打印本頁]

作者: yang陽    時間: 2018-9-1 22:17
標題: 請教一個關于51單片機串口發送字符串的問題
我用51發送字符串時,比如說“12a”,有時候會正確收到,可有時候會收到“2a1”等諸如此類的,不知道大家有沒有遇到過這樣的問題,難不成是程序存在漏洞?
作者: CT任你    時間: 2018-9-2 00:20
你有可能沒有限制這個字符串的長度,或者字符串后面沒有字符串結束,這樣使用51單片機發送數據的時候就會出現數據移位的問題,我之前用51和15通信的時候就出現這個問題。
作者: yang陽    時間: 2018-9-2 07:40
CT任你 發表于 2018-9-2 00:20
你有可能沒有限制這個字符串的長度,或者字符串后面沒有字符串結束,這樣使用51單片機發送數據的時候就會出 ...

可以麻煩你幫忙給個程序嗎
作者: 小貓貓愛吃魚    時間: 2018-9-2 10:22
很顯然,是你程序的問題
作者: 6744    時間: 2018-9-2 12:31
程序沒有問題的話,多半是波特率設置不對~
作者: 392177410    時間: 2018-9-2 15:40
是給另外一個單片機發送嗎,那可能另外一個單片機的接收寫的有問題,或者看一下你的字符串是怎么判斷結束的
作者: yang陽    時間: 2018-9-2 16:15
6744 發表于 2018-9-2 12:31
程序沒有問題的話,多半是波特率設置不對~

波特率沒有問題
作者: yang陽    時間: 2018-9-2 16:17
392177410 發表于 2018-9-2 15:40
是給另外一個單片機發送嗎,那可能另外一個單片機的接收寫的有問題,或者看一下你的字符串是怎么判斷結束的

我是用labview的visa串口控件接收的,我用了截取字符串,后來也用了匹配模式,有時候就會出現錯位現象,就好像單片機很慢似的,但我換用arduino就沒事了,有些不太明白。
作者: lg2911    時間: 2018-9-2 17:21
yang陽 發表于 2018-9-2 16:15
波特率沒有問題

這種能收到字符,但是順序不對的,多半不是波特率問題,波特率錯誤的話,收到的字符是亂的

這種字符正確,順序不對的,多半是軟件問題,是發送緩沖區的控制出了問題,檢查下發送緩沖區的發送指針

作者: yang陽    時間: 2018-9-2 22:46
lg2911 發表于 2018-9-2 17:21
這種能收到字符,但是順序不對的,多半不是波特率問題,波特率錯誤的話,收到的字符是亂的

這種字符正 ...

好的 謝謝
作者: 咕咕    時間: 2018-9-3 09:37
51單片機的串口,是個全雙工的串口,發送數據的同時,還可以接收數據。 當串行發送完畢后,將在標志位 TI 置 1,同樣,當收到了數據后,也會在 RI 置 1。 無論 RI 或 TI 出現了 1,只要串口中斷處于開放狀態,單片機都會進入串口中斷處理程序。 在中斷程序中,要區分出來究竟是發送引起的中斷,還是接收引起的中斷,然后分別進行處理。
作者: zhaoyinlo    時間: 2018-9-3 11:32
如果你是  單字符發送 你可以加下延時
如果是  字符數組發送 你可以在發送之前打印一下   看看自己發送的是否正確
然后 調試自己代碼

作者: zqy181818    時間: 2018-9-3 14:28
發送這邊加引導碼與結束碼就可以了
作者: 392177410    時間: 2018-9-3 14:43
yang陽 發表于 2018-9-2 16:17
我是用labview的visa串口控件接收的,我用了截取字符串,后來也用了匹配模式,有時候就會出現錯位現象, ...

labview的話每次接收完后要記得清空串口緩沖區
作者: yang陽    時間: 2018-9-3 15:48
392177410 發表于 2018-9-3 14:43
labview的話每次接收完后要記得清空串口緩沖區

好的 我試試 謝謝

作者: wzl468    時間: 2018-9-3 16:27
加個延時試試




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1