本人准备使用avr atmega64 + ch372做一个模拟键盘,在过程中遇到了问题。
目前主机可以成功请求设备描述符,但设置地址时,出现异常的中断,不知道为什么。 以下是我打印出来的log:
Program Starting ... CH375 init ok return = 0x51 Start loop mCH375Interrupt InterruptStatus = 0x2 default mCH375Interrupt InterruptStatus = 0x2 default mCH375Interrupt InterruptStatus = 0x2 default mCH375Interrupt InterruptStatus = 0x2 default mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xF default 总线复位 mCH375Interrupt InterruptStatus = 0xC 端点0setup中断 长度 = 8 内容 = 0x80 0x6 0x0 0x1 0x0 0x0 0x40 0x0 获取设备描述符 发送长度: 8 , 发送内容: 0x12 0x1 0x10 0x1 0x0 0x0 0x0 0x8 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 发送长度: 8 , 发送内容: 0x3c 0x41 0x3 0x20 0x0 0x2 0x1 0x2 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 发送长度: 2 , 发送内容: 0x3 0x1 mCH375Interrupt InterruptStatus = 0x0 端点0写中断 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 mCH375Interrupt InterruptStatus = 0x7 default 总线复位 mCH375Interrupt InterruptStatus = 0xC 端点0setup中断 长度 = 8 内容 = 0x80 0x6 0x0 0x1 0x0 0x0 0x40 0x0 获取设备描述符 发送长度: 8 , 发送内容: 0x12 0x1 0x10 0x1 0x0 0x0 0x0 0x8 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 发送长度: 8 , 发送内容: 0x3c 0x41 0x3 0x20 0x0 0x2 0x1 0x2 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 获取描述符 发送长度: 2 , 发送内容: 0x3 0x1 mCH375Interrupt InterruptStatus = 0x0 端点0写中断 mCH375Interrupt InterruptStatus = 0xC 端点0setup中断 长度 = 8 内容 = 0x0 0x5 0x1 0x0 0x0 0x0 0x0 0x0 DEF_USB_SET_ADDRESS mCH375Interrupt InterruptStatus = 0xC 端点0setup中断 长度 = 0 内容 = --------------------------ch375 发生错误 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x8 端点0读中断 设置地址: 0x1 mCH375Interrupt InterruptStatus = 0x7 default 总线复位 mCH375Interrupt InterruptStatus = 0x7 default 总线复位 mCH375Interrupt InterruptStatus = 0x7 default 总线复位 mCH375Interrupt InterruptStatus = 0x7
请教达人如何修改,为什么?