亲爱的支持团队,
我们目前正面临着对话框提供的生产测试固件在我们的自定义Pan1740的硬件上运行时提供的生产测试固件。
原始DA14580源代码仅调整有关UART RX / TX引脚分配。
当我们连接连接管理器并开始任何TX测试(例如未调制的TX)时,我们可以观察到频谱中的一个载波,但频率是错误的。37频道的信号看起来差不多正常。载波位于2402 MHz。38频道位于2404兆赫,而不是2426兆赫。39频道也位于2404mhz,但其形状要宽得多。
Prod_Test FW基于SDK5.0.4;连接管理器是v3.0.10。
你能给暗示这种行为的原因吗?
顺便提一句。实际应用FW运行良好。例如。广告频道完美满足。
谢谢,
霍尔格
设备:
嗨Hlinde,
我联系了Panasonic,他们正在看你的问题,他们会直接与您联系。
谢谢mt_dialog.
再会
我想知道当我在我自己的电路板上尝试使用UART编程时未检测到的引脚重置的原因是什么?我正在使用Pan1740
嗨Mayrang,
通过UART编程时,设备需要重置的原因是因为智能片段需要跟踪信号启动UART引导过程的0x02字节(来自预定义的UART引脚)。因此,通过击中重置,设备启动执行引导加载程序,最终智能片段将捕获0x02字节并启动UART引导协议。显然,如果智能片段是能够得到重置,那么它不会收到0x02字节,这意味着您的UART连接最可能出现问题。
谢谢mt_dialog.
嗨mt_dialog.
我使用的连接
FTDL遗漏
RX ----> TX引脚04
TX ----> RX引脚05
CTS ----> CTS P03
RTS ----> RTS P02
VCC ----> 3V
GND ----> GND
它们是正确的吗?
附上重置的连接
谢谢你的时间
谢谢mt_dialog.
已经检测到RST是硬件问题
现在我尝试在命令中编写最新版本的.hex文件
但是,TERA术语和探针没有任何东西出现在9600 BD,57600和115200中。
尝试编写sdk 5.0.3和sdk 5.0.4的其他例子,但CRC不匹配我。
任何想法如何解决这个问题?
嗨mayrarg,
Baudrate取决于您使用的引脚,从您的先前语句,P04和P05经过57600波特率,如果您正在使用的任何终端中没有任何终端(您应该看到由于引导加载程序运行而导致的垃圾打印),然后设备未重置(因此不运行Bootloader),或者您的UART应该有一个连接问题。你还提到CRC对你不匹配,你到底是什么意思?您下载代码,设备没有0x06(ACK)响应,或者它与STM的计算不匹配?另请注意,您应该下载.bin文件而不是.hex文件(您应该使用适当的工具hex2bin.exe将.hex文件转换为.bin)。
谢谢mt_dialog.
如何通过UART监视设备(ACK)和0x02字节?
我会尝试将.hex文件更改为.bin,看看会发生什么
非常感谢MT_dialog
嗨mayrarg,
如果您希望看到串行引导过程,请通过在总线上附加逻辑分析器来执行此操作。由于您使用的是智能代码段工具,它将自动转换为.bin的.bin,因此,自己转换它并不重要(我是您正在使用外部MCU的印象,以便下载代码)。关于您获得的错误,我想使用自定义设备,也许您应该检查设备上的UART线条显然,数据已损坏生成无效的CRC,从智能代码件工具已经计算出以及设备发送时的无效CRC下载程序已结束。
谢谢mt_dialog.
嗨mt_dialog.
我可以完全按照AN-B-001文件中的模块中编程DA14585的示例OD,但程序不编译,我检查UART行,这很好
任何想法如何解决这个问题?
谢谢
嗨mayrarg,
对于初学者,据我所知,Pan1740实现了14580而不是585(这意味着您使用的错误SDK,SDK 5.0.4是580和6.0.4最新的最新用于585),以及最新你的意思是这个程序不编译吗?而且,该程序不编译的事实不必使用任何无法通过UART编程它的事实。
谢谢mt_dialog.
嗨mt_dialog.
然后使用SDK 5.0.4我有问题,即CRC与STM中的计算不匹配。
在接收到ACK位之后,如AN-B-001文件中所述的过程很好。
谢谢
嗨mayrarg,
对不起,我很困惑,您正在尝试通过UART接口通过STM处理器编程Pan1740,并且它返回CRC不匹配或通过智能片段。从您附加的图像看起来似乎您尝试通过Smart Scippets执行此操作,并返回那种错误。此外,585 FW与上述问题有什么关系?Pan1740内部有一个580个设备而不是585.请花更多的时间来描述您究竟想做什么,以便我能够提供帮助吗?
谢谢mt_dialog.
我很抱歉小说法。
我试图通过UART使用FTDI(USB到TTL FT232RL)编程Pan1470模块。
就像你说的,我在模块中编程585 fw是错误的,因为PAN1740有580。
当我尝试编程580的SDK 2.0.4的示例返回CRC的错误不匹配。由文件AN-B-0001标记的程序是正确的,我接收位0x02和ACK 0x06,直到接收到的CRC的瞬间返回00的deafult。
我的问题本身,是因为CRC没有更新或没有执行异或以其值?。
嗨mayrarg,
引导加载程序位于ROM中,意味着所执行的操作是标准的,如果设备(580)将0x00作为CRC值发送0x00,则无法以某种方式交互或更改该代码,然后我假设我认为没有实际代码下载,因此没有下载到设备中的实际字节(您是否能用分析仪检查),或者我假设您使用的平移是不知何故损坏。请您可以查看其他设备并检查问题是否仍然存在。或者你可以试图通过JTAG下载代码,而不是通过UART下载,并检查您是否能够这样做?
谢谢mt_dialog.
嗨mt_dialog.
我尝试使用J-Link编程Pan1740而无需成功,那么我的设备很可能已损坏?
嗨mayrarg,
损坏或在SWD连接上存在问题。
谢谢mt_dialog.
你好mt_dialog.
问题是我已经将PA1740模块的RST连接到JTAG连接,但是是通过线程连接的
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl..。
我意识到JTAG和PAN1740的RST是对立的,所以如果我遵循第一个(RST模块与RST JTAG)的瓶子,我设法编程BLE_APP_PROFILE的示例,但该设备未宣布,在上面提到的线程中,它说我可以处于睡眠模式,如何禁用这种睡眠模式?
嗨mayrarg,
为了禁用睡眠模式,您可以将App_default_sleep_mode设置为Arch_sleep_off,但设备处于睡眠模式的事实并不意味着设备不会通告。所有的例子都表现出广告即使它们处于睡眠模式,设备在广告间隔之间睡眠,它不会持续睡眠。您无法找到设备未执行的原因(您无法通过BLE扫描仪找到设备),只需通过下载UART,我建议使用JTAG连接和通过KEIL调试找到发生的原因。
谢谢mt_dialog.
嗨mt_dialog.
已经解决了,我的问题是我在CFG_Development_Debug语句中放了#undef,导致它不公布,
非常感谢!!!,有什么我能做的表明它帮助我解决了我的案子吗?
嗨mayrarg,
关于cfg_development_debug,这不是为什么设备无法操作,并且可能指示设备由于断言而被卡住(由于该标志由于该标志插入了不同类型的断言,以便向开发人员指示出现问题实施)。所有示例都应与CFG_DEVEVELMMENT_DEBUG一起运行。您应该通过JTAG调试设备才能检查设备与CFG_DEVELIMMENT_DEBUG粘附的断言。
关于求解指示,由于您没有创建一个新的线程,您无法指示您接受或上述任何建议都帮助了您,您必须是线程的创建者以便接受答案。
谢谢mt_dialog.