我用的msp430f6659和f5529 测试的usb的速率都是16KB/s,请问这个速率是不是和时钟有关系的,怎么设置才能提高到200K-300K呢?
灰小子:
是的,和时钟频率有关。
msp430的usb模块,集成可编程锁相环(PLL),可以为USB操作提供高精度低抖动的48MHZ的时钟。你是不是没使用PLL?
changsheng cao:
回复 灰小子:
你好 很感谢你的回复 现在没有配置时钟 用的时钟是开发包里配置好 自己配置了一个时钟 找不到端口号了怎么回事啊?
这段程序是开发包里的
*void initClocks(uint32_t mclkFreq){#ifndef DRIVERLIB_LEGACY_MODE UCS_clockSignalInit( UCS_FLLREF, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1);
UCS_clockSignalInit( UCS_ACLK, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1);
UCS_initFLLSettle( mclkFreq/1000, mclkFreq/32768);#else UCS_clockSignalInit( UCS_BASE, UCS_FLLREF, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1);
UCS_clockSignalInit( UCS_BASE, UCS_ACLK, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1);
UCS_initFLLSettle( UCS_BASE, mclkFreq/1000, mclkFreq/32768);#endif
这个是自己写的 找不到端口号了
void initClocks(){ UCS_setExternalClockSource(32768,19200000); UCS_XT1Off(); UCS_XT2Start(UCS_XT2DRIVE_16MHZ_24MHZ); UCS_initFLLSettle(19200,1); UCS_enableClockRequest(UCS_MCLK); }
changsheng cao:
回复 灰小子:
你好 很感谢你的回复 现在没有配置时钟 用的时钟是开发包里配置好 自己配置了一个时钟 找不到端口号了怎么回事啊?
这段程序是开发包里的
*void initClocks(uint32_t mclkFreq){#ifndef DRIVERLIB_LEGACY_MODEUCS_clockSignalInit(UCS_FLLREF,UCS_REFOCLK_SELECT,UCS_CLOCK_DIVIDER_1);
UCS_clockSignalInit(UCS_ACLK,UCS_REFOCLK_SELECT,UCS_CLOCK_DIVIDER_1);
UCS_initFLLSettle(mclkFreq/1000,mclkFreq/32768);#elseUCS_clockSignalInit(UCS_BASE,UCS_FLLREF,UCS_REFOCLK_SELECT,UCS_CLOCK_DIVIDER_1);
UCS_clockSignalInit(UCS_BASE,UCS_ACLK,UCS_REFOCLK_SELECT,UCS_CLOCK_DIVIDER_1);
UCS_initFLLSettle(UCS_BASE,mclkFreq/1000,mclkFreq/32768);#endif
这个是自己写的 找不到端口号了
void initClocks(){UCS_setExternalClockSource(32768,19200000);UCS_XT1Off();UCS_XT2Start(UCS_XT2DRIVE_16MHZ_24MHZ);UCS_initFLLSettle(19200,1);UCS_enableClockRequest(UCS_MCLK);}