91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

在線串口工具(R-WebEmbedded)

Rice嵌入式開(kāi)發(fā)技術(shù)分享 ? 來(lái)源:Rice嵌入式 ? 作者:Rice嵌入式 ? 2023-12-15 14:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對(duì)于嵌入式工程師來(lái)說(shuō),串口工具在開(kāi)發(fā)和調(diào)試過(guò)程中必不可少的利器。工具能幫助我們發(fā)送和接收串行數(shù)據(jù),進(jìn)行設(shè)備通信和調(diào)試。通過(guò)串口工具,工程師可以實(shí)時(shí)監(jiān)控串口數(shù)據(jù),查看設(shè)備是否正常工作,同時(shí)也可以通過(guò)發(fā)送特定的命令來(lái)測(cè)試設(shè)備的反應(yīng)。

傳統(tǒng)的電腦應(yīng)用-串口助手,雖然也能滿足這些需求,但它們?cè)诒憬菪陨贤艿较拗?。它需要去網(wǎng)上下載,有些還需要安裝。

3c46c47e-9582-11ee-8850-92fbcf53809c.png3c658206-9582-11ee-8850-92fbcf53809c.png3c8d6faa-9582-11ee-8850-92fbcf53809c.png

相比之下,在線串口助手的出現(xiàn)為嵌入式工程師帶來(lái)了福音。它無(wú)需安裝、無(wú)需配置,只需通過(guò)瀏覽器即可使用。此外,在線串口助手通常提供更為直觀的界面和易于操作的功能,幫助工程師更高效地進(jìn)行工作。

博主最近看到網(wǎng)上有開(kāi)發(fā)者--老大哥,開(kāi)源了一個(gè)在線串口工具,其鏈接:https://gitee.com/itldg/web-serial-debug,其開(kāi)源協(xié)議:Apache License 2.0。

通過(guò)上面的啟發(fā),博主想著也寫(xiě)一個(gè)網(wǎng)頁(yè)(R-WebEmbedded),并集成該開(kāi)源軟件,方便大家使用。

3c9dd5f2-9582-11ee-8850-92fbcf53809c.jpg

在開(kāi)發(fā)在線串口助手之前,就必須先了解什么是web serial api。

R-WebEmbedded 說(shuō)明

目前該網(wǎng)頁(yè)主要有兩個(gè)功能,開(kāi)源軟件的瀏覽和在線串口工具。

R-WebEmbedded主界面說(shuō)明--主要包含:標(biāo)題,風(fēng)火輪官方鏈接,博主的gitee,github鏈接,以及功能模塊

3cacb20c-9582-11ee-8850-92fbcf53809c.jpg

R-WebEmbedded--開(kāi)源軟件包,該界面展示了博主提交給RT-Threead的軟件包。

3cb66e00-9582-11ee-8850-92fbcf53809c.png

R-WebEmbedded - 在線串口助手,該功能集成了老大哥的開(kāi)源的串口工具。界面分為:串口配置區(qū),串口數(shù)據(jù)收發(fā)區(qū),串口快捷方式區(qū)。

3cba4e4e-9582-11ee-8850-92fbcf53809c.png

什么是Web Serial API

串口是一個(gè)雙向通信接口,允許字節(jié)發(fā)送和接收數(shù)據(jù)。

Web Serial API為網(wǎng)站提供了一種使用JavaScript對(duì)串行設(shè)備進(jìn)行讀寫(xiě)的方法。串行設(shè)備可以通過(guò)用戶系統(tǒng)上的串行端口連接,也可以通過(guò)模擬串行端口的可移動(dòng)USB藍(lán)牙設(shè)備連接。換句話說(shuō),Web Serial API通過(guò)允許網(wǎng)站與串行設(shè)備(如微控制器和3D打印機(jī))通信來(lái)連接網(wǎng)絡(luò)和物理世界。

如何使用Web Serial API

瀏覽器支持檢測(cè)

檢查瀏覽器是否支持Web Serial API,有些瀏覽器可能不支持該功能,可以選擇Edge或Chrome瀏覽器。

if(!('serial'innavigator)){
alert('當(dāng)前瀏覽器不支持串口操作,請(qǐng)更換Edge或Chrome瀏覽器')
}

打開(kāi)串口

Web Serial API在設(shè)計(jì)上是異步的。這可以防止網(wǎng)站UI在等待輸入時(shí)阻塞,這一點(diǎn)很重要,因?yàn)榇袛?shù)據(jù)可以在任何時(shí)候接收,需要一種方法來(lái)偵聽(tīng)它。要打開(kāi)串口,首先訪問(wèn)一個(gè)SerialPort對(duì)象。為此,您可以通過(guò)調(diào)用navigator.serial.requestPort()來(lái)提示用戶選擇一個(gè)串行端口,或者從navigator.serial.getPorts()中選擇一個(gè),該方法返回一個(gè)先前授予該網(wǎng)站訪問(wèn)權(quán)限的串行端口列表。

//提示用戶選擇一個(gè)串口。
constserialPort=awaitnavigator.serial.requestPort();

//獲取用戶之前授予該網(wǎng)站訪問(wèn)權(quán)限的所有串口。
constserialPort=awaitnavigator.serial.getPorts();
document.getElementById('serial-select-port').addEventListener('click',async()=>{
try{
awaitnavigator.serial.requestPort().then(async(port)=>{
serialPort?.close()
awaitserialPort?.forget()
serialPort=port
serialStatuChange(true)
})
}catch(e){
console.error('獲取串口權(quán)限出錯(cuò)'+e.toString())
}
})

3cd3d54e-9582-11ee-8850-92fbcf53809c.png

當(dāng)我選擇好了SerialPort對(duì)象之后,調(diào)用serialPort.open(),打開(kāi)串口。其中打開(kāi)串口可以指定其選項(xiàng),選項(xiàng)是有默認(rèn)值,并且是可選的。

dataBits:每幀的數(shù)據(jù)位數(shù)(7或8)。
stopBits:一幀結(jié)束時(shí)的停止位數(shù)(1或2)。
parity:校驗(yàn)?zāi)J剑梢允莕one,偶數(shù),奇數(shù)。
bufferSize:應(yīng)該創(chuàng)建的讀寫(xiě)緩沖區(qū)大小(必須小于16MB)。
flowControl:流控模式(none或hardware)。

關(guān)閉串口

當(dāng)我們不再使用串口時(shí),我們需要將串口對(duì)象關(guān)閉,調(diào)用serialPort.close()。如果串行端口的readable和writable被解鎖,則關(guān)閉該串行端口,這意味著已經(jīng)為其各自的讀寫(xiě)成員調(diào)用了releaseLock()。但是,當(dāng)使用循環(huán)從串行設(shè)備連續(xù)讀取數(shù)據(jù)時(shí),端口Readable將一直被鎖定,直到遇到錯(cuò)誤。在這種情況下,調(diào)用reader.cancel()將強(qiáng)制reader.read()立即解析為{value: undefined, done: true},從而允許循環(huán)調(diào)用reader.releaseLock()。

asyncfunctioncloseSerial(){
if(serialOpen){
serialOpen=false
reader?.cancel()
serialToggle.innerHTML='打開(kāi)串口'
disabledOptions(false)
}
}

asyncfunctionreadData(){
while(serialOpen&&serialPort.readable){
reader=serialPort.readable.getReader()
try{
while(true){
const{value,done}=awaitreader.read()
if(done){
break
}
dataReceived(value)
}
}catch(error){
}finally{
reader.releaseLock()
}
}
awaitserialPort.close()
}

串口讀數(shù)據(jù)

Web Serial API中的輸入流由streams API處理。

串口連接建立之后,SerialPort對(duì)象的readable屬性返回ReadableStream。這些將用于從串行設(shè)備接收數(shù)據(jù), 其使用Uint8Array實(shí)例進(jìn)行數(shù)據(jù)傳輸。

當(dāng)新數(shù)據(jù)從串行設(shè)備到達(dá)時(shí),port.readable.getReader().read()異步返回兩個(gè)屬性:value和一個(gè)done的布爾值。如果done為真,則串行端口已經(jīng)關(guān)閉,或者沒(méi)有更多的數(shù)據(jù)輸入。調(diào)用port.readable.getReader()創(chuàng)建一個(gè)讀取器并將其鎖定為readable。當(dāng)可讀被鎖定時(shí),串口不能被關(guān)閉。

asyncfunctionreadData(){
while(serialOpen&&serialPort.readable){
reader=serialPort.readable.getReader()
try{
while(true){
const{value,done}=awaitreader.read()
if(done){
break
}
dataReceived(value)
}
}catch(error){
}finally{
reader.releaseLock()
}
}
awaitserialPort.close()
}

串口寫(xiě)數(shù)據(jù)

Web Serial API中的輸出流由streams API處理。

串口連接建立之后,SerialPort對(duì)象的writable屬性返回WritableStream。這些將數(shù)據(jù)發(fā)送到串行設(shè)備, 其使用Uint8Array實(shí)例進(jìn)行數(shù)據(jù)傳輸。

要將數(shù)據(jù)發(fā)送到串行設(shè)備,請(qǐng)將數(shù)據(jù)傳遞到port.writable.getWriter().write()。在port.writable. getwriter()上調(diào)用releaseLock()是為了稍后關(guān)閉串口。

串口工具提供了hex和字符串發(fā)送格式。

asyncfunctionsendHex(hex){
constvalue=hex.replace(/s+/g,'')
if(/^[0-9A-Fa-f]+$/.test(value)&&value.length%2===0){
letdata=[]
for(leti=0;i

總結(jié)

在線串口助手提供了更佳便捷的開(kāi)發(fā)模式,無(wú)需下載安裝串口助手。

R-WebEmbedded - 在線嵌入式工具,其登錄網(wǎng)站https://ricechen0.gitee.io/r-web-embedded/

R-WebEmbedded - 在線嵌入式工具開(kāi)源代碼鏈接https://gitee.com/RiceChen0/r-web-embedded

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5200

    文章

    20481

    瀏覽量

    334546
  • 串***具
    +關(guān)注

    關(guān)注

    1

    文章

    9

    瀏覽量

    8174
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    KM在線監(jiān)測(cè)實(shí)現(xiàn)設(shè)備高效管理#在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2026年02月27日 14:24:25

    M4-R1 開(kāi)源鴻蒙(OpenHarmory)開(kāi)發(fā)板丨串口調(diào)試助手實(shí)戰(zhàn)案例

    支持與高集成度設(shè)計(jì),成為開(kāi)發(fā)者體驗(yàn)與學(xué)習(xí)鴻蒙系統(tǒng)的理想平臺(tái)。無(wú)論是智慧家居、教學(xué)實(shí)驗(yàn),還是設(shè)備通信,M4-R1都能提供穩(wěn)定可靠的開(kāi)發(fā)環(huán)境。本次分享的實(shí)戰(zhàn)案例——串口
    的頭像 發(fā)表于 12-31 11:16 ?8697次閱讀
    M4-<b class='flag-5'>R</b>1 開(kāi)源鴻蒙(OpenHarmory)開(kāi)發(fā)板丨<b class='flag-5'>串口</b>調(diào)試助手實(shí)戰(zhàn)案例

    串口調(diào)試步驟(適合免驅(qū)動(dòng)的232串口設(shè)備)

    密碼切換到root超級(jí)管理下 apt update 更新插件 apt-get install cutecom 安裝系統(tǒng)自帶的串口調(diào)試工具 cutecom 輸入串口測(cè)試的指令會(huì)彈出一個(gè)圖形界面如下圖 32
    的頭像 發(fā)表于 12-17 17:23 ?1471次閱讀
    <b class='flag-5'>串口</b>調(diào)試步驟(適合免驅(qū)動(dòng)的232<b class='flag-5'>串口</b>設(shè)備)

    KM在線監(jiān)測(cè)方案保障水泵安全生產(chǎn)#在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2025年11月28日 09:18:13

    DigiKey 推出業(yè)界首款電源配置工具 使用在線工具一鍵獲取電源解決方案,省時(shí)省力,高效提速設(shè)計(jì)過(guò)程

    。 使用 DigiKey 全新的在線電源配置工具,幫助工程師、設(shè)計(jì)師和系統(tǒng)集成商節(jié)省時(shí)間,加快設(shè)計(jì)過(guò)程。 這款直觀的在線工具專為工程師、設(shè)計(jì)師和系統(tǒng)集成商開(kāi)發(fā),通過(guò)快速選擇輸出、電壓、
    的頭像 發(fā)表于 11-27 10:50 ?542次閱讀
    DigiKey 推出業(yè)界首款電源配置<b class='flag-5'>工具</b> 使用<b class='flag-5'>在線</b><b class='flag-5'>工具</b>一鍵獲取電源解決方案,省時(shí)省力,高效提速設(shè)計(jì)過(guò)程

    有沒(méi)有工具可以測(cè)試電能質(zhì)量在線監(jiān)測(cè)裝置的采樣率?

    測(cè)試電能質(zhì)量在線監(jiān)測(cè)裝置的采樣率需要結(jié)合硬件工具、軟件分析和標(biāo)準(zhǔn)信號(hào)注入,以下是經(jīng)過(guò)驗(yàn)證的專業(yè)工具及實(shí)操方案: 一、核心工具與測(cè)試方法 1. 高精度標(biāo)準(zhǔn)信號(hào)源(必備) 通過(guò)模擬已知頻率
    的頭像 發(fā)表于 11-07 14:07 ?703次閱讀
    有沒(méi)有<b class='flag-5'>工具</b>可以測(cè)試電能質(zhì)量<b class='flag-5'>在線</b>監(jiān)測(cè)裝置的采樣率?

    有哪些工具可以用于電能質(zhì)量在線監(jiān)測(cè)裝置時(shí)鐘模塊自動(dòng)同步異常的檢測(cè)?

    檢測(cè)電能質(zhì)量在線監(jiān)測(cè)裝置時(shí)鐘模塊自動(dòng)同步異常,需根據(jù)同步方式(PTP/IEEE 1588、GPS / 北斗、NTP)選擇針對(duì)性工具,以下是覆蓋硬件、軟件、協(xié)議分析的全維度工具方案: 一、通用
    的頭像 發(fā)表于 10-22 14:26 ?429次閱讀

    怎樣確保自動(dòng)化工具在電能質(zhì)量在線監(jiān)測(cè)裝置的安全防護(hù)檢查中的準(zhǔn)確性?

    ? 確保自動(dòng)化工具在電能質(zhì)量在線監(jiān)測(cè)裝置安全防護(hù)檢查中的準(zhǔn)確性,需圍繞 “ 工具本質(zhì)可靠性、場(chǎng)景適配性、結(jié)果可驗(yàn)證性、全生命周期管控 ” 四大核心,從工具選型、校準(zhǔn)溯源、算法優(yōu)化、配置
    的頭像 發(fā)表于 09-23 17:42 ?627次閱讀

    破解平壓平模切機(jī)監(jiān)測(cè)難題!KMPHM在線監(jiān)測(cè)方案大揭秘 #在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2025年09月16日 16:26:25

    如何利用外部校驗(yàn)工具驗(yàn)證電能質(zhì)量在線監(jiān)測(cè)裝置的準(zhǔn)確性?

    利用外部校驗(yàn)工具驗(yàn)證電能質(zhì)量在線監(jiān)測(cè)裝置(以下簡(jiǎn)稱 “監(jiān)測(cè)裝置”)準(zhǔn)確性的核心邏輯是:通過(guò) “標(biāo)準(zhǔn)信號(hào)源” 或 “高精度參考設(shè)備” 提供已知的、準(zhǔn)確的電能參數(shù),將監(jiān)測(cè)裝置的測(cè)量值與標(biāo)準(zhǔn)值進(jìn)行對(duì)比
    的頭像 發(fā)表于 09-11 17:24 ?831次閱讀
    如何利用外部校驗(yàn)<b class='flag-5'>工具</b>驗(yàn)證電能質(zhì)量<b class='flag-5'>在線</b>監(jiān)測(cè)裝置的準(zhǔn)確性?

    有哪些工具可以輔助進(jìn)行電能質(zhì)量在線監(jiān)測(cè)裝置的數(shù)據(jù)驗(yàn)證?

    輔助電能質(zhì)量在線監(jiān)測(cè)裝置數(shù)據(jù)驗(yàn)證的工具可分為標(biāo)準(zhǔn)源設(shè)備、現(xiàn)場(chǎng)校驗(yàn)儀器、數(shù)據(jù)分析軟件、自動(dòng)化測(cè)試平臺(tái)四大類,覆蓋從信號(hào)模擬、實(shí)時(shí)監(jiān)測(cè)到數(shù)據(jù)驗(yàn)證的全流程。以下結(jié)合行業(yè)實(shí)踐與搜索資源,詳細(xì)說(shuō)明各類工具
    的頭像 發(fā)表于 09-04 12:07 ?559次閱讀
    有哪些<b class='flag-5'>工具</b>可以輔助進(jìn)行電能質(zhì)量<b class='flag-5'>在線</b>監(jiān)測(cè)裝置的數(shù)據(jù)驗(yàn)證?

    KM告訴你 人工監(jiān)測(cè)VS在線監(jiān)測(cè) 誰(shuí)才是效率王者?#在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2025年08月15日 10:06:36

    KM在線監(jiān)測(cè)標(biāo)桿計(jì)劃招募中#在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2025年07月25日 13:41:08

    KMPHM在線監(jiān)測(cè)系統(tǒng) 讓設(shè)備故障無(wú)處遁形#在線監(jiān)測(cè)#振動(dòng)在線監(jiān)測(cè)

    在線監(jiān)測(cè)
    KM預(yù)測(cè)性維護(hù)專家
    發(fā)布于 :2025年05月22日 16:30:08

    設(shè)計(jì)評(píng)審利器——在線評(píng)審工具ReviewHub

    設(shè)計(jì)評(píng)審利器——在線評(píng)審工具ReviewHub傳統(tǒng)的評(píng)審會(huì)議模式,有著諸多挑戰(zhàn):評(píng)審人員時(shí)間難以統(tǒng)一?會(huì)議記錄過(guò)于繁瑣?如何快速將評(píng)審內(nèi)容與設(shè)計(jì)圖紙進(jìn)行有效整合?如何妥善保存評(píng)審記錄?在科技飛速發(fā)展
    的頭像 發(fā)表于 03-21 11:02 ?863次閱讀
    設(shè)計(jì)評(píng)審利器——<b class='flag-5'>在線</b>評(píng)審<b class='flag-5'>工具</b>ReviewHub