完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我把CH582的接收模拟成一个USB 的HID设备,当接收到2.4G的信号后,通过USB上传到主机,现在在无线接收的位置将数据发送出去代码如下,这样USB主机无法接收到数据:
case RX_MODE_RX_DATA: { if(crc == 1) { PRINT("crc errorn"); } else if(crc == 2) { PRINT("match type errorn"); } else { //DevEP2_OUT_Deal(16);// for (int i = 0; i < 16; i++ ) { pEP2_IN_DataBuf = rxBuf; } DevEP2_IN_Deal( 16); GPIOB_InverseBits(GPIO_Pin_18); } 然而: 修改为如下代码片段则能够接收到数据: case RX_MODE_RX_DATA: { if(crc == 1) { PRINT("crc errorn"); } else if(crc == 2) { PRINT("match type errorn"); } else { DevEP2_OUT_Deal(16);// // for (int i = 0; i < 16; i++ ) // { // pEP2_IN_DataBuf = rxBuf; // } // DevEP2_IN_Deal( 16); // GPIOB_InverseBits(GPIO_Pin_18); } 已知我的DevEP2_OUT_Deal函数如下,我感觉没什么区别,不知道为什么不能接收? void DevEP2_OUT_Deal( UINT8 l ) { /* 用户可自定义 */ UINT8 i; for ( i = 0; i < l; i++ ) { pEP2_IN_DataBuf = 0x05;//pEP2_OUT_DataBuf+1; } DevEP2_IN_Deal( l ); } |
|
相关推荐
1个回答
|
|
第一个监控下,有没有进入这个判断。 其实理论上不建议这样操作,建议操作是保留原来的PHY的CB函数不变,收到RX的数据后,置标志位,另开任务启动USB——IN上传的动作。 |
|
|
|
只有小组成员才能发言,加入小组>>
518 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2901 浏览 2 评论
2397 浏览 1 评论
865浏览 2评论
683浏览 1评论
riscv-none-embed-objcopy: \'PWM_Output.elf\': No such file这个咋解决,
415浏览 1评论
518浏览 1评论
请教一下,Mounriver 编译不成功:找不到库文件,怎么整
810浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 15:46 , Processed in 1.023939 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号