《痞子衡嵌入式半月刊》 第 107 期

痞子衡發表於2024-09-08

痞子衡嵌入式半月刊: 第 107 期

這裡分享嵌入式領域有用有趣的專案/工具以及一些熱點新聞,農曆年分二十四節氣,希望在每個交節之日準時釋出一期。

本期刊是開源專案(GitHub: JayHeng/pzh-mcu-bi-weekly),歡迎提交 issue,投稿或推薦你知道的嵌入式那些事兒。

上期回顧《痞子衡嵌入式半月刊: 第 106 期》

嘮兩句

歷史上的今天:1999年9月8日,中國第一臺交流傳動內燃機車研製成功。

本期共 4 個專案,希望對你有幫助!

專案類

1、str - 一個方便直觀的C字串處理庫

這個專案旨在實現一種方便直觀的字串處理方法,靈感來自於 Luca Sas 的 YouTube 影片中的演講。專案核心思想是將字串的所有權(可以修改/構建字串)與字串的訪問或檢視(導航/分割/修剪)分離,按值返回字串,以避免指標,並且放棄對 null 終止的要求。

  • 專案地址:https://github.com/mickjc750/str

專案特點包括:

- 支援靜態或堆疊分配緩衝區,適用於不能(或不願意)使用動態記憶體分配的應用程式。
- 支援自定義分配器,適用於使用臨時分配器提高速度的應用程式。為了簡單起見,可以預設為malloc/free。
- 一套豐富的字串分割/修剪/搜尋功能。
- 一個數字解析器,用於檢查錯誤,包括範圍錯誤或無效輸入。

2、varch - 一個嵌入式C語言常用程式碼模組庫

varch(we-architecture,意為我們的框架庫)是嵌入式 C 語言常用程式碼模組庫,包含了嵌入式中常用的演算法庫, 資料結構(容器)庫, 解析器庫, 獨立C語言 std 庫, 工具庫等等。具有簡單, 通用, 高效的特點,目的為了學習以及在開發中拿來就用,提高開發效率以及程式碼可靠穩定性。

  • 專案地址:https://gitee.com/Lamdonn/varch

3、letter-shell - 一個特別適用MCU的嵌入式小型shell

letter shell 是一個 C 語言編寫的,可以嵌入在程式中的嵌入式 shell,主要面向嵌入式裝置,以 C 語言函式為執行單位,可以透過命令列呼叫,執行程式中的函式。

相對經典的 2.x 版本,letter shell 3.x 增加了使用者管理,許可權管理,以及對檔案系統的初步支援。此外 3.x 版本修改了命令格式和定義,2.x 版本的工程需要經過簡單的修改才能完成遷移。

  • 專案地址:https://gitee.com/zhang-ge/letter-shell

letter shell 3.x 主要功能有:

- 命令自動補全
- 快捷鍵功能定義
- 命令許可權管理
- 使用者管理
- 變數支援
- 代理函式和引數代理解析

4、usb-sniffer-lite - 一個基於RP2040的USB2.0分析儀

這是一個簡單的基於樹莓派 RP2040 的 USB 2.0 分析儀。它支援低速和全速模式。韌體將自己呈現為虛擬 com 埠(VCP),因此不需要額外的軟體,並且它與所有作業系統相容。

這個分析儀沒有資料包解碼功能,但是有一個優秀的線上 USB 描述符和請求解析器,它對解碼標準描述符和請求非常有幫助。編譯後的二進位制檔案需要更新 CRC 值才能被 RP2040 識別。這可以使用 bin2uf2 工具完成。

  • 專案地址:https://github.com/ataradov/usb-sniffer-lite

歡迎訂閱

文章會同時釋出到我的 部落格園主頁CSDN主頁知乎主頁微信公眾號 平臺上。

微信搜尋"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。

相關文章