RM新时代网站-首页

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

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

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

Openwrt開發(fā)指南 第22章 Openwrt串口的使用2

嵌入式大雜燴 ? 來(lái)源:嵌入式大雜燴 ? 作者:嵌入式大雜燴 ? 2023-07-05 09:09 ? 次閱讀

開發(fā)環(huán)境:

主機(jī):Ubuntu12.04

開發(fā)板:RT5350

Openwrt:Openwrt15.05

1 添加 ser2net 應(yīng)用程序

在上一章中,我們成功的讓驅(qū)動(dòng)程序支持了串口 2,并且做了簡(jiǎn)單的測(cè)試。接下來(lái),我們就為串口 2 添加一個(gè)應(yīng)用程序,從而實(shí)現(xiàn) Wi-Fi 串口。實(shí)現(xiàn)過(guò)程非常簡(jiǎn)單,首先進(jìn)入 OpenWrt 系統(tǒng)源碼,然后運(yùn)行 make menuconfig 命令進(jìn)行配置。

make menuconfig

在彈出的配置菜單中,配置如下。

Network -- >
	< * >ser2net

然后選中 ser2net 這個(gè)選項(xiàng),如圖所示。

1688484052474dejqo6ydyq

圖1

最后退出保存,再編譯。

make V=99

2 配置 Wi-Fi 串口

既然是 Wi-Fi 串口, 那么我們就可以理解為它由兩部分組成,一部分是網(wǎng)絡(luò)編程器的 TCP服務(wù)器,用于接收客戶端通過(guò) Wi-Fi 傳來(lái)的數(shù)據(jù);另一部分就是串口,用于將 TCP 服務(wù)器接收到的數(shù)據(jù)通過(guò)串口發(fā)送出去。

既然是 TCP 服務(wù)器,那么我們需要設(shè)置它的 IP 地址和端口號(hào)。既然是串口,那么我們需要設(shè)置它的波特率等參數(shù)。那么,這些參數(shù),我們?cè)趺磥?lái)設(shè)置呢?通過(guò)修改 ser2net.conf 這個(gè)配置文件來(lái)實(shí)現(xiàn),位于開發(fā)板上的/etc 目錄下。

將上面編譯出來(lái)的固件,重新燒寫到開發(fā)板上面,然后上電啟動(dòng),進(jìn)入/etc 目錄。

cd /etc

vi ser2net.conf

我們打開 ser2net.conf 這個(gè)配置文件,再它的最下面,我們可以看到以下這些內(nèi)容。

2001:raw:600:/dev/ttyS0:9600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS
#2002:raw:600:/dev/ttyS1:9600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS
2003:raw:5:/dev/ttyS2:9600
2004:raw:5:/dev/ttyS3:115200
2005:raw:5:/dev/ttyS4:9600
2006:raw:5:/dev/ttyS5:9600
2007:raw:5:/dev/ttyS6:9600 tw=tw1 tr=tr1
3001:telnet:0:/dev/ttyS0:19200 remctl banner1
3011:telnet:3:/dev/ttyS0:19200 banner2
#3002:telnet:0:/dev/ttyS1:9600
3003:telnet:0:/dev/ttyS2:9600 banner3
3003:telnet:0:/dev/ttyS2:9600 signature1
3004:telnet:0:/dev/ttyS3:115200
3005:telnet:0:/dev/ttyS4:9600
3006:telnet:0:/dev/ttyS5:9600 open1
3007:telnet:0:/dev/ttyS6:9600 close1
5001:rawlp:10:/dev/lp0

那么這些內(nèi)容是什么意思呢?我們通過(guò)看 ser2net.conf 這個(gè)配置文件前面的說(shuō)明注釋部分,可以知道,這些參數(shù)的格式如下:

# < TCP port >:< state >:< timeout >:< device >:< options >
< TCP port >:用于設(shè)置 TCP 服務(wù)器要監(jiān)聽的端口號(hào);
< state >:用于設(shè)置 TCP 服務(wù)器的狀態(tài);
< timeout >:用于設(shè)置超時(shí)時(shí)間,如果設(shè)置為 0,表示不開啟超時(shí)時(shí)間;
< device >:用于選擇使用哪個(gè)串口設(shè)備;
< options >:用于設(shè)置波特率、校驗(yàn)位等參數(shù)。

更多詳細(xì)的介紹,就請(qǐng)大家看 ser2net.conf 這個(gè)配置文件前面的說(shuō)明注釋部分。那么,如果我想讓我們的 Wi-Fi 串口實(shí)現(xiàn)監(jiān)聽 8002 這個(gè)端口,然后通過(guò)串口 2 輸出, 波特率是 115200,應(yīng)該怎么做呢?

如果我們看懂了前面的內(nèi)容, 就發(fā)現(xiàn), 要實(shí)現(xiàn)這個(gè)功能非常簡(jiǎn)單, 只需要在 ser2net.conf這個(gè)配置中的最后面添加一行以下內(nèi)容即可。

8002:raw:0:/dev/ttyS0:115200

最后保存退出,然后重啟開發(fā)板,即可。

3 測(cè)試 Wi-Fi 串口

通過(guò)前面的那么多的努力,我們終于把 Wi-Fi 串口這個(gè)系統(tǒng)給做好了,接下來(lái)我們就來(lái)測(cè)試它。

1)將開發(fā)板的串口2 和電腦的串口連接起來(lái),設(shè)置好相應(yīng)的串口(波特率是115200)。

1688484053020wsii1skpen

圖2

2)啟動(dòng)開發(fā)。

3)啟動(dòng) ser2net 軟件,只需要在調(diào)試串口測(cè),輸入如下命令即可

ser2net

4)手機(jī)連接上開發(fā)板發(fā)出的 WiFi 信號(hào)RT5350_ap。

5)啟動(dòng)“網(wǎng)絡(luò)調(diào)試助手”軟件。

6)選擇 tcp client。

16884840533293b1sj3x0pu

圖3

7)點(diǎn)添“加按”按鈕。然后在彈出的對(duì)話框中填入開發(fā)板的 IP 地址,還有就是 Wi-Fi 串口的端口號(hào) 8002.

16884840536802ptdu1pz19

圖4

8)接下來(lái),我們的手機(jī)就可以通過(guò) Wi-Fi 串口和電腦進(jìn)行傳數(shù)據(jù)了。

4 開機(jī)自啟動(dòng) Wi-Fi 串口

我們的最終目的,肯定是要做出一個(gè)產(chǎn)品來(lái),而產(chǎn)品,不可能還要用戶通過(guò)調(diào)試串口來(lái)輸入命令,從而才能啟動(dòng) Wi-Fi 串口。

那么,接下來(lái),我們就來(lái)實(shí)現(xiàn)開機(jī)自啟動(dòng) Wi-Fi 串口。

首先打開開發(fā)板上的/etc 目錄下的 rc.local 這個(gè)文件。

vi /etc/rc.local

然后在 exit0 前面加入一條 ser2net,詳情如下。

# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ser2net
exit 0

最后保存退出,重啟開發(fā)板,然后我們通過(guò) ps 命令查看一下,發(fā)現(xiàn) ser2net 已經(jīng)啟動(dòng)好了。

1688484054072a3wcu678vr

這樣,我們的 Wi-Fi 串口就這樣做好了。

注意:發(fā)現(xiàn)好多人調(diào)試不通,原因大概有以下三個(gè)問(wèn)題:

短路帽位置不對(duì);

波特率設(shè)置不對(duì),顯示亂碼或無(wú)輸出;

手機(jī)建立 tcp 客戶端顯示連接失敗,一般是端口號(hào)不對(duì),請(qǐng)用 ps 查下正確的端口號(hào)再連接。還有一種就是 ser2net 沒有啟動(dòng),最好再做一次此實(shí)驗(yàn),也可以用我們里面提供的“openwrt.bin” 固件測(cè)試。
審核編輯:湯梓紅

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

    關(guān)注

    14

    文章

    2126

    瀏覽量

    124413
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1550

    瀏覽量

    76375
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5018

    瀏覽量

    97341
  • OpenWrt
    +關(guān)注

    關(guān)注

    10

    文章

    130

    瀏覽量

    39294
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Openwrt開發(fā)指南 25 配置OpenWrt支持網(wǎng)絡(luò)攝像頭

    Openwrt開發(fā)指南 25 配置OpenWrt支持網(wǎng)絡(luò)攝像頭
    的頭像 發(fā)表于 07-13 08:56 ?2379次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>25<b class='flag-5'>章</b> 配置<b class='flag-5'>OpenWrt</b>支持網(wǎng)絡(luò)攝像頭

    Openwrt開發(fā)指南 1 OpenWrt入門

    如果要學(xué)習(xí)openwrt的話,買些列表中二手的路由器來(lái)實(shí)踐下更容易學(xué)習(xí),大部分要升級(jí)一下rom芯片和內(nèi)存芯片,典型配置都是4M、64M。
    的頭像 發(fā)表于 06-27 09:09 ?4346次閱讀

    Openwrt開發(fā)指南 2 OpenWrt開發(fā)環(huán)境搭建

    開發(fā)PC機(jī)上的軟件時(shí),可以直接在PC機(jī)上編輯、編譯、調(diào)試軟件,最終發(fā)布的軟件也是在PC機(jī)上運(yùn)行。對(duì)于物聯(lián)網(wǎng)OpenWrt開發(fā),最初的嵌入式設(shè)備是一個(gè)空白的系統(tǒng),需要通過(guò)主機(jī)為它構(gòu)建基本的軟件系統(tǒng),并
    的頭像 發(fā)表于 06-27 09:09 ?7075次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b><b class='flag-5'>2</b><b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b><b class='flag-5'>開發(fā)</b>環(huán)境搭建

    Openwrt開發(fā)指南 3 OpenWrt下載及配置

    編譯OpenWrt首先需要下載源碼,OpenWrt的源碼是通過(guò)git下載,OpenWrt目前已經(jīng)很好的支持了MT7620、MT7821等芯片,因此OpenWrt系統(tǒng)完全可以用于MT76
    的頭像 發(fā)表于 06-27 09:10 ?5705次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>3<b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b>下載及配置

    Openwrt開發(fā)指南 4 燒寫OpenWrt固件

    對(duì)于一個(gè)完整的嵌入式系統(tǒng),它由U-boot、內(nèi)核(Linux)、文件系統(tǒng)、應(yīng)用程序四部分組成。那么這四部分之間的關(guān)系是怎么樣的呢?OpenWrt是屬于哪部分呢?
    的頭像 發(fā)表于 06-27 09:11 ?4776次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>4<b class='flag-5'>章</b> 燒寫<b class='flag-5'>OpenWrt</b>固件

    Openwrt開發(fā)指南 7 添加Web界面

    LuCI作為“FFLuCI”誕生于2008年3月份,目的是為OpenWrt固件從Whiterussian到Kamikaze實(shí)現(xiàn)快速配置接口。Lua是一個(gè)小巧的腳本語(yǔ)言,很容易嵌入其它語(yǔ)言。輕量級(jí)
    的頭像 發(fā)表于 06-29 09:04 ?3746次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>7<b class='flag-5'>章</b> 添加Web界面

    Openwrt開發(fā)指南 12 添加OpenWrt軟件包

    OpenWrt是一個(gè)比較完善的嵌入式Linux開發(fā)平臺(tái),在無(wú)線路由器應(yīng)用上已有4000多個(gè)軟件包。我們可以在其基礎(chǔ)上增加軟件包,以擴(kuò)大其應(yīng)用范圍。在OpenWrt中增加軟件包極其方便,按照
    的頭像 發(fā)表于 06-29 09:09 ?8803次閱讀

    Openwrt開發(fā)指南 13 OpenWrt啟動(dòng)流程

    任何系統(tǒng)的啟動(dòng)都是開發(fā)人員首要關(guān)注的問(wèn)題,因?yàn)橹挥辛私饬讼到y(tǒng)的啟動(dòng)流程和啟動(dòng)機(jī)制,才能真正掌握一個(gè)系統(tǒng),如果對(duì)啟動(dòng)的啟動(dòng)不熟悉的話,是不可能真正用好一個(gè)系統(tǒng),openwrt系統(tǒng)也不例外,他的啟動(dòng)和一般的嵌入式系統(tǒng)啟動(dòng)還有所區(qū)別,現(xiàn)在咱們就分析一下
    的頭像 發(fā)表于 06-29 09:09 ?3505次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>13<b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b>啟動(dòng)流程

    Openwrt開發(fā)指南 17 驅(qū)動(dòng)開發(fā)之字符設(shè)備驅(qū)動(dòng)程序

    首先將 RT5350_drv 文件夾傳到 OpenWrt 源碼的chaos_calmer/package/kernel 目錄下。然后進(jìn)入 OpenWrt 源碼的頂層目錄,執(zhí)行 make menuconfig。
    的頭像 發(fā)表于 07-02 09:20 ?3198次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>17<b class='flag-5'>章</b> 驅(qū)動(dòng)<b class='flag-5'>開發(fā)</b>之字符設(shè)備驅(qū)動(dòng)程序

    Openwrt開發(fā)指南 21 OpenWrt串口的使用1

    從RT5350的芯片手冊(cè)上可以得知, RT5350一共有兩個(gè)串口, 分別為UART Lite、 UART Full,詳細(xì)定義如下。
    的頭像 發(fā)表于 07-05 09:07 ?2894次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>21<b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b><b class='flag-5'>串口</b>的使用1

    Openwrt開發(fā)指南 24 配置開發(fā)板支持U盤

    Openwrt開發(fā)指南 24 配置開發(fā)板支持U盤
    的頭像 發(fā)表于 07-13 08:55 ?3245次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>24<b class='flag-5'>章</b> 配置<b class='flag-5'>開發(fā)</b>板支持U盤

    Openwrt開發(fā)指南 29 OpenWrt 防火墻介紹

    Openwrt 是一個(gè) GNU/Linux 的發(fā)行版, 和其他大多數(shù)的發(fā)行版一樣,Openwrt 的防火墻同樣也是基于 iptables。 在 OpenWRT 下防火墻的默認(rèn)行為已經(jīng)可以滿足路由器的需要,一般情況下也無(wú)需修改。
    的頭像 發(fā)表于 07-15 16:24 ?3575次閱讀
    <b class='flag-5'>Openwrt</b><b class='flag-5'>開發(fā)指南</b> <b class='flag-5'>第</b>29<b class='flag-5'>章</b> <b class='flag-5'>OpenWrt</b> 防火墻介紹

    RT5350 Wi-Fi 模塊開發(fā)指導(dǎo)_物聯(lián)網(wǎng) openwrt 開發(fā)概述

    物聯(lián)網(wǎng)的資料 物聯(lián)網(wǎng)openwrt開發(fā)概述 物聯(lián)網(wǎng)openwrt開發(fā)概述 物聯(lián)網(wǎng)openwrt開發(fā)
    發(fā)表于 11-16 14:52 ?0次下載

    openwrt開發(fā)教程1~6

    openwrt開發(fā)教程1~6
    發(fā)表于 03-17 14:23 ?55次下載

    openwrt都有什么功能_openwrt詳細(xì)功能介紹_openwrt刷機(jī)教程

    penWrt作為一個(gè)嵌入式的Linux發(fā)行版已經(jīng)得到廣泛的運(yùn)用,本文主要介紹了openWRT開發(fā)背景、OpenWrt功能、openWRT特點(diǎn)以及op
    發(fā)表于 12-27 10:21 ?16.6w次閱讀
    <b class='flag-5'>openwrt</b>都有什么功能_<b class='flag-5'>openwrt</b>詳細(xì)功能介紹_<b class='flag-5'>openwrt</b>刷機(jī)教程
    RM新时代网站-首页