18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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?,可以是none,偶數(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)注

    5177

    文章

    20003

    瀏覽量

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

    關(guān)注

    1

    文章

    9

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    怎樣確保自動(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 ?324次閱讀

    破解平壓平模切機(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 ?501次閱讀
    如何利用外部校驗(yàn)<b class='flag-5'>工具</b>驗(yàn)證電能質(zhì)量<b class='flag-5'>在線</b>監(jiān)測(cè)裝置的準(zhǔ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 ?537次閱讀
    設(shè)計(jì)評(píng)審利器——<b class='flag-5'>在線</b>評(píng)審<b class='flag-5'>工具</b>ReviewHub

    請(qǐng)問(wèn)有什么好用的串口工具嗎?

    有什么好用的串口工具嗎,求推薦
    發(fā)表于 03-10 06:28

    RFID工具柜DW-G104R|智能存儲(chǔ),便捷高效

    一、 行業(yè)背景 RFID智能工具柜(DW-G104R)RFID工具管理柜是一種結(jié)合RFID技術(shù)和智能柜設(shè)備的新型工具管理設(shè)施,通過(guò)自動(dòng)化管理可以提高
    的頭像 發(fā)表于 03-03 10:24 ?491次閱讀
    RFID<b class='flag-5'>工具</b>柜DW-G104<b class='flag-5'>R</b>|智能存儲(chǔ),便捷高效

    通過(guò)RS232對(duì)MSC1210Y3進(jìn)行在線燒錄,可以用什么工具軟件?

    通過(guò)RS232對(duì)MSC1210Y3進(jìn)行在線燒錄,可以用什么工具軟件
    發(fā)表于 01-23 07:57

    【正點(diǎn)原子STM32H7R3開(kāi)發(fā)套件試用體驗(yàn)】按鍵、串口通信

    【正點(diǎn)原子STM32H7R3開(kāi)發(fā)套件試用體驗(yàn)】按鍵、串口通信 本文介紹了單片機(jī)開(kāi)發(fā)板學(xué)習(xí)中常見(jiàn)且重要的 按鍵輸入 和 串口通信 ,通過(guò)原理講解與實(shí)際代碼控制,結(jié)合正點(diǎn)原子STM32H7R
    發(fā)表于 12-30 16:53

    PI Expert在線設(shè)計(jì)工具新增功能

    PI Expert是我們值得信賴的在線設(shè)計(jì)工具,其性能和功能仍在不斷增強(qiáng)當(dāng)中。
    的頭像 發(fā)表于 12-19 09:47 ?1014次閱讀

    貝思科爾ReviewHub在線評(píng)審工具開(kāi)放限時(shí)免費(fèi)試用名額,快速領(lǐng)取!

    深圳市貝思科爾軟件技術(shù)有限公司(以下簡(jiǎn)稱:貝思科爾)一直致力于為行業(yè)提供創(chuàng)新且實(shí)用的解決方案,現(xiàn)重磅推出DX-BST原理圖智能工具、XL-BST原理圖智能工具和ReviewHub在線評(píng)審工具
    的頭像 發(fā)表于 12-03 03:00 ?59次閱讀
    貝思科爾ReviewHub<b class='flag-5'>在線</b>評(píng)審<b class='flag-5'>工具</b>開(kāi)放限時(shí)免費(fèi)試用名額,快速領(lǐng)?。? />    </a>
</div>                              <div   id=

    為什么通信要使用虛擬串口串口助手?

    串口助手和虛擬串口是什么?串口助手和虛擬串口串口通信中很常見(jiàn)。串口助手是用于
    的頭像 發(fā)表于 11-15 01:04 ?4297次閱讀
    為什么通信要使用虛擬<b class='flag-5'>串口</b>和<b class='flag-5'>串口</b>助手?