本帖最后由 master.chipset 于 2023-10-13 01:56 编辑
Hi again.
After 4 days of working on PB-03 firmware burning instructions, any instructions about UART programming didn't work for me.
I could finally find some instructions in "\components\keil" Chinese docx files of SDK V3.1.3 directory to prepare the Keil IDE for programming/debugging. I did any instruction exactly and I could build an example on Keil uvision V5.29.0.0 successfully.
I have five PB-03M modules. I tried to burn and debug examples on them but my present problem is that only two of them programmed/debuged successfully! Three of them can't be programmed anyway. The problem is same for three modules and after erasing flash they hang on programming progress and the progress bar shows they hanged on "1101C000H" address. I'm implementing PB-03M modules without any additional components and just connected to J-Link programmer directly.
What's the problem? I read in Chinese instructions that with bold and red text highly recommended to make sure "the board is in burning mode". How to do it? I have not seen this recommendation in any PB-03 series and PB-03 Kit series data sheets.I even did some extra precautions like as using an external linear 3.3V power supply, adding a 22uF tantalum capacitor between VCC and GND, use very short wires for interfacing module to J-Link, testing various J-Link frequencies from 5KHz to 10MHz and even I tested with two different J-Link programmers. But the result is: Target info: ------------ Device: PHY6222_FCDS VTarget = 3.295V State of Pins: TCK: 0, TDI: 0, TDO: 0, TMS: 0, TRES: 1, TRST: 0 Hardware-Breakpoints: 4 Software-Breakpoints: 8192 Watchpoints: 2 JTAG speed: 4000 kHz Include "D:\\PHY6252\\phy6222_v313_0512\\example\\ble_mesh\\mesh_light\\ram.ini" FUNC void Setup(void) { _WDWORD(0x4000f0a8, 0x00000000); SP = _RDWORD(0x1fff1838); PC = _RDWORD(0x1fff183c); _WDWORD(0x4000f0cc, 0x1fff1839); } LOAD .\Objects\mesh_light.axf INCREMENTAL Setup(); ^ *** error 34, line 10: undefined identifier Erase Done. ***JLink Error: Cannot read register 15 (R15) while CPU is running ***JLink Error: Cannot read register 20 (CFBP) while CPU is running ***JLink Error: CPU is not halted ***JLink Error: Cannot read register 15 (R15) while CPU is running Programming Failed! Error: Flash Download failed - "Cortex-M0" ***JLink Error: Communication timed out: Requested 3 bytes, received 0 bytes ! Could not transfer JTAG data. Flash Load finished at 15:09:20
Before programming UART showed the below specifications:
################################################
arch:phy6252,NULL company:Ai-Thinker|B&T ble_mac:94c9601ea2ae sdk_version:release/3.1.1 firmware_version:release/V1009 compile_time ec 30 2021 16:41:05
ready
################################################ |