完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
为了解决PIC18F45K50上的USB问题,我头撞到墙上。我用MCC 3.45配置了USB,并打开了中断。代码显然工作得很好,因为设备成功地枚举为COM端口,但是我不能让它发送或接收任何数据。我是否做正确的事,或者错过什么?这是我正在尝试的代码的一个有意义的摘录:
|
|
相关推荐
2个回答
|
|
嘿,看看你用PIC18F45K50在USB CDC的最新MCC生成版本上的代码,你的代码在我的机器上看起来像预期的那样工作。您可能想检查MCC是否使用了最新版本的USB框架Lite库V1.25.5。当你打开MCC时,这个信息在左下角的“版本”窗格中。在USB Framework Lite的当前版本中还有其他bug,我将在下面概述,但是您的项目在我的机器上工作而没有纠正这些bug,这让我相信您有一个库的前一个版本,其中固定地址内存没有正确设置要查看的其他bug:在“u***_descriptors.c”文件中,需要将端点1的大小从0x08更改为0x0A/*端点描述符*//端点描述符*///sizeof(USB_EP_EP_DSC)、DSC_EP_EP_DSC、DSC_EP_EP_EP_EP_EP_EP_EP_EP_EP_DSC)、DSC_EP_EP_EP_EP_EP_EP_EP_EP_EP_EP_EP_50系列、INT、CDC_INT_INT_INT_INT_EP_EP_SIZE_SIZE_SIZE_SIZE,0x02,0x02描述ptor_EP01_IN、//EndpointAddress_INTERRUPT、//Attributes 0x0A、0x00、//size 0x02、//Interval这一个是更多的改进,但是如果使用intosc,请确保启用活动时钟调优。要在MCC中这样做,转到“系统模块”、“寄存器”选项卡,并滚动到“Acton”寄存器。设置“ACTEN”到“启用”和“ATCSRC”到“全速USB事件”。这将启用基于主机USB时钟的主动时钟调谐,并且可以在某些应用中消除对晶体的需要。谢谢,罗伊
|
|
|
|
这确实奏效了。非常感谢!微笑:
|
|
|
|
只有小组成员才能发言,加入小组>>
5003 浏览 9 评论
1921 浏览 8 评论
1850 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3066 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2143 浏览 5 评论
571浏览 1评论
427浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
473浏览 0评论
366浏览 0评论
IPECMD命令烧录AVR128DA48芯片,报找不到芯片错误
851浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-15 09:19 , Processed in 1.104572 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191