色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

基于MicroROS學(xué)習(xí)板的串口通信接收實(shí)驗(yàn)

CHANBAEK ? 來源:魚香ROS ? 作者:小魚 ? 2023-07-03 10:48 ? 次閱讀

你好,我是愛吃魚香ROS的小魚。上一節(jié)我們完成了第一個(gè)Hello World工程,學(xué)習(xí)使用了串口模塊的初始化和發(fā)送,本節(jié)我們?cè)賮硪粋€(gè)串口接收小實(shí)驗(yàn),把串口收發(fā)數(shù)據(jù)補(bǔ)齊。

教程所使用硬件平臺(tái)為MicroROS學(xué)習(xí)板V1.0.0,可點(diǎn)擊閱讀原文購買及查看詳情

圖片

一、檢測(cè)并接收單個(gè)字符

1.1 代碼編寫

/**
 * @file demo01_read_byte.cpp
 * @author fishros@foxmail.com
 * @brief 初始化串口,當(dāng)有數(shù)據(jù)過來的時(shí)候讀取并將數(shù)據(jù)打印出來
 * @version 0.1
 * @date 2022-12-18
 * 
 * @copyright Copyright (c) 2022
 * 
 */
#include < Arduino.h >


void setup()
{
    // 初始化串口
    Serial.begin(115200);
}


void loop()
{
    // 判斷是否有有效數(shù)據(jù),返回值是有效數(shù)據(jù)的長度
    if (Serial.available())
    {
        // 讀取一個(gè)數(shù)據(jù)
        int c = Serial.read();
        // -1 代表接收失敗
        if (c != -1)
        {
            // 以%c字符的格式輸出接收的數(shù)據(jù)
            Serial.printf("I receve %c\\n", c);
        }
    }
}

這里多用了一個(gè)函數(shù)Serial.available(),該函數(shù)代表當(dāng)前串口中緩存有效數(shù)據(jù)的長度。

1.2 使用串口監(jiān)視器發(fā)送消息

使用快捷鍵,編譯 Ctrl+Alt+B、上傳 Ctrl+Alt+U,接著準(zhǔn)備發(fā)送數(shù)據(jù)

因?yàn)橐l(fā)送消息,這里我們換一個(gè)收發(fā)分離的串口監(jiān)視器來進(jìn)行數(shù)據(jù)發(fā)送

使用Ctrl+Alt+~打開終端,接著在終端中你可以看到串口監(jiān)視器一欄

圖片

接著打開我們板子對(duì)應(yīng)的串口設(shè)備

?選擇串口編號(hào)

?設(shè)置波特率

?點(diǎn)擊開始監(jiān)視

圖片

發(fā)送測(cè)試

?輸入數(shù)據(jù)

?點(diǎn)擊發(fā)送

?查看返回

圖片

嘗試發(fā)送12

圖片

可以看到收到了兩條返回,這是因?yàn)槲覀兠看沃唤邮找粋€(gè)數(shù)據(jù),所以即使發(fā)送12,接收數(shù)據(jù)也是一個(gè)一個(gè)接收和打印的。

那有沒有辦法一次性接收多個(gè)數(shù)據(jù)呢?我們換個(gè)函數(shù)即可。

二、一次性接收一串?dāng)?shù)據(jù)

2.1 代碼編寫

/**
 * @file demo01_read_byte.cpp
 * @author fishros@foxmail.com
 * @brief 初始化串口,當(dāng)有數(shù)據(jù)過來的時(shí)候讀取并將數(shù)據(jù)打印出來
 * @version 0.1
 * @date 2022-12-18
 *
 * @copyright Copyright (c) 2022
 *
 */
#include < Arduino.h >


void setup()
{
    // 初始化串口
    Serial.begin(115200);
}


void loop()
{
    // 判斷是否有有效數(shù)據(jù)
    if (Serial.available())
    {
        // 讀取一個(gè)String字符串?dāng)?shù)據(jù)
        String str = Serial.readString();
        // 以%s的格式輸出接收的數(shù)據(jù)
        Serial.printf("I receve %s\\n", str.c_str());
    }
}

2.2 編譯下載

點(diǎn)擊按鈕或者使用快捷鍵編譯下載代碼。

如果你在下載代碼時(shí)遇到下面的錯(cuò)誤,是因?yàn)閯倓偟拇诒O(jiān)視器沒有關(guān)閉,

Auto-detected: /dev/ttyUSB0
Uploading .pio/build/featheresp32/firmware.bin
esptool.py v4.2.1
Serial port /dev/ttyUSB0
Connecting...........
serial.serialutil.SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?)
*** [upload] Error 1

點(diǎn)擊停止監(jiān)視后,繼續(xù)下載即可

圖片

2.3 測(cè)試

下載完成后,重新打開串口,接著發(fā)送一串消息

圖片

三、總結(jié)

本節(jié)我們通過兩個(gè)串口接收數(shù)據(jù)小實(shí)驗(yàn),學(xué)習(xí)了串口數(shù)據(jù)的接收和發(fā)送。 下一節(jié)我們開始學(xué)習(xí)如何完成點(diǎn)燈。

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

    關(guān)注

    34

    文章

    1627

    瀏覽量

    55649
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4820

    瀏覽量

    68882
  • 學(xué)習(xí)板
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    12176
  • ROS
    ROS
    +關(guān)注

    關(guān)注

    1

    文章

    279

    瀏覽量

    17048
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    stm32L152RCDISCOVER進(jìn)行串口通信實(shí)驗(yàn)接收亂碼怎么解決?

    使用stm32L152RCDISCOVER開發(fā)進(jìn)行串口通信實(shí)驗(yàn)為什么接收亂碼
    發(fā)表于 03-11 07:56

    串口通信實(shí)驗(yàn)分享

    實(shí)驗(yàn)四、串口通信實(shí)驗(yàn)? 自律學(xué)習(xí)堅(jiān)強(qiáng) ,拒絕迷茫。作者:行走的皮卡丘時(shí)間:2021/4/4喜歡就去追,這個(gè)紅燈等不到,說不定下一個(gè)紅燈等到了,嘻嘻!!!!!!!文章目錄
    發(fā)表于 01-14 09:08

    HL配套C實(shí)驗(yàn)例程單片機(jī)串口接收數(shù)據(jù)

    HL配套C實(shí)驗(yàn)例程單片機(jī)串口接收數(shù)據(jù),配合開發(fā)學(xué)習(xí)效果更好。
    發(fā)表于 04-11 17:04 ?1次下載

    ARM基礎(chǔ)應(yīng)用實(shí)驗(yàn)_串口通信

    ARM嵌入式應(yīng)用程序架構(gòu)設(shè)計(jì)實(shí)例精講--ARM基礎(chǔ)應(yīng)用實(shí)驗(yàn)01串口通信
    發(fā)表于 07-08 11:08 ?0次下載

    ARM基礎(chǔ)應(yīng)用實(shí)驗(yàn)_串口通信.rar

    電子專業(yè)單片機(jī)相關(guān)知識(shí)學(xué)習(xí)教材資料——ARM基礎(chǔ)應(yīng)用實(shí)驗(yàn)01串口通信
    發(fā)表于 09-13 17:23 ?0次下載

    上位機(jī)串口通信數(shù)據(jù)接收事件程序

    上位機(jī) 串口 通信主要介紹通信串口的初始化和串口緩沖區(qū)數(shù)據(jù)的讀取,因?yàn)榇颂幹皇亲鳛橹噶顏碜x取,數(shù)據(jù)量小,所以緩沖區(qū)數(shù)據(jù)的讀取為有數(shù)據(jù)
    發(fā)表于 03-13 15:08 ?3996次閱讀
    上位機(jī)<b class='flag-5'>串口</b><b class='flag-5'>通信</b>數(shù)據(jù)<b class='flag-5'>接收</b>事件程序

    串口通信與串行通信的區(qū)別和寄存器及通信實(shí)驗(yàn)等詳細(xì)資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是串口通信學(xué)習(xí)課件免費(fèi)下載包括了:1、串口通信與串行通信的區(qū)別,2、
    發(fā)表于 12-17 17:08 ?11次下載
    <b class='flag-5'>串口</b><b class='flag-5'>通信</b>與串行<b class='flag-5'>通信</b>的區(qū)別和寄存器及<b class='flag-5'>通信實(shí)驗(yàn)</b>等詳細(xì)資料說明

    基礎(chǔ)實(shí)驗(yàn)13-USART串口接收實(shí)驗(yàn)

    基礎(chǔ)實(shí)驗(yàn)13-USART串口接收實(shí)驗(yàn)實(shí)驗(yàn)目的:掌握定時(shí)器USART接收字符串的方法。
    發(fā)表于 12-14 18:53 ?1次下載
    基礎(chǔ)<b class='flag-5'>實(shí)驗(yàn)</b>13-USART<b class='flag-5'>串口</b><b class='flag-5'>接收</b><b class='flag-5'>實(shí)驗(yàn)</b>

    16 . USART 串口通信實(shí)驗(yàn)

    USART 串口通信實(shí)驗(yàn)我們知道STM32F1 內(nèi)部含有非常多的通信接口,我們就來學(xué)習(xí)下USART 串口
    發(fā)表于 12-20 19:22 ?20次下載
    16 . USART <b class='flag-5'>串口</b><b class='flag-5'>通信實(shí)驗(yàn)</b>

    STM32 串口通信實(shí)驗(yàn)

    stm32串口通信實(shí)驗(yàn)UART通信實(shí)驗(yàn)(通用異步收發(fā)器)UART串口通信原理:UART的通信過程
    發(fā)表于 12-20 19:26 ?15次下載
    STM32 <b class='flag-5'>串口</b><b class='flag-5'>通信實(shí)驗(yàn)</b>

    ESP32學(xué)習(xí)記錄<三>串口通信

    ESP32學(xué)習(xí)記錄串口通信文章目錄ESP32學(xué)習(xí)記錄串口通信前言一、通過
    發(fā)表于 12-20 19:34 ?17次下載
    ESP32<b class='flag-5'>學(xué)習(xí)</b>記錄<三><b class='flag-5'>串口</b><b class='flag-5'>通信</b>

    關(guān)于使用stm32核心進(jìn)行USART串口通信實(shí)驗(yàn)

    目錄一、關(guān)于串口通信1.串口通信2.USART二、USART串口通信程序1.準(zhǔn)備工作2.
    發(fā)表于 12-24 19:00 ?0次下載
    關(guān)于使用stm32核心<b class='flag-5'>板</b>進(jìn)行USART<b class='flag-5'>串口</b><b class='flag-5'>通信</b>的<b class='flag-5'>實(shí)驗(yàn)</b>

    實(shí)驗(yàn)四、串口通信實(shí)驗(yàn)

    實(shí)驗(yàn)四、串口通信實(shí)驗(yàn)? 自律 學(xué)
    發(fā)表于 01-14 10:09 ?2次下載
    <b class='flag-5'>實(shí)驗(yàn)</b>四、<b class='flag-5'>串口</b><b class='flag-5'>通信實(shí)驗(yàn)</b>

    串口通信實(shí)驗(yàn)資料分享

    串口通信實(shí)驗(yàn)資料分享
    發(fā)表于 06-29 15:03 ?5次下載

    stc32G12k128使用舊清翔51實(shí)驗(yàn)學(xué)習(xí)UART通信實(shí)驗(yàn)

    stc32G12k128使用舊清翔51實(shí)驗(yàn)學(xué)習(xí)UART通信實(shí)驗(yàn)程序,利用舊版,學(xué)習(xí)32位單片機(jī)的串口
    發(fā)表于 11-21 10:21 ?3次下載
    主站蜘蛛池模板: 人妖干美女| 日本日本熟妇中文在线视频| 天美传媒色情原创精品| 欧美派对xxxhdparty| 男女爽爽无遮挡午夜视频在线观看| 久久高清内射无套| 久9青青cao精品视频在线| 黄色三级在线| 久cao在线香蕉| 久久免费视频1| 久久综合视频网站| 久久麻豆亚洲AV成人无码国产| 久久国产综合精品欧美| 久久热免费观看视频| 麻豆精品国产剧情观看| 暖暖 视频 免费 高清 在线观看 | 国产精品视频人人做人人爽| 在线观看国产人视频免费中国| 日本男女动态图| 肉多荤文高h羞耻校园| 三叶草成人| 甜涩性爱下载| 小雪奶水涨翁工帮吸的推荐语录 | A级毛片无码久久精品免费| silk118中文字幕无删减| 丰满五十六十老熟女HD60| 国产精品久久久久久亚洲毛片| 国产麻豆剧果冻传媒免费网站| 国产在线一卡二卡| 久久精品国产男包| 免费看片A级毛片免费看| 欧美 亚洲 日韩 在线综合| 日本无码毛片一区二区手机看| 少妇性饥渴BBBBBBBBB| 亚洲精品喷白浆在线观看| 在线观看免费小视频| 99久久99| 国产 欧美 亚洲 日韩视频| 国产午夜婷婷精品无码A片| 久久99久久成人免费播放| 免费a毛片|