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