对stc32g12k128单片机使用的cdc通讯的理解 只看楼主

stc32g12k128单片机是一款价格便宜,性能强悍的mcu。最近对它采用的cdc通讯认真的关注了一下,有几点认识与初学者分享:、
一、cdc是什么?
无论中文怎么翻译,cdc就是cdc(好像没说)。初学者不必深究。从理论层面上讲,它是一种通讯协议,根据这种协议,人们可以开发具体的通讯方式(构建渠道)。
二、cdc有什么用?
1、cdc支持硬件ch340下的串口通讯。
2、cdc支持硬件USB下的USB通讯。
三、cdc怎么用?
1、在硬件ch340下,当串口用,包括进行串口初始化,调用串口发送指令。
2、在硬件USB下,当USB口用,包括USB初始化,使用USB发送程序。(我还没学会USB,所以这一句是猜测,但我真不希望官方一定把它说成是串口,容易引起误解)
以上是一个新人(或者说是外行)对cdc的认识,说的不对的地方希望高人用大家能听懂的语言做一下更正。谢谢。

  • ID:262 沙发
  • 2022-10-9 19:31
好资料,51黑有你更精彩!!!
引用: heicad 发表于 2022-10-9 19:31
好资料,51黑有你更精彩!!!

谢谢,估计有不少人在这个问题上很受伤,所以我出来说明自己的观点。
看官方例程时钟是用24MHz,如果转成与外设串口通讯,时钟是不是用22.1184MHz对波特率友好些?
引用: whowyj 发表于 2022-10-11 16:42
看官方例程时钟是用24MHz,如果转成与外设串口通讯,时钟是不是用22.1184MHz对波特率友好些?

cdc是在用48M通讯吧,有个内部usb专用频率。
引用: 丽江春水 发表于 2022-10-12 08:30
cdc是在用48M通讯吧,有个内部usb专用频率。

USB部分是48M,STC单片机本身与PC通讯也不用考虑波特率的问题,如果是转成串口再与其他外设串口通讯呢?是不是用22.1184M比较好?
引用: whowyj 发表于 2022-10-12 18:23
USB部分是48M,STC单片机本身与PC通讯也不用考虑波特率的问题,如果是转成串口再与其他外设串口通讯呢?是 ...

11,0592M的优点是单片机定时误差比较小。也就是定时精准。对串口通讯有利,24M也有它自己的用途,比如stc32g12k128的外设工作在高速模式时,要求系统时钟是96M的整数倍关系,这就需要12M、24M这些数据了。
STC 在 准备 开源 RMB1.9的 STC8H8K64U-45MHz-TSSOP20,
1个 USB 转 2组 串口的 开源大案。
http://stcmcudata.com/OpenSource/STC-USB-2-UART-SCH-20221009.PDF 原理图已公开;
http://www.stcmcudata.com/STC8F-DATASHEET/STC8H.pdf  STC 有 USB 型 MCU 的手册
程序即将公开
A.jpg
  • B.png
引用: STC庄伟 发表于 2022-10-15 09:53
STC 在 准备 开源 RMB1.9的 STC8H8K64U-45MHz-TSSOP20,
1个 USB 转 2组 串口的 开源大案。
http://stcm ...

好东西,实验阶段需要DIP接口的芯片,以方便在洞洞板上搭电路,否则就需要一个转接板了。