-
急!电路板通过usb集线器连接电脑后无法通信
现象: 1. 自用的一块电路板直接连接电脑,能够正常收发指令,但是如果通过集线器连接电脑,就每次都会在write时出现timeout错误; 2. 电脑是win10系统,主板是清华同方B450M-HDV,这个型号的台式机只有一台,但是是客户指定的一个测试电脑,没办法更换,不过电路板在其他型号的电脑上是可以连接集线器通信的; 做过的一些测试: 1. 更换不同品牌的集线器,问题仍然出现; 2. 让集线器连接到电脑的不同usb口,包括usb2.0和usb3.0的口,问题仍然出现; 3. 更新电脑驱动,问题仍然出现; 4. 在设备管理器中usb集线器的“电源管理”选项中取消"允许计算机关闭此设备以节省电源",问题仍然出现; 请教一下各位大佬: 有没有什么思路能够定位到这台测试电脑是哪方面出了问题?有没有可能通过修改电路板的硬件或嵌入式程序解决这个问题?
1165浏览量 4回复量 关注量 -
哪里有CH32F103 usb host 支持HID设备的例程
最近一个案子想用CH32F103的usb host功能,从官网下载到的例程中发现usb host没有支持usb hid设备。难道这样的通用功能模块都不能公开吗??想支持国产真有点难?请教各位大神怎么解,多谢
3614浏览量 2回复量 关注量 -
GD32E103使用USB问题
[i=s] 本帖最后由 baster11 于 2021-9-3 23:21 编辑 [/i] 我用开发包里的例子custom_hid,把CUSTOMHID_IN_EP改为EP2_IN,发送数据给主机端就有问题,有人知道是什么原因吗?下图是PC端通过USBlyzer抓取的包 [attach]1751128[/attach]
3634浏览量 1回复量 关注量 -
为什么按下S5后定时器没有打开去掉nowshidu=dat_rd1*20就可以了
#include
#include"ds1302.h" #include"iic.h" sbit S7=P3^0; sbit S6=P3^1; sbit S5=P3^2; sbit S4=P3^3; unsigned char dat_rd2; unsigned char kaiguan=0; unsigned char shidu=50; //初始湿度 unsigned char nowshidu; //当前湿度 unsigned char code table[]={0xc0,0xf9,0xA4,0xB0,0x99,0x92,0x82,0xF8, 0x80,0x90,0x88,0x83,0xA7,0xA1,0x86,0x8E,0xbf,0x7f}; unsigned char write[]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c}; unsigned char read[]={0x81,0x83,0x85,0x87,0x89,0x8b,0x8d}; unsigned char Time[]={0x16,0x30,0x08,0x02,0x16,0x02,0x21}; void delayms(unsigned char x) { unsigned char i; while(x--) { for(i=0;i<113;i++); } } void select (unsigned char n) { switch(n) { case 4: P2=(P2&0x1f)|0x80; break; case 5: P2=(P2&0x1f)|0xa0; break; case 6: P2=(P2&0x1f)|0xc0; break; case 7: P2=(P2&0x1f)|0xe0; break; } } void guanbi() { select(5); P0=0x00; select(4); P0=0xff; } void DS1302_write() { unsigned char i; Ds1302_Single_Byte_Write(0x8e,0x00); for(i=0;i<7;i++) { Ds1302_Single_Byte_Write(write[i],Time[i]); } Ds1302_Single_Byte_Write(0x8e,0x80); } void DS1302_read() { unsigned char i; for(i=0;i<7;i++) { Time[i]=Ds1302_Single_Byte_Read(read[i]); } } void read_rd2() { IIC_Start(); IIC_SendByte(0x90); IIC_WaitAck(); IIC_SendByte(0x03); IIC_WaitAck(); IIC_Start(); IIC_SendByte(0x91); IIC_WaitAck(); dat_rd2=IIC_RecByte(); IIC_WaitAck(); IIC_Ack(0); IIC_Stop(); } void shuma(unsigned char pos,unsigned char date) { select(6); P0=0x01< shidu) { select(5); P0=0x40; } else if(nowshidu 3018浏览量 1回复量 关注量 -
请问一下STM32 USB如何识别手机 sos
[color=#333333][backcolor=rgb(255, 255, 255)][font=微软雅黑][size=16px]想问下,使用USB标准库,做HID设备,如何识别主机是PC,还是安卓[/size][/font][/backcolor][/color][color=rgb(65, 131, 196)][backcolor=rgb(255, 255, 255)][font=微软雅黑][size=16px]手机[/size][/font][/backcolor][/color][color=#333333][backcolor=rgb(255, 255, 255)][font=微软雅黑][size=16px],平板;抓了数据帧,没法辨别,求识别方法[/size][/font][/backcolor][/color]
822浏览量 0回复量 关注量 -
CH579 TMOS问题
void TMOS_InitTasks( void ) { UINT8 taskID = 0; /* tmos Task */ TMOS_Init( taskID++ ); /* Hal Task */ Hal_Init( taskID++ ); //硬件初始化 /* LL Task */ LL_Init( taskID++ ); /* L2CAP Task */ L2CAP_Init( taskID++ ); /* GAP Task */ GAP_Init( taskID++ ); /* GATT Task */ GATT_Init( taskID++ ); /* SM Task */ SM_Init( taskID++ ); GAPBondMgr_Init( taskID++ ); GATTServApp_Init( taskID++ ); /* Role */ GAPRole_PeripheralInit( taskID++ ); /* hid */ HidDev_Init(taskID++); /* Application */ HidEmu_Init(taskID++); //USBHID task UsbHid_Init(taskID++); } 上面的函数上面时候执行的?原理什么的有人能解惑一下吗
1479浏览量 4回复量 关注量