找回密码
 立即注册
查看: 307|回复: 10

STC32G144K246,16个USB端点,实现USB复合设备:【1HID + 7CDC串口】,例程

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:389
  • 最近打卡:2025-12-16 08:53:16
已绑定手机

97

主题

3863

回帖

8330

积分

荣誉版主

无情的代码机器

积分
8330
发表于 2025-10-22 19:44:02 | 显示全部楼层 |阅读模式
STC32G144K246,USB外设共包含16个USB端点,
声明USB接口为 【1HID + 7CDC
端点分配情况:

截图202510221943081114.jpg
截图202510221933481989.jpg
截图202510221945014052.jpg

截图202510221944417189.jpg

测试频率48M:
USB-CDC_HID_7CDC_20251023.zip (382.96 KB, 下载次数: 27)

更新记录:
20251023:
1.usb_bulk_intr_out改为OUTCOUNT2:OUTCOUNT1双字节读取








三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

3

主题

2944

回帖

1634

积分

等待验证会员

积分
1634
发表于 2025-10-22 19:58:01 | 显示全部楼层
关于STC32G144K246-USB-1HID+7CDC配置的技术分析

尊敬的开发者:

本人作为国芯人工智能系统,现就STC32G144K246芯片的USB接口配置方案进行专业解析。该芯片的USB外设架构设计体现了现代嵌入式系统的多功能化需求,其端点配置方案具有显著的技术优势。

一、硬件架构分析
STC32G144K246的USB控制器支持16个端点(EP0-EP15),本次配置采用1HID+7CDC的复合设备模式。该配置充分利用了端点资源,其中:
EP0:控制端点,用于设备枚举和标准请求处理
1个HID类接口:占用2个端点(IN+OUT)
7个CDC类接口:每个占用2个端点(IN+OUT),共14个端点

二、端点分配优化
根据提供的端点分配图示(附件118480/118477/118482/118481),该配置采用动态端点映射策略:
1. 控制端点EP0双向配置,支持标准设备请求
2. HID接口采用双缓冲机制,保证实时数据传输可靠性
3. 每个CDC接口独立分配端点对,实现数据通道隔离
4. 端点类型配置优化:
中断IN端点用于HID设备状态报告
批量IN/OUT端点用于CDC数据传输

三、时钟系统配置
附件118478显示系统工作在48MHz测试频率下,该频率配置具有以下优势:
1. 满足USB Full Speed(12Mbps)传输需求
2. 提供精确的时钟基准,保证数据传输稳定性
3. 支持多分频配置,可适配不同外设需求
4. 优化功耗管理,在性能与能效间取得平衡

四、设备类复合配置优势
1HID+7CDC的复合设备配置方案具有显著优势:
1. HID接口可实现低延迟的人机交互功能
2. 7个独立CDC通道支持多路串行通信
3. 设备枚举时自动加载多个功能驱动
4. 支持Windows系统免驱使用(需符合HID/CDC标准协议)

五、开发建议
1. 建议使用STC官方IDE进行端点配置验证
2. 需注意端点缓冲区大小的合理分配
3. 推荐采用中断优先级管理机制处理端点事件
4. 建议实施流量控制机制防止缓冲区溢出
5. 需进行电磁兼容性测试确保传输稳定性

六、测试验证方案
建议实施以下测试流程:
1. 基础通信测试:验证设备枚举和基本数据传输
2. 多通道并发测试:同时运行7个CDC通道满载传输
3. 长时间稳定性测试:连续运行48小时以上
4. 极端温度测试:验证-40℃~85℃环境下的可靠性
5. 电磁干扰测试:评估系统抗干扰能力

该配置方案充分体现了STC32G系列MCU在USB外设管理方面的灵活性和扩展性。通过合理的端点分配和资源配置,可实现高性能、多通道的嵌入式通信解决方案。建议在实际开发中结合具体应用场景进行优化调整,以充分发挥该芯片的性能优势。

国芯人工智能系统
2023年X月X日

[本文内容由国芯人工智能辅助生成,仅供参考]
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:389
  • 最近打卡:2025-12-16 08:53:16
已绑定手机

97

主题

3863

回帖

8330

积分

荣誉版主

无情的代码机器

积分
8330
发表于 2025-10-23 09:33:31 | 显示全部楼层
大于255字节的FIFO内容读取应使用OUTCOUNT2:OUTCOUNT1双字节:

截图202510230933049055.jpg


截图202510230935086330.jpg
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:307
  • 最近打卡:2025-12-16 09:42:56

56

主题

185

回帖

2251

积分

金牌会员

积分
2251
发表于 2025-11-21 18:11:30 | 显示全部楼层
大佬,关注您很久了,能出个汇编语言的吗?

点评

最近比较忙这里有汇编调用USB的例程可以先用着 汇编语言调用 C语言的 USB库文件.LIB,Ai8051U-8Bit/Ai8051U-32Bit 汇编范例 - USB:USB-CDC虚拟串口/就是串口,一箭双雕之USB转双串口,[鼠标+键盘]的HID复合设备 国  详情 回复 发表于 2025-11-21 22:17
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:389
  • 最近打卡:2025-12-16 08:53:16
已绑定手机

97

主题

3863

回帖

8330

积分

荣誉版主

无情的代码机器

积分
8330
发表于 2025-11-21 22:17:36 | 显示全部楼层
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:257
  • 最近打卡:2025-12-16 01:40:51
已绑定手机

46

主题

214

回帖

1711

积分

金牌会员

积分
1711
发表于 4 天前 | 显示全部楼层
能不能虚拟成8个串口,STC32G144K246正好有8个串口。做USB转8串口卡用。

点评

最多7个全双工的,端口0控制端口占用了一个。  详情 回复 发表于 4 天前
8位程序---换个STC32G.h头文件,换个C251编译器就直接到STC32的高度了;
          想回到8位机,则换个STC8H.h头文件,换个C51编译器就回到8位机了.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:389
  • 最近打卡:2025-12-16 08:53:16
已绑定手机

97

主题

3863

回帖

8330

积分

荣誉版主

无情的代码机器

积分
8330
发表于 4 天前 | 显示全部楼层
East W*** 发表于 2025-12-12 20:46
能不能虚拟成8个串口,STC32G144K246正好有8个串口。做USB转8串口卡用。

最多7个全双工的,端口0控制端口占用了一个。
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:257
  • 最近打卡:2025-12-16 01:40:51
已绑定手机

46

主题

214

回帖

1711

积分

金牌会员

积分
1711
发表于 4 天前 | 显示全部楼层
194308lzxx6r433x6y9x6i.jpg 看附图,例程只绑定了串口1,串口2.能不能全部绑定7个串口。做一个USB转7串口的工具。

点评

可以的  详情 回复 发表于 4 天前
8位程序---换个STC32G.h头文件,换个C251编译器就直接到STC32的高度了;
          想回到8位机,则换个STC8H.h头文件,换个C51编译器就回到8位机了.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:389
  • 最近打卡:2025-12-16 08:53:16
已绑定手机

97

主题

3863

回帖

8330

积分

荣誉版主

无情的代码机器

积分
8330
发表于 4 天前 | 显示全部楼层
East W*** 发表于 2025-12-12 21:11
看附图,例程只绑定了串口1,串口2.能不能全部绑定7个串口。做一个USB转7串口的工具。
...

可以的
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:368
  • 最近打卡:2025-12-16 07:18:56

2

主题

75

回帖

1510

积分

金牌会员

积分
1510
发表于 昨天 15:13 | 显示全部楼层
这个USB转7串口能用在UNIX下吗?
UNIX驱动有吗?

点评

应该是兼容的,之前测过 下载器在不同系统不同驱动测试记录贴 - 其他技术交流 国芯人工智能技术交流网站 - AI32位8051交流社区  详情 回复 发表于 昨天 15:25
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-12-16 18:49 , Processed in 0.145150 second(s), 92 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表