在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

總結來了!串口通信常見問題及解決方法

億佰特物聯網應用專家 ? 2022-11-21 10:25 ? 次閱讀

什么是串口通信

串口,一般指異步串行接口(Serial Port),主要用于串行式逐位數據傳輸。串口對于處于嵌入式行業的我們來說,是必不可缺的一部分,在剛開始學習單片機時,我們最先學習的通信接口就是USART(Universal Synchronous/Asynchronous Receiver/Transmitter)——通用同/異步串行接收/發送器。其中最常見的串口通信的時序如下圖:00945c68-672d-11ed-b116-dac502259ad0.png有起始位、數據位、校驗位、停止位、波特率等幾個通信參數。

232 / 485/ 422通信

串口通信主要可分為232、485、422三種通信方式。

232通信

232通信主要是由RX、TX、GND三根線組成。RX接TX,TX接RX,GND接GND。發送和接收由不同的線路處理,所以能夠同時進行發送和接收數據,因此232是全雙工通信

485通信

為了解決232通信距離受限問題,于是有了485通信。
485通信只需要+、-兩根線(也叫A、B兩根線),A、B兩根線的差分電平信號就是作為數據信號傳輸。發送和接收都用這兩根線,每次只能發送數據或者接收數據,因此485是半雙工通信

422通信

422通信兼具232與485的特點,既能實現全雙工通信,又能增大傳輸距離。422也常被標注為485-4,而485被標注為485-2。因為485-2是2根線,485-4是4根線,下圖是422的示意圖。00a56846-672d-11ed-b116-dac502259ad0.png422將232的RX分成RX+和RX-,把TX分成TX+和TX-,實現同時發送和接收。
最常用的還是232和485通信。00b79994-672d-11ed-b116-dac502259ad0.png

串口通信常見問題及解決

串口作為工程師日常開發時的非常重要的一個角色,也時常會碰到很多問題,深受各種折磨,接下來筆者就來說說平時串口通信中常見的問題以及解決方法。通常我們調試串口通信碰到問題時,需要用到一個USB轉TTL、杜邦線(導線)等工具,首先我們應當保證自己的工具是正常的,可以通過以下方法自測:
1、將USB轉TTL中的TX、RX使用杜邦線或是跳線帽短接。打開串口調試工具,例如XCOM、SSCOM等,將波特率、停止位、校驗位等參數調至即將需要通信的模塊的參數,再去隨意發送一些數據,通常筆者是更傾向于使用16進制發送和接收,以此來保證數據中間或者結尾出現一些不可使用ASCII值直觀看到的數據,例如數據的結尾多了0x00,0x0a等。若確保自己的工具以及導線沒有問題后,即可繼續排查通信問題。

2、發現使用USB轉TTL與模塊之間明明已經反接了TX、RX,發指令給模塊之后卻沒有任何反應。解決方法:當碰到如上問題時,應當首先自檢工具,再檢查是否雙方共地,GND提供了一個基準0電平,如果沒有共地的話,那極有可能會出問題,其次是檢查雙方的串口參數是否一致,串口通信是一個易于開發并且速度可調的一個的通信協議,其中我們大部分都會使用UART——通用異步傳輸接收/發送器,串口異步通信也可稱為起止式異步通信,是直接以字符為單位進行傳輸的,字符之間沒有固定的時間要求,每個字符中的每一位以固定的時間傳送。這就意味著,如果你使用一個較為高的波特率的速度去與一個較為低的波特率的速度去通信的話,那極大可能會導致低波特率設備無法讀取到通信時的空閑信號的跳變信息。在這里筆者用一個比較極端例子進行說明:當雙方串口的參數的數據位都為8bit,停止位為1bit,校驗位為0bit時,但是A設備的波特率為9600,B設備為921600,就會出現以下情況:當B設備向A設備發送一個字節的數據時,B設備從發送到結束所需用的時間為1/921600*(8+1+1)=10.8us,而相同的A設備發送/接收一個字節的時間為(8+1+1)/9600=1.04ms,試問,像這種相差數倍的時間,當高波特率發送給低波特率設備時,很有可能低波特率設備壓根就不會認為發送過來的數據流是一串數據,因為壓根沒法解析到。00cb1992-672d-11ed-b116-dac502259ad0.gif

*收發波特率一致

00da3a3a-672d-11ed-b116-dac502259ad0.gif*收發波特率不一致
因此串口通信一定要保證雙方波特率、停止位等參數一致。反之,低波率向高波特率發送數據就會被認為是錯誤的數據,也就是所謂的亂碼。3、發現雙方已經使用了相同的參數進行通信,但是通信依舊有問題,例如收到亂碼等。解決方法:首先應該降低波特率,先確保模塊與USB轉TLL均無問題,也要確保模塊沒有處于透傳等特殊情況下,也可以使用邏輯分析儀等工具進行排查,現在的很多邏輯分析儀是自帶數據分析的,可以由此來確保模塊正常。其實大部分碰到這種問題的時候,更建議優先查看USB轉TLL是否支持當前的工作模式。

其他問題:

電腦使用USB轉串口可以和設備通信,為何換成屏就無法與設備通信?
電腦使用USB轉串口連接設備,可能使用的是標準串口功能(除RX,TX,GDN外,還使用了其它引腳);檢查接線方法是否正確;電腦與控制器PLC通信時,掃描波特率參數,是自適應,屏通信可能參數沒有設備好。另外,還需注意,有時可能會使用一些串口助手發送測試數據與控制器通信,有些串口助手的奇偶校驗會不起作用。
一個設備是232,另一個設備是422,沒有轉換設備,怎么辦?232和422都是全雙工通信,422以一種差分信號傳輸。可以將422的Rx+與232的TX對接,422的RX-與232的GND對接;將422的TX+與232的RX對接,422的TX-與232的GDN對接。422設備發送數據時可以發送到232的RX上;232的TX發送數據后,由于TX和GND也形成了差分信號給到422,422就可以接收到數據。能否實現兩個主站通過485訪問ModBus設備?485通信基本上是一主多從,現階段還不能實現兩個主站訪問一個ModBus設備。換屏后無法再跟設備通信,怎么解決?首先需要確認接線是否正確,RX和TX是否兼容;其次檢查是否有接地線;除了RX,TX,GND,是否還有其它引腳需要短接;查看通信協議、波特率是否相同。

以上就是筆者總結的串口通信常見問題及解決方法,文中如有出錯之處,望指正,希望大家共同進步!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 通信
    +關注

    關注

    18

    文章

    6069

    瀏覽量

    136340
收藏 人收藏

    評論

    相關推薦

    電子焊接的常見問題解決方法

    電子焊接是電子組裝過程中的關鍵步驟,焊接質量的好壞直接影響電子產品的性能和可靠性。在電子焊接過程中,經常會遇到一些常見問題,掌握其解決方法對于提高焊接質量具有重要意義。以下是幾種常見的電子焊接
    的頭像 發表于 01-09 10:28 ?169次閱讀

    gitee 常見問題解決方法

    Gitee作為國內的代碼托管平臺,在使用過程中可能會遇到一些問題。以下是一些常見問題及其解決方法: 一、倉庫創建與代碼推送問題 倉庫已存在遠程配置 問題 :在嘗試為已有項目添加遠程倉庫配置時,可能會
    的頭像 發表于 01-06 10:06 ?309次閱讀

    mac的常見問題解決方法

    Mac常見問題解決方法 1. 系統啟動緩慢 問題描述: 啟動Mac時,系統啟動緩慢,甚至出現卡頓現象。 解決方法: 檢查啟動項目: 打開系統偏好設置中的“用戶與群組”,點擊“登錄項”,移除不必要
    的頭像 發表于 12-19 15:02 ?315次閱讀

    Ubuntu系統常見問題解決方法

    Ubuntu是一個基于Linux的開源操作系統,以其穩定性和易用性而受到許多用戶的喜愛。然而,在使用過程中,用戶可能會遇到各種問題。以下是一些Ubuntu系統中常見的問題及其解決方法。 1. 無法
    的頭像 發表于 12-12 14:32 ?569次閱讀

    RS232通信錯誤及解決方法 如何使用RS232進行設備組網

    RS232通信錯誤及解決方法 RS232通信錯誤可能由多種原因引起,以下是一些常見的錯誤及相應的解決方法
    的頭像 發表于 12-10 15:53 ?1395次閱讀

    multisi的常見問題解決方法

    遇到各種問題。 1. 啟動順序問題 問題描述: 用戶在安裝多系統后,發現默認啟動順序不符合預期,導致無法正常進入某個操作系統。 解決方法: 修改啟動順序: 進入BIOS設置,找到啟動順序(Boot Order)選項,調整各個操作系統的啟動順序。
    的頭像 發表于 12-09 11:07 ?253次閱讀

    串口通信常見問題及解決方案

    串口通信常見問題及解決方案 1. 串口通信原理簡述 串口通信
    的頭像 發表于 11-22 09:06 ?2170次閱讀

    Mobaxterm 常見問題解決方法

    強大,但用戶在使用過程中可能會遇到一些問題。以下是一些常見問題及其解決方法: 1. 連接問題 問題: 無法連接到遠程服務器。 解決方法: 確認服務器地址和端口號是否正確。 檢查網絡連接是否正常。 確認服務器是否允許SSH/Tel
    的頭像 發表于 11-10 15:35 ?4197次閱讀

    HSHA驅動器報警的常見問題解決方法

    HSHA驅動器報警的常見問題解決方法可以歸納如下: 常見問題 電機過載 : 原因 :電機長時間超負荷運行或短時間負載過重。 表現 :驅動器可能顯示Err 03等錯誤代碼。 伺服驅動過載 : 原因
    的頭像 發表于 09-19 09:20 ?1096次閱讀

    RS485常見問題解決方法

    RS485總線是工業上最常用的通信方式之一,在實際布線或使用過程中通常會出現一系列問題,今天總結一些平時RS485通訊可能會出現的通訊問題及其解決方法以供大家參考。什么是RS485?RS485是一種
    的頭像 發表于 06-14 08:20 ?2040次閱讀
    RS485<b class='flag-5'>常見問題</b>及<b class='flag-5'>解決方法</b>

    鴻蒙OpenHarmony:【常見編譯問題和解決方法

    常見編譯問題和解決方法
    的頭像 發表于 05-11 16:09 ?2437次閱讀

    Ubuntu系統常見問題及解答

    今天小編為大家總結了Ubuntu系統常見問題解決方法,便于收藏和查閱,大家快快碼住哦~
    的頭像 發表于 04-19 12:29 ?1348次閱讀
    Ubuntu系統<b class='flag-5'>常見問題</b>及解答

    家用路由器常見問題解決方法

    家用路由器已成為我們家庭中不可或缺的一部分。然而,由于各種原因,家用路由器可能會遇到各種各樣的問題。本文將介紹一些常見的家用路由器問題及相應的解決方法,以幫助讀者更好地維護和管理自己的網絡環境。
    的頭像 發表于 04-18 17:42 ?1486次閱讀

    如何解決同步時鐘系統中的常見問題和故障?

    同步時鐘系統 在電力、通信、交通等領域中應用廣泛,為保證其正常運行,需要進行系統的維護和保養。下面是述泰時鐘總結的時鐘同步系統維護常見問題解決方法的介紹。
    的頭像 發表于 03-19 10:42 ?1792次閱讀
    如何解決同步時鐘系統中的<b class='flag-5'>常見問題</b>和故障?

    串口通信常見的錯誤和故障排除方法

    在進行串口通信時,確實可能會遇到一些常見的錯誤和問題。
    的頭像 發表于 03-02 14:19 ?4212次閱讀
    主站蜘蛛池模板: 亚洲精品资源 | 久久性妇女精品免费 | 高清一级做a爱视频免费 | 一级片免费在线播放 | 性欧美黑人xxxx | 亚洲免费视频播放 | tube亚洲高清老少配 | 男人在线资源 | 国产v69| 色婷婷色综合缴情在线 | 国产馆精品推荐在线观看 | 久久99精品一级毛片 | 狠狠色网站| 午夜黄页网站在线播放 | 午夜三级成人三级 | 久久香蕉国产精品一区二区三 | 男女无遮挡一进一出性视频 | 免费观看三级毛片 | 黄色免费网站在线播放 | 夜夜摸视频网 | 中文字幕在线观看亚洲 | 国产人免费人成免费视频 | 老师喂我吃她的奶水脱她胸罩 | 日韩美女影院 | 一级特黄性色生活片一区二区 | 欧美福利视频网站 | 夜夜爽天天狠狠九月婷婷 | 欧美黄色影院 | 欧美三级大片在线观看 | 2017av在线 | 毛片你懂的 | 色老头综合 | 老师在办公室被躁得舒服小说 | 国产小视频网站 | 色吧五月天 | 国产福利在线观看一区二区 | 日本视频一区在线观看免费 | 欧美系列在线观看 | 天天操天天操天天 | 成在线人视频免费视频 | 四虎影视在线影院在线观看 |