資料介紹
描述
描述
OSCUP是一種開源 UART 協(xié)議,專為與 ESP32 ARM 處理器配合使用而設(shè)計(jì)。詳細(xì)記錄的代碼有助于弄清楚如何在 UART 端口上實(shí)現(xiàn)自定義協(xié)議。使用此協(xié)議,您可以傳輸和接收由固定前導(dǎo)碼跟蹤的數(shù)據(jù)。它為每個(gè)發(fā)送的數(shù)據(jù)包實(shí)現(xiàn) ACK 和 NACK,以管理錯(cuò)誤或丟失的數(shù)據(jù)包。
怎么運(yùn)行的
它依賴于 Espressiff 提供的原始庫,例如 /device/uart.h 用于連接低級(jí)硬件和功能。該協(xié)議提供兩個(gè)功能write,read用于發(fā)送和接收數(shù)據(jù)。當(dāng)您創(chuàng)建一個(gè)新的 Oscup 對(duì)象時(shí),您需要向它傳遞一個(gè) ID,該 ID 用于跟蹤發(fā)送數(shù)據(jù)包的設(shè)備。可選地,Oscup 對(duì)象可以被實(shí)例化,指定 UART 端口和相關(guān)的 UART TX 引腳和 UART RX 引腳。默認(rèn)情況下,通信發(fā)生在 UART 0,或者更確切地說是 USB 端口。
事實(shí)上,可以使用 OSCUP 進(jìn)行計(jì)算機(jī)和 ESP32 之間或兩個(gè) ESP32 之間的通信。
命令
每次協(xié)議在 UART 上寫入數(shù)據(jù)時(shí),它都會(huì)在數(shù)據(jù)包中插入一條命令。該命令是強(qiáng)制性的,否則您可能會(huì)問自己為什么要使用協(xié)議(只需使用 arduino Serial)。顯然,在接收方,您必須區(qū)分接收到的命令。有可用的 4 個(gè)主要命令:
-
SHARE:此命令表示發(fā)送方只想與接收方共享此數(shù)據(jù)(出于次要原因)。如果您只想在其他設(shè)備上打印數(shù)據(jù),則可以使用它。 -
CONFIRM:此命令表示將發(fā)送的數(shù)據(jù)是操作的結(jié)果(例如,我們按下設(shè)備 1 上的按鈕,我們將數(shù)據(jù)發(fā)送到設(shè)備 2,我們希望設(shè)備 2 不僅打印此數(shù)據(jù),而且存儲(chǔ)它們). -
ACK: 用于告訴發(fā)送方,接收方已經(jīng)收到數(shù)據(jù)包 -
NACK: 用于告訴發(fā)送方,接收方還沒有收到數(shù)據(jù)包;發(fā)件人將嘗試再次發(fā)送 顯然,您可以配置您喜歡執(zhí)行每個(gè)命令的操作。我們建議不要使用 ACK 和 NACK,至于其他兩個(gè),前面的指示只是我們?yōu)槭褂眠@兩個(gè)命令定義的指南。另外,你可以在arduino上配置新命令(command = uint8_t),直接在write函數(shù)中發(fā)送
公共職能
-
begin: 初始化 UART 參數(shù)并將其轉(zhuǎn)發(fā)給控制硬件。必須在 void setup() 中調(diào)用它。它以波特率作為唯一的輸入?yún)?shù),它將決定通信波特率。 -
write:寫函數(shù)接受一個(gè)命令“用戶定義”,有效負(fù)載的長度和有效負(fù)載,其長度固定為 40 字節(jié)。此函數(shù)將此數(shù)據(jù)寫入 UART 并返回錯(cuò)誤代碼。 -
read:它讀取傳入的數(shù)據(jù)并將它們插入 packet_t 結(jié)構(gòu)中,該結(jié)構(gòu)在 .h 文件中定義。如果一切正常,它返回讀取緩沖區(qū)的長度,否則返回負(fù)錯(cuò)誤。 -
get_timer: 返回定時(shí)器的計(jì)數(shù)器 -
get_APB_clk: 返回 APB 的頻率。通常 APB 用于設(shè)置嵌入式處理器上的外設(shè)頻率。
貢獻(xiàn)
我們是 Daniel 和 Riccardo,都是大學(xué)的 AI 學(xué)生。我們開發(fā)了這個(gè)協(xié)議來從 ESP32 獲取數(shù)據(jù)來做 AI 的事情(在我們的 Git Repo 上查看 FiremanSam)。
?
?
- labview超快自定義控件制作和普通自定義控件制作 13次下載
- 自定義神經(jīng)網(wǎng)絡(luò)對(duì)象識(shí)別開源分享
- labview自定義控件 18次下載
- 自定義視圖組件教程案例 14次下載
- Labview自定義右鍵快捷菜單功能實(shí)用小技巧 26次下載
- C#與STM32自定義通信協(xié)議
- NRF52832在OTA基礎(chǔ)上,同時(shí)支持UART升級(jí)(自定義串口協(xié)議、可遠(yuǎn)程升級(jí))
- ESP32 之 ESP-IDF 教學(xué)(九)—— 串口通信(UART)
- 制作 NodeMCU ESP32 自定義固件
- 串口屏LUA教程10-自定義串口指令
- Xilinx基本自定義OpenRISC系統(tǒng)硬件教程 93次下載
- 1602自定義字符 1次下載
- 自定義函數(shù)測(cè)試學(xué)習(xí)工程
- 基于自定義協(xié)議的網(wǎng)絡(luò)地理信息系統(tǒng)
- matlab自定義函數(shù)調(diào)用的方法
- TSMaster 自定義 LIN 調(diào)度表編程指導(dǎo) 714次閱讀
- 基于YOLOv8實(shí)現(xiàn)自定義姿態(tài)評(píng)估模型訓(xùn)練 2895次閱讀
- 添加自定義屬性控制fridaserver啟動(dòng)和停止 1785次閱讀
- 一個(gè)小而巧的自定義嵌入式軟件通信協(xié)議 907次閱讀
- 什么是自定義序列 1221次閱讀
- 自定義特性能做什么? 846次閱讀
- 如何自定義函數(shù)或局部腳本 1481次閱讀
- 如何在Vivado中更改自定義的Interface 2947次閱讀
- 深入理解RPC自定義網(wǎng)絡(luò)協(xié)議 2601次閱讀
- 三種自定義彈窗UI組件封裝的實(shí)現(xiàn) 3191次閱讀
- 基于一個(gè)micro USB連接器串行IC對(duì)ESP32芯片實(shí)現(xiàn)編程 3301次閱讀
- Glib創(chuàng)建自定義事件源的方法 3028次閱讀
- 如何給EOS賬號(hào)設(shè)置自定義權(quán)限 1496次閱讀
- erlang如何自定義_ERLANG環(huán)境搭建 1527次閱讀
- LCD1602自定義點(diǎn)陣字符詳解 1.3w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論