⚠️
大家好. .谢谢你来参加论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,并包含在Dialog主网站中。所有的帖子和账户都已迁移。我们现在只接受新论坛的流量-请张贴任何新的线程//www.xmece.com/support.我们将在未来几天修复漏洞/优化搜索和标签。
21个岗位/ 0个新岗位
最后发表
bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
DA14683 - 16MHz时钟不启动

你好

我正在使用DA14683开发一个硬件板,我刚刚从生产中收到了第一个原型。
我设法启动一个二进制文件使用SEGGER j-link EDU到基于free_rtos重定向示例代码的Cortex-M。
引导序列正常执行,直到:

sys_clock_mgr.c: 397
while (!hw_cpm_is_xtal16m_started()){//阻塞直到XTAL16M启动

我设计的硬件板使用
IQD 064296
- 16兆赫
- ESR 70欧姆
-负载电容8pF(比推荐值少2pF,但仍在4-10pF范围内)
-频率公差20ppm
-频率稳定性20ppm
-驱动电平100µW
石英已焊接尽可能接近CPU使用对称4.1毫米长度布线。

你能给我一些步骤来逐步调试16MHz时钟,这样我就可以弄清楚SDK的默认设置是否适合我?

先谢谢你

设备:
PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

请尝试使用外部晶体振荡器以确保您使用的XTAL工作正常?另外,我建议您使用默认的修剪值,并检查引导顺序是否正确启动。你能让我知道你是否对SDK做了任何修改吗?

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

谢谢你的第一个回答。

我正在尝试运行未修改的freertos_retarget。它不太依赖于外部硬件,所以它应该允许我验证我正在使用的DA14683的最小行为。我的硬件设计非常基础,有两个例外:所有外部IO都是3.3V(闪存和外设)。

在测试过程中,VBAT由JTAG探头在3.7V下测量。

我不能使用外部时钟。它没有连接到我的PCB上。我试图用一个范围触摸振荡器的衬垫,但探针的内部电容是与石英本身相同的数量级,所以我很确定它应该会产生不稳定的结果。

我还没有开始改变修剪值。考虑到我使用的振荡器比推荐的10pF低2pF,修剪功能应该非常有用,以获得稳定和准确的东西。

  • 我尝试了Eclipse env在Windows下使用最新SDK DA14683没有修改
    • JTAG环境需要重新配置,以便我的硬件被识别。特别是硬件复位发送非常频繁和DA1468x切断链接到JTAG。
    • 首先使用J-Link指挥官。我设法正确启动j-link环境,从而保持gdb服务器打开。
    • 之后,我能够一步一步地运行应用程序,并在hw_watchdog_handle_int结束,然后系统被阻塞在hw_cpm_is_xtal16m_started的无限循环中
  • 我还尝试在linux下编译应用程序,使用使用Segger Ozone调试的更新版本的GCC
    • 整体的行为是更直接的,没有蚀在等式中。
    • 我没有在堆栈的开头设置0xdeadbeef,但是ozone设法在启动程序集代码的开头捕获断点。
    • 代码一直执行,直到等待hw_cpm_is_xtal16m_started
    • 在这个conf中,我试图避免XTAL16M的验证,它永远不会在系统初始化中结束,但是freertos不会启动它的调度程序,任务中的断点没有达到,这意味着系统没有正确启动。
  • 我检查了我的32K水晶。不幸的是,它不符合规格,负载电容是12.5pF,而接受范围是6-9pF。
    • 我尝试使用LP_CLK_RCX配置,但结果是相同的。
  • 我最终修改SDK,删除所有校准相关功能,为我的原型使用32k RC和16M RC。
    • 我以这种方式到达了freertos任务,但问题继续与外围设备init。

你能向我确认吗
-变通,所以我只使用RC时钟
-两个时钟的硬件设计要求,所以我准备我的Run 2 ?

谢谢你!

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

如果我理解正确的话,你提到你使用的是超规格的晶体振荡器。你能告诉我你用的是哪种晶体振荡器吗?你的问题的post可能原因是由于xtal。为了使用RC16,您应该使用sysclk_RC16更改system_init()函数中cm_sys_clk_init()和cm_sys_clk_set()的sysclk_XTAL16M输入。虽然,代码在main()函数之前得到堆栈,所以使用RC16我认为这不会解决你的问题。顺便说一下,你可以检查一下,然后告诉我。

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

    我正在使用
  • IQD 064296, 16MHz, 8pF
  • IQD 009678, 32.768kHz, 12pF
    我刚点了
  • ECS-160-10-33-AGM-TR, 16MHz, 10pF
  • IQD 009709, 32.768kHz, 7pF

来取代它们。

我将尝试开始更换32k石英,看看修剪功能是否能够稳定16MHz/8pF。如果没有,那么我也会改变16MHz。

如果我只使用RC振荡器,我会通知你。BSP时钟初始化函数主要基于16M时钟,所以我必须更深入地研究代码。

谢谢

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

请和我保持联系,如果你有其他问题请告诉我。如果你发现上面的任何答案有用,请标记其中一个为已接受。

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

我设法更换了32k石英,我确认IQD 009709, 32.768kHz, 7pF与DA14683兼容。
我还是没有换16M石英,结果还是一样的。16MHz不启动。

这石英是内部规格,所以修剪功能应该能够稳定它。

你能确认一下可以用微调功能来补偿16MHz时钟缺失的2pF吗?
在我的例子中,0x50000002 / CLK_FREQ_TRIM_REG等于0x200。

先谢谢你

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

你能确认一下ECS-160-10-33-AGM-TR和DA14683一起工作吗?

先谢谢你

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

很抱歉耽搁了。你能解释一下你的问题吗?问题是修剪值是否正确或如何更改修剪值?关于你第二个关于ECS-160-10-33-AGM-TR XTAL的问题,我们在设计中从未使用过这种类型的晶体振荡器。根据其规格,10p负载电容将是很好的,但ESR偏高,最大驱动功率在边缘。我建议您检查DA14683数据表中16MHz晶体振荡器的推荐操作条件。您将看到ECS-160-10-33-AGM-TR处于我们规范的边缘,但这可能不是问题,这种类型的XTAL可能与DA14683一起工作。另外,你可以看看我们在开发板上使用的晶体振荡器。

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

我有三个板子:
-一个IQD 064296, 16MHz, 8pF
-两个ECS-160-10-33-AGM-TR, 16MHz, 10pF

它们都不能使用默认BSP设置。

我的问题可能是一些明智的建议来解决这个问题,因为我失去了很多时间(即设置/石英参考)

我不能使用RC16作为“救援”,因为UART信号没有正确计时,我的应用程序不工作。

先谢谢你

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
我花时间进行了比较

我花时间比较了各种石英,我不明白你说石英在规格的边缘。

请查收附件中关于石英的一些细节。ECS-160-10-33-AGM-TR规格非常接近USB演示板上使用的7M-16.000MEEQ-T。特别是它们的最大Pdrv都是100 μ W(而DS v2.2的注释23规定它应该是一个最小值)

先谢谢你

附件:
bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
一个小细节:1V4不是

一个小细节:1V4没有通电。0 v。
似乎问题不在XTAL部分!

待续…

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

我强烈建议你检查你的定制板的所有电源轨道。很可能,晶体振荡器不是你的电路板不工作的原因。另外,对董事会进行一次全面的检查将有助于理清事情的头绪

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好,

你好,

不幸的是,我的3个板都没有所有的电源轨道可用。

我只有一个1.4V可用,我确认IQD 064296 16MHz, 8pF正在工作。
振荡稳定,振幅为250mV。直流偏置350mV。这不是一个完美的窦波形。
我将不得不与演示板进行比较,以更好地了解其与DA14683的合规性。

谢谢你的帮助。

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

将您的定制板与我们的开发套件进行比较是值得的。如果你有任何其他后续问题,请创建一个新的论坛线程。

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

你能确认一下D14683 Device Specification v2.2中说明石英的Pdrv应该至少为100 μ W的Note 23的重要性吗?

USB演示板有一个石英,最大100 μ W。

先谢谢你

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

根据DA14683数据表,您可以选择一个可以处理至少100 μ W的驱动电平的晶体。

谢谢,PM_Dialog

bobspam@free.fr
离线
最后看到:3个月1周前
加入:2018-06-20 08:07
你好

你好

我刚刚又从生产部收到了我的三块板子。

我确认这一点
- IQD 009709, 32.768kHz, 7pF
而且
- IQD 064296, 16MHz, 8pF
- ECS-160-10-33-AGM-TR, 16MHz, 10pF

DA14683没问题。

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨bobspam@free.fr,

bobspam@free.fr

很高兴你新设计的板子功能齐全,谢谢你告诉我。

谢谢,PM_Dialog

斯巴达
离线
最后看到:1年2个月前
加入:2016-03-14第14章22节
大家好,对话专家。我

大家好,对话专家。我收到了DA14683上的子板。尝试实现ble_adv的例子。当尝试调试时,我看到ble_peripherial_start卡住。那是什么原因呢?

PM_Dialog
离线
最后看到:16小时37分钟前
工作人员
加入:2018-02-08 11:03
嗨,斯巴达,

嗨,斯巴达,

你能在调试模式下运行它并指出代码卡在哪里吗?另外,我建议你创建一个新的论坛帖子,因为这个帖子与你的问题无关。

谢谢,PM_Dialog