痞子衡嵌入式半月刊: 第 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主頁、知乎主頁、微信公眾號 平臺上。
微信搜尋"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。