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

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

3天內(nèi)不再提示

通信技術(shù):UART串口通信開源代碼實操!

青山老竹農(nóng) ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-11-05 11:56 ? 次閱讀

今天我們分享的是關于UART串口通信示例,歡迎大家探討。

本文通過使用腳本代碼,實現(xiàn)Air201的main_uart串口交互功能,可根據(jù)實際需求靈活應用。

我們先了解一些相關基礎知識:

UART(通用異步接收器/發(fā)送器,全稱:Universal Asynchronous Receiver/Transmitter)——是一種串行通信協(xié)議,因其多功能性和簡單性而被廣泛使用。

該協(xié)議允許異步通信,也就是說發(fā)送器和接收器之間無需共享時鐘。數(shù)據(jù)被組織成數(shù)據(jù)包,每個數(shù)據(jù)包包含一個起始位、5到9個數(shù)據(jù)位、一個可選的奇偶校驗位和一個或兩個停止位。

UART只需要兩條線即可運行:TX(發(fā)送)和 RX(接收)。

UART通信優(yōu)點:

UART通信協(xié)議相對簡單,易于實現(xiàn)和調(diào)試。

UART被廣泛應用于各種設備之間的通信,具有較好的兼容性。

UART通信距離較遠,適用于需要長距離傳輸?shù)膱鼍啊?/p>

UART也有通信速度相對較低等缺點,不適用于對速度要求較高的應用。由于UART是異步通信,可能會受到噪聲和干擾的影響,需考量實際應用環(huán)境及需求。

接下來,我們講解UART示例的具體使用。

1. 搭建環(huán)境

新同學建議先看前期的基礎知識相關教程,更有助于理解和操作。

可以在LuaTools項目管理中新建一個項目,重新選擇底層CORE和腳本;或者在原有項目的基礎上,不更換CORE,將原來的腳本刪除,添加為demo/uart的腳本。

1.1 硬件準備:

Air201 PCBA

Air201-BTB擴展版

SIM卡一張

帶有數(shù)據(jù)通信功能的數(shù)據(jù)線

Win10以上PC

wKgaomcplmGAWQlsAASnQVdEGZQ713.png

如上圖所示,如果直接使用Air201上的main_uart串口,需要在4G_UART1_RXD和4G_UART1_TXD處引出線;

也可以連接B2B擴展板,直接接入板子上的main_uart串口。

wKgZomcplnaALQJWAAlqSw75g9w188.png

wKgaomcploSAeFFbABLd-AMSPCA888.png

1.2 軟件準備:

LuaTools調(diào)試工具:
https://docs.openluat.com/Luatools/

最新固件:
https://gitee.com/openLuat/LuatOS-Air201/tree/master/core

最新腳本:
https://gitee.com/openLuat/LuatOS-Air201/tree/master/demo/uart

串口工具:
https://llcom.papapoi.com/index.html

2. 調(diào)試代碼

使用克隆的代碼進行測試,代碼路徑:
LuatOS-Air201demouartuart

2.1 初始化UART

使用MAIN_UART(uart1)串口:

wKgaomcplqOAfC0wAAFPSN1xM44093.png

2.2 發(fā)送數(shù)據(jù)

wKgZomcplrWAcyHWAACtzSK36qk814.png

2.3 注冊接收數(shù)據(jù)的回調(diào)函數(shù)

wKgaomcplsaAdaXRAAN-Hr3F2CM335.png

2.4 完整例程

最新源碼下載:https://gitee.com/openLuat/LuatOS-Air201/tree/master/demo/uart

wKgaomcpltmAC8XVAASmWRF4Q1s283.pngwKgaomcplu2AAm-zAAU1AwAzlco442.pngwKgZomcplvuAZe6vAAFuOAwYzts520.png

3. 代碼燒錄

新同學可以查看參考詳細燒錄教程:
https://docs.openluat.com/Luatools/

1)選對應的固件版本;

2)選擇對應的腳本,選擇添加默認lib,勾選免BOOT刷腳本;

3)固件版本不變的情況下,直接選擇下載腳本即可。

wKgaoWcplw6AaZtcAALef3Llf0I527.png

4. 示例效果

4.1 串口接收展示

wKgaoWcplyCAaWhhAAVMnPycrAs633.png

4.2 模組打印log

wKgaoWcply6AajWIAAPLhFdjVXk009.png

今天的分享就到這里了

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信技術(shù)

    關注

    20

    文章

    1107

    瀏覽量

    92162
  • uart
    +關注

    關注

    22

    文章

    1218

    瀏覽量

    101091
  • 串口通信
    +關注

    關注

    34

    文章

    1607

    瀏覽量

    55363
  • 開源代碼
    +關注

    關注

    0

    文章

    33

    瀏覽量

    2915
收藏 人收藏

    評論

    相關推薦

    UART串口通信示例:開啟通信寶藏之門的定位模組LuatOS入門

    今天我們要講解的是UART串口通信示例,關于Air201資產(chǎn)定位模組LuatOS入門,我會從搭建環(huán)境、代碼燒錄、示例效果等來細說:
    的頭像 發(fā)表于 11-03 19:55 ?486次閱讀
    <b class='flag-5'>UART</b><b class='flag-5'>串口</b><b class='flag-5'>通信</b>示例:開啟<b class='flag-5'>通信</b>寶藏之門的定位模組LuatOS入門

    uart波特率和傳輸頻率的關系 UART串口的常用波特率為多少

    UART(Universal Asynchronous Receiver/Transmitter)是一種廣泛使用的異步串行通信技術(shù),它允許兩臺設備之間進行雙向數(shù)據(jù)傳輸。在UART
    的頭像 發(fā)表于 10-06 16:12 ?1061次閱讀
    <b class='flag-5'>uart</b>波特率和傳輸頻率的關系 <b class='flag-5'>UART</b><b class='flag-5'>串口</b>的常用波特率為多少

    什么是串口通信?它有哪些特點和應用?

    在現(xiàn)代電子通信和計算機領域中,串口通信(Serial Communications)扮演著至關重要的角色。它是一種按位(bit)發(fā)送和接收字節(jié)的通信方式,能夠?qū)崿F(xiàn)數(shù)據(jù)的遠距離傳輸和高效
    的頭像 發(fā)表于 05-23 16:23 ?2006次閱讀

    開源鴻蒙】下載OpenHarmony 4.1 Release源代碼

    本文介紹了如何下載開源鴻蒙(OpenHarmony)操作系統(tǒng) 4.1 Release版本的源代碼,該方法同樣可以用于下載OpenHarmony最新開發(fā)版本(master分支)或者4.0 Release、3.2 Release等發(fā)布版本的
    的頭像 發(fā)表于 04-27 23:16 ?759次閱讀
    【<b class='flag-5'>開源</b>鴻蒙】下載OpenHarmony 4.1 Release<b class='flag-5'>源代碼</b>

    UART串口通信實驗及工作原理

    UART通信過程需要設置波特率、數(shù)據(jù)長度、開始/停止位等參數(shù)。波特率決定了發(fā)送數(shù)據(jù)的速度,而數(shù)據(jù)長度和開始/停止位則用于確保數(shù)據(jù)的正確傳輸和接收。
    的頭像 發(fā)表于 03-21 17:10 ?3638次閱讀
    <b class='flag-5'>UART</b><b class='flag-5'>串口</b><b class='flag-5'>通信</b>實驗及工作原理

    UART串口通信協(xié)議是什么?

    UART (Universal Asynchronous Receiver/Transmitter) 是一種通信接口協(xié)議,用于實現(xiàn)串口通信。它是一種簡單的、可靠的、廣泛應用的
    的頭像 發(fā)表于 03-19 17:26 ?1172次閱讀

    淺談UART通信的異步通信機制

    波特率表示每秒鐘傳送的碼元符號的個數(shù),它是對符號傳輸速率的一種度量。在UART通信中,波特率用于描述通信速度,其單位是bps(每秒鐘傳輸?shù)腷it的數(shù)量)。
    發(fā)表于 02-19 16:19 ?690次閱讀
    淺談<b class='flag-5'>UART</b><b class='flag-5'>通信</b>的異步<b class='flag-5'>通信</b>機制

    常見通信的底層數(shù)據(jù)傳輸原理(UART、SPI、I2C)

    UART:Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)傳輸器。 UART串口是最常見的一種串口
    發(fā)表于 01-15 10:41 ?758次閱讀
    常見<b class='flag-5'>通信</b>的底層數(shù)據(jù)傳輸原理(<b class='flag-5'>UART</b>、SPI、I2C)

    QT串口通信的簡單使用

    QT串口通信是上位機和下位機通信常用的通信方式, 也是學習QT必須學會的基礎知識, 這篇就簡單介紹一下QT串口
    的頭像 發(fā)表于 01-15 09:27 ?1747次閱讀
    QT<b class='flag-5'>串口</b><b class='flag-5'>通信</b>的簡單使用

    什么是串口(UART)?串口的組成和FPGA實現(xiàn)

    串口作為常用的三大低速總線(UART、SPI、IIC)之一,在設計眾多通信接口和調(diào)試時占有重要地位。
    的頭像 發(fā)表于 01-03 11:43 ?1.2w次閱讀
    什么是<b class='flag-5'>串口</b>(<b class='flag-5'>UART</b>)?<b class='flag-5'>串口</b>的組成和FPGA實現(xiàn)

    用proteus和keil實現(xiàn)串口通信仿真

    前面一課講述了串行口通信技術(shù)原理,本課通過安裝虛擬串口,用proteus和keil實現(xiàn)串口通信仿真。
    的頭像 發(fā)表于 11-27 16:42 ?5328次閱讀
    用proteus和keil實現(xiàn)<b class='flag-5'>串口</b><b class='flag-5'>通信</b>仿真

    串口通信原理分析

    現(xiàn)在的傳感器和執(zhí)行器種類越來越多,需要和控制器傳輸?shù)臄?shù)據(jù)也是多種多樣,只用GPIO來控制和讀取的話,只有0和1的狀態(tài),未免還是有點麻煩,各種各樣的通信方法也層出不窮,UART串口通信
    的頭像 發(fā)表于 11-27 10:51 ?777次閱讀
    <b class='flag-5'>串口</b><b class='flag-5'>通信</b>原理分析

    智能車ROS與STM32串口通信代碼

    這里以一個智能車代碼工程為例,抽取串口通信部分代碼 在頭文件中,進行串口頭文件的包含 # include 在類的定義中,什么一個 seria
    的頭像 發(fā)表于 11-26 17:47 ?1097次閱讀

    ROS與STM32串口通信代碼

    這里以一個智能車代碼工程為例,抽取串口通信部分代碼 在頭文件中,進行串口頭文件的包含 # include 在類的定義中,什么一個 seria
    的頭像 發(fā)表于 11-17 18:10 ?1017次閱讀

    UART、SPI、I2C比較 串口通信介紹

    UART、SPI、I2C比較 I2C線更少,比UART、SPI更為強大,但是技術(shù)上也更加麻煩些,因為I2C需要有雙向IO的支持,而且使用上拉電阻,抗干擾能力較弱,一般用于同一板卡上芯片之間的
    的頭像 發(fā)表于 11-09 18:06 ?1251次閱讀
    <b class='flag-5'>UART</b>、SPI、I2C比較 <b class='flag-5'>串口</b><b class='flag-5'>通信</b>介紹