-
solty 回答了该问题
-
中国英茂科工 回答了该问题
-
jobszheng 回答了该问题
-
sunjd 回答了该问题
GD32F105 USB 问题 赏100家园币
GD32F105USB端点OUT中断问题,核心原因很可能是将外部晶振从25MHz改为8MHz后,USB时钟没有精确配置到48MHz,这与GD32F105系列特殊的时钟树结构有关。你提到的GD32F303/103/205/407等其他型号正常,而唯独GD32F105出问题,这指向了GD32F105系列在时钟树,特别是USB时钟生成路径上的特殊性。USB模块对时钟精度要求很高,必须稳定在48MHz。当时钟配置不准时,会导致USB通信时序错乱。你提到的端点时间间隔(bInterval)改小后问题加剧或变得不稳定,正是因为更短的时间间隔对时钟精度要求更高。GD32F105(属于GD32F10X_CL系列)的时钟树,特别是PLL部分,与其他型号相比更为复杂。它需要配置PLL1和一系列分频器(如PREDV0、PREDV1)来协同工作,才能为USB提供准确的时钟。如果只修改了`HXTAL_VALUE`(外部晶振值),而没有相应调整PLL1的倍频和分频参数,USB时钟就无法达到所需的48MHz。可以按以下步骤检查和修改你的时钟配置代码:1.确认并修改晶振定义在代码中找到定义外部高速晶振(HXTAL)值的地方,确保它被设置为8MHz(8000000)。#if!definedHXTAL_VALUE#ifdefGD32F10X_CL#defineHXTAL_VALUE((uint32_t)8000000)//确保这里是8000000#else#defineHXTAL_VALUE((uint32_t)8000000)#endif#endif2.调整PLL配置参数这是最关键的一步。你需要修改PLL的倍频和分频参数,确保整个时钟树,特别是通向USB的时钟,最终能产生精确的48MHz。由于官方库通常默认使用25MHz晶振的配置,你需要手动调整。对于8MHz晶振,你需要重点关注并修改system_clock_xxx_hxtal()这类函数中关于PLL1的配置部分。具体的配置参数(倍频系数、分频值)需要根据你所期望的系统主频来计算。3.检查并计算USB时钟路径使用GD32F105的参考手册和数据手册中的时钟树图,仔细检查从HXTAL->PLL1->PREDV分频器->主PLL->USB时钟的整条路径。确保所有倍频和分频参数的组合,最终能让USB时钟准确地锁定在48MHz。
1781浏览 14回复 0关注 -
中国英茂科工 回答了该问题
-
dffzh 回答了该问题
GD32E230用KEIL编译后运行异常
好的,解决就好;另外关于设置编译器编译等级这块,也可以看下我之前发的一篇帖子:https://bbs.21ic.com/icview-3471092-1-1.html
1783浏览 7回复 0关注 -
chineseboyzxy 回答了该问题
有PWM转0-10V的小体积方案吗?方案面积越小越好
还别说,前几年在东莞时,这个以前叫客益电子的,还给过我两个PWM转电压转电流的DEMO板呢,我一直以为厂家都倒闭不在了。还有I2C转电压转电流的,直接可以单片机数据控制输出。
12096浏览 12回复 2关注 -
515192147 回答了该问题
急需GD32F470例程
我这有全部的例程以太网CAN串口等全有,并有用470开发成功产品案例案例见:https://bbs.21ic.com/icview-3335470-1-1.html
7736浏览 6回复 3关注 -
hjl2832 回答了该问题
检测交流电流和电压的芯片能不能用来检测直流?
除非是内部自带整流,否则,哪有交流的说法,所有芯片都是工作在直流。你去看市面常见的几家电量计量芯片,不都是AC220V整流成300V后再检测的吗?它的实质就是直流测量。
13365浏览 9回复 5关注 -
sunjd 回答了该问题
盛思瑞CO2传感器读数据错误,百思不解。
1.CRC计算范围问题您的CRC函数只计算了数据部分,但Sensirion传感器的CRC计算可能包含命令字节://可能正确的CRC计算范围应该是://命令字节+参数字节uint8_tcrc_data[4]={0x36,0x15,0x00,0x11};uint8_tcorrect_crc=sensirion_i2c_generate_crc(crc_data,4);2.通信协议格式问题Sensirion传感器通常使用特定的通信格式,可能需要在每个数据字节后都计算CRC,而不是整个数据块后计算一个CRC。3.地址问题检查传感器地址是否正确:您使用的是0x52(写地址)通常Sensirion传感器的7位地址是0x29,左移一位后:写地址:0x29
7245浏览 7回复 4关注 -
ningling_21 回答了该问题
-
cr315 回答了该问题
-
duo点 回答了该问题
-
tpgf 回答了该问题
-
dffzh 回答了该问题
没有更多了

问答