Program DA14580 OTP memory

19 posts / 0 new
最后一篇
DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Program DA14580 OTP memory

你好,

我目前正在使用DA14580基本套件和SDK 5.0.3。我有两个疑问;

1. Currently using Keil I run my code on the RAM, but how to program the OTP memory for the production.
2.如何使用基于DA14580模块的基本套件来编程RAM以及OTP内存。

Appreciate your quick reply.

Thanks,
DV

Device:
mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

You can use Smart Snippets or the CLI tool to program the OTP, also you can use it for developing purposes to program the sysram using the UART interface.

就使用DEV套件编程了您的定制板没有应用笔记,请您按照以下帖子进行操作:

http://support.dialog-semicondiondiondum/programming-external-board-basic ...

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_Dialog,

Hi MT_Dialog,

感谢您的回复!

So is there any guide which describe how to use the Smart Snippets or CLI to program sysram/OTP?

Also I read the post you have mentioned, but it is not describing the connection need to be made between Basic Development Kit and a DA14580 module. So it would be great if you can explain that here it self.

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

Yes you can find more info about programming with Smart Snippets and CLI in the documents in the Smart Snippets help pdf (in smart snippets tool check the help option), at the end of the file you can find some examples about the CLI.

关于使用DEV套件进行编程的配置是:

SWCLK -> TCK
SWDIO - > TMS
VBAT -> VBAT580
GND -> GND
VPP - > TP2(请放置OTP跳线,以燃烧OTP)

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_Dialog,

Hi MT_Dialog,

Thanks for your quick reply.

We have tried following connections :

Module Side - Development Kit Side
SWCLK - J4的PIN 27(TCK)
J4(TMS)的SWDIO - PIN 25
J4(VBAT)的VBAT - PIN 1
GND - 别针2的J4(GND)

但随着上面提到的,我无法编程基于DA 14580的模块。我得到“没有找到Cortex-M个SW设备。”使用UVISION KEIL V5.16A编程时出错。

我无法理解我做错了什么。你能帮我这里吗?

Thanks,
DV

WI_Dialog
离线
最后一次露面:18 hours 28 min ago
职员
加入:2014-01-03 16:21
建议做OTP

建议做OTPprogramming as follows:
1.拔下USB并断开PC的基本套件。
2.模块和基本DK之间的接线,首先取下J4的所有跳线。
GND - 别针2的J4
SWCLK - J4的PIN 27
SWDIO - Pin 25 of J4
VPP - TP2 (J8 jumper open)
VBAT - Pin 1 of J5 (J5 jumper un-installed)
3. Plug-in USB to PC to power up DK and module.
4. To verify your setup, goto your Keil project to compile your source, download to the DUT.
5. If ok, exit from Keil debugger.
6. Start SmartSnippets tool and select JTAG and DA14580-01 in the front page.
7.选择OTP标题部分,按“Connect”键以查看“JTAG_PRIGHIMMER.BIN”的下载成功。
8.按“读取”图标读取OTP标题内容。
9. If no issue, the setup and the connection is ready for OTP image programming.
For the OTP programming procedure, you can refer to our application note for details.
To enable OTP programming, J8 jumper need to be installed to enable VPP 6.8V.
For better BLE performance and longer range, suggest to tune the 16M crystal and program the value and enable this calibration in OTP header section.
In debugging stage, recommend to leave the JTAG feature enabled in the OTP header section to leave a back door for further debugging work. This can be disabled later, if necessary.
请注意您的应用程序没有禁用JTAG功能。或者JTAG启用位无效。
Hope this info is helpful.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_Dialog,

Hi MT_Dialog,

Thanks for your quick response.
您建议的连接工作。虽然我还没有尝试过OTP编程。

Thanks,
DV

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

As I said before I want to program the OTP memory of DA 14580 based module, but I haven't tried it yet. I got to know that I have to disable/enable a macro in the code also to compile it for OTP programming. I would appreciate if you can tell me the exact steps including code compilation for OTP programming, as I have limited modules to do this. For now, I am using Proximity Reporter example project in SDK 5, so you can explain me in respect of that example.

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

请检查以下帖子:

http://support.dialog-semiconductor.com/step-step-guidelines-programming...

http://support.dialog-semicondiondiond.com/document-programming-otp-da14580 ...

还要用于OTP编程,请检查AN-B-020.PDF文件。

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

我读取了应用笔记,也可以帮助SmartSnippets工具的帮助。之后,我将模块的必要连接到基本套件,如前一篇文章所述。请注意,使用这些连接,我能够使用Keil UVision5和模块工作正常的SRAM。现在我完成了以下步骤:

1.启动SmartSnippets v3.8
2. Selects JTAG and DA14580-01
3. Go to OTP Programmer and select 'OTP Image' tab
4. Browse and select the HEX file to be loaded on OTP Memort, in this case Proximity Reporter project hex file that build with 'GPIO_DRV_PIN_ALLOC_MON_DISABLED' macro defined. It shows the Data File Contents on 'OTP Image' tab.
5. Connect to the device successfully.
6. Read the OTP memory.
7. Burn the selected HEX file.

在步骤7之后,我收到以下错误:

[INFO @16-01-21 00:01:21] OTP Image: Started burning memory with 25036 bytes of data at address 0x40000.
(错误@16-01-21 00:01:22]OTP形象:Adddittionalerror info at address 0x81FEC (MSB first): FF FF FF FE
[ERROR @16-01-21 00:01:22] OTP Image: Memory burning failed.

Also, when I am starting the SmartSnippets I am getting error "ftd2xx.dll not found at C:\Windows\System32".

我已附加了包含SmartSnippets日志的ZIP文件和FTDI错误的快照。

Please help me to resolve these errors, so that I can burn the OTP memory.

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

The error you receive might be the root cause of this manfunction, try to use the latest version of Smart Snippets, also this might be a problem of your OTP programming supply as well. Please make sure that your J-link connection to the board is as short as possible and the grounding is solid. The Vpp must be clean and must not exceed 6.8V.

另外请检查以下帖子。

http://support.dialog-semicondiondiondum/otp-programming-1.

http://support.dialog-semiconductor.com/otp-program-mass-production-vpp-...

http://support.dialog-semicondiondiondum/vpp-current-consumption.

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

Thanks for your quick reply.

The error is resolved now and I am able to program OTP memory of DA14580 based module using Basic Kit. I forgot to install the jumper on J8 connector on Basic kit!

But now, even after program the OTP Image and the OTP Header the module is not working independently. Why is that so? Is there anything wrong in the setup? Do I need to do something else to make it work? I have attached the OTP Image and OTP header programming logs for the reference.

我正在使用最新的smartsnippets i.e.v3.9。而且我仍然得到这个ftdi错误。请帮我解决这个错误。

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

很高兴听到你做到了,我没有得到“模块无法独立工作”你的意思是什么?没有电力,只有电池?如果是这种情况,您是否在电池电源中更改了J5标题上的跳线?就OTP标题而言,我注意到您没有编程的应用程序标志。请检查AN-B-001以获取580的启动过程和应用程序标志的功能。关于FTDI错误我猜这与系统中安装的FTDI驱动程序有关,请尝试更新它们。

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

Thanks for your quick reply.

By "the module is not working independently", I meant that till now I am loading the program, to the module through Basic Kit, using Keil uVision 5 and that was running fine. But after flashing the OTP memory I am expecting that, there is no need to load the program using Keil and it should work by just giving power, but that is not happening.

Regarding the connection, VBAT of module is connected to the Pin1 of J5 and GND of module is connected to the Pin2 of J4.

我应该如何编程到应用程序标志,我现在可以在同一模块上更改它吗?我还需要将Bool Loader编程到OTP内存吗?如果是的话,我在哪里可以找到它?

Awaiting your reply.

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

由于AN-B-001表示Pootloader检查应用程序标志是否被编程为YES,因此从OTP中启动Bootrom靴子否则它遵循普通过程,就好像它未编程一样,只需连接您的模块并将您的OTP应用程序标记设置为“是”。在580中有一个引导加载程序,辅助引导程序用于替代目的(有关详细信息,请检查UM-B-012:辅助引导程序的创建)。

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

Thanks for your reply.

我无法使用SmartSnippet将模块“连接”,它给了我错误。我认为这是由于OTP已经编程了。似乎模块被浪费了,现在我甚至不能在从Keil UVISION 5中编程系统RAM以在调试模式下运行它。

Every time you are suggesting new application note/user manual. Nothing has been covered at one place for the beginner and nothing has been provided at once. I request you to please let me know the exact steps that I need to follow to successfully program the OTP memory of the module.

Thanks,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

If your OTP is burned with the header_log.txt you ve uploaded then you should be able to reattach the debugger and reburn your OTP (fields that are not allready burned) since the application flags aren't burned and the JTAG is still enabled. Its difficult to keep all the informations about how to program the OTP, the different fields of the OTP, connect a reference design by using a development kit and troubleshooting the OTP in one single tutorial so we are trying to redirect you to the corresponding manuals.

关于编程OTP我认为您已经熟悉如何使用开发套件连接到模块。

1)选择OTP图像选项卡

2)选择您的.hex文件并将您的程序刻录到OTP。

3)转到OTP标题选项卡,将两个应用程序标志字段更改为“是”(仅启动从OTP执行的代码)I VE附加到OTP .hex从Ref Design I Ve刚刻录,供您参考。

After that your device should advertise after a reset. As you can see from the attachemnt the JTAG is still enabled, therefore i am able to reconnect to the allready burned module as soon as i hit connect to OTP Header tab in the smart snippets tool.

谢谢mt_dialog.

DV
离线
最后一次露面:5年2个月前
加入:2015-10-09 17:13
Hi MT_dialog,

Hi MT_dialog,

如果它是不可能有一个教程,then at least there should be a document, may be an application note, that explains how to program OTP memory using SmartSnippets. That helps the beginners, like me, a lot. Anyway, thanks a lot for your help. I am able to program OTP memory and able to set those flags. Now my code executes and module works fine.

Regards,
DV

mt_dialog.
离线
最后一次露面:3 months 3 days ago
职员
加入:2015-06-08 11:34
Hi DV,

Hi DV,

Glad you could make it. I will forward your request to the team about having a fully document how to interact with the OTP.

谢谢mt_dialog.

主题锁定