找回密码
 立即注册
查看: 781|回复: 1

STC8H的USB通讯可以指定端点接收和发送数据吗?

[复制链接]
  • TA的每日心情
    开心
    昨天 08:32
  • 签到天数: 95 天

    [LV.6]常住居民II

    70

    主题

    611

    回帖

    1888

    积分

    超级版主

    积分
    1888
    QQ
    发表于 2023-1-31 08:53:44 | 显示全部楼层 |阅读模式

    网友问:
    使用STC8H8K64U-45MHz-TSSOP20中USB通讯,官方例程均只配置端点1进行数据传送。


    有几个问题想请教各位高手:
    1、上位机向下位机发送数据,如何指定某个端点进行通讯?
    2、下位机向上位机发送数据,配置其他端点如端点2进行通讯,为什么无法实现?
    #define EN_EP2OUT


    usb_write_fifo(2, pdat, 64);//

    例程使用  STC8H8K64U-45MHz-LQFP64-DIP64-DEMO-CODE\19-HID(Human Interface Device)协议范例
    热线19952583534
    www.STCAI.com
    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    7 天前
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    16

    主题

    724

    回帖

    2578

    积分

    超级版主

    积分
    2578
    发表于 2023-1-31 12:46:02 | 显示全部楼层
    本帖最后由 zhp 于 2023-1-31 12:47 编辑

    Q1、上位机向下位机发送数据,如何指定某个端点进行通讯?
    A1:上位机向下位机发送数据,具体选择哪个端点,一般由驱动程序决定
            比如:HID的设备描述符中定义了EP1为IN端点,EP2为OUT端点,
                     上位机执行ReadFile时,就会自动从EP1管道读取数据
                     执行WriteFile时会自动将数据写如到EP2管道
                     执行SetFeature或者GetFeature则强制从控制端点EP0读写数据
                     上面的操作基本都是HID的驱动程序HIDUSB.SYS自动处理

    Q2、下位机向上位机发送数据,配置其他端点如端点2进行通讯,为什么无法实现?
    A2:下位机向上位机发送数据,除了需要配置端点2外,还需要修改设备描述符
            修改设备描述符的目的是告诉上位机,我接下来要从哪个端点发数据
            在代码“usb_desc.c”中在如下位置修改
             1.png
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-5-18 20:04 , Processed in 0.055847 second(s), 37 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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