乘风飞扬 发表于 4 天前

guangseen 发表于 2025-6-13 16:38
OK, 感谢指出问题。

你的代码将 “CRE 自动追频” 关闭,USB库文件用附件的 lib 文件替换就正常了。

guangseen 发表于 3 天前

乘风飞扬 发表于 2025-6-13 17:21
你的代码将 “CRE 自动追频” 关闭,USB库文件用附件的 lib 文件替换就正常了。

...

好的,下午试试,谢谢。

神农鼎 发表于 3 天前

乘风飞扬 发表于 2025-6-13 17:21
你的代码将 “CRE 自动追频” 关闭,USB库文件用附件的 lib 文件替换就正常了。

...


是不是 ISP V6.95U 里面的 USB实际用的库也要升级 ?

深圳国芯人工智能有限公司-库函数

guangseen 发表于 前天 11:06

乘风飞扬 发表于 2025-6-13 17:21
你的代码将 “CRE 自动追频” 关闭,USB库文件用附件的 lib 文件替换就正常了。

...
今天测试了,不行。
另外,在我自己写的代码里PLL可以正常输出频率,系统也能正常运行,但是不能运行USB_INIT()函数,一运行就down掉了。不知哪里出了问题。

guangseen 发表于 前天 11:07

神农鼎 发表于 2025-6-14 11:59
是不是 ISP V6.95U 里面的 USB实际用的库也要升级 ?

深圳国芯人工智能有限公司-库函数

今天测试了,不行。
另外,在我自己写的代码里PLL可以正常输出频率,系统也能正常运行,
但是不能运行USB_INIT()函数,一运行就down掉了。
不知哪里出了问题。 也许库文件有问题,也可能PLL电路或者后面的选择电路不稳定,不应该这样难搞的。
附件有项目文件供参考,用的擎天柱测试的。

乘风飞扬 发表于 昨天 09:26

guangseen 发表于 2025-6-15 11:07
今天测试了,不行。
另外,在我自己写的代码里PLL可以正常输出频率,系统也能正常运行,
但是不能运行USB_ ...
你的代码用示波器测量P4.7口已经可以测到输出频率信号了,不过有些失真。
需要将P4.7设置推挽输出,并且设置P4.7快速翻转速度,此外示波器探头使用"x10"档位测量。
void PORT4_Init(void)
{
    SetP4nQuasiMode(0x7e);            //设置P4.6,P4.5,P4.4,P4.3,P4.2,P4.1为准双向口模式
    SetP4nPushPullMode(0x81);         //设置P4.7,P4.0为推挽输出模式

    EnableP4nPullUp(0x01);            //使能P4.0内部上拉电阻
    DisableP4nPullUp(0xfe);             //关闭P4.7,P4.6,P4.5,P4.4,P4.3,P4.2,P4.1内部上拉电阻
    DisableP4nPullDown(BIT_ALL);      //关闭P4内部下拉电阻
    DisableP4nSchmitt(BIT_ALL);         //使能P4施密特触发
    SetP4nSlewRateNormal(0x7f);         //设置P4.6,P4.5,P4.4,P4.3,P4.2,P4.1,P4.0一般翻转速度
    SetP4nSlewRateFast(0x80);         //设置P4.7快速翻转速度
    SetP4nDrivingNormal(BIT_ALL);       //设置P4一般驱动能力
    SetP4nDigitalInput(BIT_ALL);      //使能P4数字信号输入功能

    //<<AICUBE_USER_PORT4_INITIAL_BEGIN>>
    // 在此添加用户初始化代码
    //<<AICUBE_USER_PORT4_INITIAL_END>>
}

PLL时钟32M,2分频输出信号:


guangseen 发表于 昨天 11:06

乘风飞扬 发表于 2025-6-16 09:26
你的代码用示波器测量P4.7口已经可以测到输出频率信号了,不过有些失真。
需要将P4.7设置推挽输出,并且设 ...

你运行USB_INIT()没有。我之前的代码只要不运行这函数都是正常的,一运行就停振了。PS.我都会把P4.7设置成推挽的。关键是系统要按设定的频率运行起来才行。

乘风飞扬 发表于 昨天 11:31

guangseen 发表于 2025-6-16 11:06
你运行USB_INIT()没有。我之前的代码只要不运行这函数都是正常的,一运行就停振了。PS.我都会把P4.7设置 ...
USB初始化执行了,在你15楼例子上只修改了PORT4_Init函数。

guangseen 发表于 昨天 14:16

乘风飞扬 发表于 2025-6-16 11:31
USB初始化执行了,在你15楼例子上只修改了PORT4_Init函数。

管脚设置确实是搞错了,但和系统运行没关系。我刚才重新试了,还是不能运行。P47也没有频率输出。

乘风飞扬 发表于 昨天 14:44

guangseen 发表于 2025-6-16 14:16
管脚设置确实是搞错了,但和系统运行没关系。我刚才重新试了,还是不能运行。P47也没有频率输出。 ...

我看你前面提过使用擎天柱测试,但是擎天柱没有拉出P4.7引脚。
我将例子再修改输出脚为P5.6,这样方便使用示波器测量。

直接烧录附件例程包里面的hex文件到擎天柱板子上测试。
烧录时IRC频率设置24MHz。
如果使用AiCube重新生成代码的话,记得要更换USB lib文件。

页: 1 [2] 3
查看完整版本: 遇到的一个时钟问题,不能启用PLL时钟 | 用AiCube 配置时钟树