我很喜欢 SEGGER eMusb-Device,因为它的实现方式非常全面。 但是,我想退出 HAL,我观察到 SEGGER eMusb-Device 严重依赖它。 我有办法在没有 HAL 的情况下继续使用 SEGGER eMusb-Device 吗? 或者,有谁知道另一个适合 CDC 的 USB 库/驱动程序?
共2条
1/1 1 跳转至页
如何在没有HAL的情况下使用SEGGEReMusb-Device吗?

2楼
如果你想在没有HAL的情况下使用SEGGER eMusb-Device,你可以按照以下步骤进行操作:
1. 在工程中禁用HAL:在工程配置文件中,将HAL库的链接和编译选项注释掉或者从Makefile中移除相关的HAL文件。
2. 定义你自己的USB中断处理函数:SEGGER eMusb-Device需要一些与USB相关的中断处理函数来处理传输和状态变化。你可以通过定义自己的中断处理函数来替代这些HAL中断处理函数。
3. 实现必要的USB功能:根据你的应用需求,你可能需要实现一些基本的USB功能,比如初始化和配置USB控制器、处理USB传输请求和数据包等。
4. 配置SEGGER eMusb-Device库:使用SEGGER eMusb-Device配置工具来配置你的USB设备,包括设备描述符、端点配置、接口设置等。
5. 链接SEGGER eMusb-Device库:将SEGGER eMusb-Device库链接到你的应用程序中,并在代码中初始化和配置USB设备。
要找到另一个适合CDC的USB库/驱动程序,你可以考虑一些开源USB库,如libusb或者TinyUSB。这些库提供了一种独立于硬件的方式来处理USB通信,而不需要依赖特定的HAL。你可以根据你的需求选择适合的库并进行集成。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏50分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 | |
【分享评测,赢取加热台】教你五分钟本地部署蒸馏版本的DeepSeekR1-7B被打赏12分 | |
【换取手持示波器】蓝牙音箱更换电池被打赏8分 | |
【换取手持示波器】鼠标更换微动开关被打赏10分 | |
【我要开发板】4.传感器移植被打赏50分 |