我滴神啊 发表于 2022-2-16 17:02

HC32L170 JLINK-SWD仿真时系统时钟不准

前提:HC32L170JATA
使用RCH作为系统时钟

IAR+JLINK-SWD
现象:
使用串口发送数据,当上电进入仿真的时候发送数据不对。不进仿真上电直接跑起来,发送数据正常。
问题查找:
1. 监测串口发送脚,设置的4800波特率,当上电进入仿真时实际输出只有4480左右;不进仿真上电直接跑起来波特率4800

2. 设置PB00管脚为RCH输出管脚,监测系统时钟是否变化,设置4M时钟,当上电进入仿真时PB00只有3.74M;不进仿真上电直接跑起来时PB00只有4.00M


3. 怀疑硬件问题,将程序烧写至已量产设备的PCBA,问题依旧。
4. 怀疑“IO的电压比VDD高0.3V以上会导致波特率异常”,未发现此类问题。
5. 怀疑程序问题,屏蔽所有程序,只保留PB00设置这一个函数,直接while(1),问题依旧
------------------
各位大大有没有遇到过这个问题

yangxiaor520 发表于 2022-2-16 20:38

不应该啊

guijial511 发表于 2022-2-17 08:31

没遇到过

watermellon 发表于 2022-2-17 11:35

时钟初始化代码看看

yangxf1217 发表于 2022-2-17 14:59

怎么仿真的,会不会是仿真器供电不足

wubangmi 发表于 2022-2-17 16:10

M0P_SYSCTRL->RCH_CR_f.TRIM = (*((volatile uint16_t*) (0x00100C08ul)));


我感觉是你没加载以上这条代码造成的

我滴神啊 发表于 2022-2-17 18:22

感谢大神,已验证解决

我滴神啊 发表于 2022-2-17 18:23

wubangmi 发表于 2022-2-17 16:10
M0P_SYSCTRL->RCH_CR_f.TRIM = (*((volatile uint16_t*) (0x00100C08ul)));




感谢大神,已验证解决

Zzy101924 发表于 2022-2-19 00:15

楼上的大神竟然是我们的FAE吴工呀,在这里遇见了,做好事不留名,不过还是被我给发现了,哈哈哈哈

Zzy101924 发表于 2022-2-19 19:46

大神我们公司的吴工呀

kiwis66 发表于 2022-2-22 10:56

wubangmi 发表于 2022-2-17 16:10
M0P_SYSCTRL->RCH_CR_f.TRIM = (*((volatile uint16_t*) (0x00100C08ul)));




这是怎么影响仿真与运行的呢

wubangmi 发表于 2022-2-23 10:58

kiwis66 发表于 2022-2-22 10:56
这是怎么影响仿真与运行的呢

不影响仿真和运行,没有加载主频就不准,上面这条语句是芯片的校准时钟补偿值。

kiwis66 发表于 2022-2-23 11:06

wubangmi 发表于 2022-2-23 10:58
不影响仿真和运行,没有加载主频就不准,上面这条语句是芯片的校准时钟补偿值。 ...

学习了,找机会试试,
一直没注意过这里

tpgf 发表于 2022-3-2 13:14

时钟源是什么

晓伍 发表于 2022-3-2 13:18

额居然碰到熟人了啊

八层楼 发表于 2022-3-2 13:23

如何加载主频呢

观海 发表于 2022-3-2 13:28

库函数自动加载了

guanjiaer 发表于 2022-3-2 13:36

用库函数多方便啊

heimaojingzhang 发表于 2022-3-2 14:03

怎么方便怎么来
页: [1]
查看完整版本: HC32L170 JLINK-SWD仿真时系统时钟不准