Issue: Going to "HardFault_HandlerC" while debugging

28 posts / 0 new
最后一篇
Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Issue: Going to "HardFault_HandlerC" while debugging

I am using SDK 5.0.3 software on DA14583DEVKT-B board.
I have taken the "ble_app_peripheral" (BLE example projects given).
The control is going to "HardFault_HandlerC()" while executing the function "app_dis_init()".
Only "return" instruction is there inside the "app_dis_init()".
I am not able to identify the reason why it is going to exception handler while executing the "app_dis_init()" function.
如果我正在评论“app_dis_init()”函数,则不会进入异常处理程序,我能够在手机上看到设备名称。

Please help me to resolve the issue.
Please find the attached Screen shots for your reference

Device:
MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

Have you made any changes to the app_dis_init() ? Can you please try to download the example projects as is, in order to check if the same incident occurs?

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I have taken example projects (both "Blinky" and "ble_app_peripheral"). These two projects are working in Keil.
我使用Makefile和GCC完成了Eclipse。它正在为“Blinky”项目工作。
But for "ble_app_peripheral", it is showing following linking errors related to memory and also attached document for your reference.
1. __exe / dialog_da14583.axf部分`.constdata'不适合区域`ram_irom4'
2. Section ER_IROM5 loaded at [20000440,2000552f] overlaps section .constdata loaded at [200003e4,200005eb]
3.区域`ram_irom4'溢出428字节。

Memory sections in the Linker script file:
OTP (r) : ORIGIN = 0x00040000, LENGTH = 0x8000
Retention_ram2(RW):源= 0x00080768,长度= 0x2968
RAM_IROM1(RWX):源= 0x20000000,长度= 0x0160
RAM_IROM2 (rwx) : ORIGIN = 0x20000160, LENGTH = 0x0160
RAM_IROM3(RWX):源= 0x200002C0,长度= 0x0080
RAM_IROM4(RWX):源= 0x20000340,长度= 0x0100
RAM_IROM5 (rwx) : ORIGIN = 0x20000440, LENGTH = 0x7AC0
RAM_RW_IRAM51(RW):源=(0x20009000 - (1024 + 12)),长度=(1024 + 12)
RAM_RW_IRAM52 (r) : ORIGIN = 0x20009000, LENGTH = 0x0020
RAM_RW_IRAM53 (rw) : ORIGIN = 0x20009020, LENGTH = 0x01E0
RAM_RW_IRAM54 (rw) : ORIGIN = 0x20009200, LENGTH = 0x0600

我用DA14583DEVKT-B。如果我改变了我mory range in the linker script (as show in below), able to generate the target files but code is not working.
OTP (r) : ORIGIN = 0x00040000, LENGTH = 0x8000
Retention_ram2(RW):源= 0x00080768,长度= 0x2968
RAM_IROM1(RWX):源= 0x20000000,长度= 0x0160
RAM_IROM2 (rwx) : ORIGIN = 0x20000160, LENGTH = 0x0160
RAM_IROM3(RWX):源= 0x200002C0,长度= 0x0080
RAM_IROM4 (rwx) : ORIGIN = 0x20000340, LENGTH = 0x0300
RAM_IROM5 (rwx) : ORIGIN = 0x20000640, LENGTH = 0x7AC0
RAM_RW_IRAM51(RW):源=(0x20009000 - (1024 + 12)),长度=(1024 + 12)
RAM_RW_IRAM52 (r) : ORIGIN = 0x20009000, LENGTH = 0x0020
RAM_RW_IRAM53 (rw) : ORIGIN = 0x20009020, LENGTH = 0x01E0
RAM_RW_IRAM54 (rw) : ORIGIN = 0x20009200, LENGTH = 0x0600

Please help me to resolve the issue.
我在Keil中看到了“sysram_case23.ini”,这个.ini文件的重要性是什么。
Any supporting document, which will help me to resolve the memory issue and setting up the eclipse.

附件:
ankitdaf
Offline
Last seen:2年7个月前
加入:2015-09-03 20:14
Hi Premkumar

Hi Premkumar

I am trying to do the same, and faced something similar. I was able to over come it, but facing other issues now. Are you interested in comparing notes? It might help both of us make progress getting everything up and running

What say ?

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

Sorry, but currently we support only keil and not eclipse on the da14580. Please check the doc AN-B-024.pdf maybe you will find it usefull.

Thansk MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
我在Keil Uvision中使用了示例性外围代码。我无法识别,其中需要更改应用程序代码以将数据(即一些字节的信息)从DA14583DEVKT-B发送到移动应用程序。您能否提供任何文档来了解如何更改应用程序。目前,我在DA14583DEVKT-B板上使用SDK 5.0.3软件。
Please provide software guide document for SDK 5.0.3.

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

app_ble_peripheral,使用一个定制的概要文件rder to interact with the mobile application. If you want to sent data from the peripheral you have instruct it from your mobile phone (meaning read a characteristic, or write the configuration of a characteristic to sent notifications or indications). All of the handlers that are being called when instructed by the appropriate characteristic are located in the user_custs1_impl.c. For example in the specified project the function user_custs1_ctrl_wr_ind_handler() is called when the CUST1_IDX_CONTROL_POINT_VAL characteristic is written if the value written (send by the central) is other than 0 then the firmware start a software timer. When the timer elapses sends a notification (updates the value of CUST1_IDX_ADC_VAL_1_VAL), the notification is received by the central only if the notifications are enabled by the central. More info regarding the SDK5 and the examples can be found in the UM-B-050.pdf.

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I have observed jump_table_base[ ] (array) in "jump_table.c" file. What is the use of this array (i.e. jump_table_base[ ]).
Temporary files getting created while compiling app_ble_peripheral project. Why it is creating these temp files.
Please find the screen shot of map file as an attachment, where it is showing the temporary files.

Please give information about the purpose of jump table concept and "rom_symdef.txt"

附件:
Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I couldn't access the link for UM-B-050.pdf, which is available in the forums.
请帮助我访问UM-B-050.pdf。

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

About the jump table please have a look at this posthttp://support.dialog-semiconductor.com/jumptablebase88还关于跳转表,它的用法主要是在ROM中的函数覆盖,如果要例如ROM代码不使用默认功能(位于跳转表中的一个),则可以在RAM和覆盖中实现自己的函数ROM通过跳转表中的函数,rom_sym_def.txt文件包括来自ROM内存中的函数的所有符号。我不知道在Eclipse中创建的文件。

如果您尝试访问该文档,那么您应该已接受并提交使用软件和文档的条款和条件。管理员需要几天的时间来隆重您对文档的访问权限。只是有点患者,您的访问权限将隆重。

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I couldn't able to access the UM-B-050.pdf. Please provide the link to access it.
Also please provide the link for User manual of DA14583.

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

您是否接受了当您试图DonvoLoal授予访问权限的SDK和用户手册时接受了条款和条件?

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I have accessed some links in Dialog Semiconductor website. I haven't found any terms and conditions while navigating. just I have found subscribe button on the left hand side. I have subscribed for that. Please find the attached document for your reference.

I may not accessing right links. Please provide me the links to access UM-B-050.pdf and User manual of DA14583 (i.e. reference manual). Please briefly provide me the procedure to access the documents.

附件:
MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

The procedure is quite simple you just click on the link you want to access and if your access is granted then you can see the document, if your access isn't granted then the terms and conditions dialog should appear. After accepting this your request goes through the admin in order to grand you access to the portal (the procedure takes a couple of days). Please check the links of the documents below. We dont have a request in our system at the moment. Try to access the links i provided, and check if you can download the documents.

http://support.dialog-semiconductor.com/resource/um-b-050-da1458x-softwa...

http://support.dialog-semiconductor.com/resource/da14583-datasheet

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
In the 2nd link, I can able to see the Datasheet.pdf link and also able to open the pdf. But after clicking the 1st link, it showing the page as in attachment. It is not showing any terms and conditions.

Please help me to get the access to the 1st link as well.

附件:
je_dialog.
Offline
Last seen:6 hours 45 min ago
职员
加入:2013-12-05 14:02
Hi Premkumar, can you go to

嗨Premkumar,您可以转到DA14580产品,软件和工具,然后单击SDK旁边的挂锁图标或其发行说明(顶部项目)。这应该打开SDK访问请求。

BR JE_DIALOG.

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I am using Keil uVision (MDK-Lite, Evaluation Version) to work on DA14583DEVKT-B board. While debugging, I am not able to see the peripherals and all Special function registers (including I2C) on debug window. And also not able to use logic analyzer to see the logic variations on the port pin.

请提供信息,如何使用特殊功能寄存器来调试I2C。

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premukar,

Hi Premukar,

We do not provide an .srf file for the 580 with register map/system viewer. But i suppose that you can watch your registers througn the memory window.

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I am able to see the registers through the memory window. I wish to write I2C driver. As of now EEPROM driver is available, but need to be edited to interface with other IC's (i.e. IC's having I2C interface).

我能够在I2C行上发送从地址和写入位。但我无法在I2C行上发送任何数据字节。

The following instructions not showing any effect on the "I2C_DATA_CMD_REG" register (i.e. location 0x50001310)
SEND_I2C_COMMAND(0x01AA); // Set R/W bit to 1 (read access)
or
SEND_I2C_COMMAND( 0xD0 );
执行上述说明后,我无法看到“i2c_data_cmd_reg”寄存器值中的任何更改

Please help me to resolve this issue. Please share if any generic I2C driver is available for dailog (for read and write operations).

Please give any document to know I2C working in the Dialog to understand the FIFO.

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi premkumar,

Hi premkumar,

除EEPROM驱动程序外,还没有其他任何其他官方I2C驱动程序,但有广泛的解释驾驶员在论坛上的某些相关I2C帖子上运行。请检查以下链接。

http://support.dialog-semiconductor.com/multiple-byte-read-i2c

http://support.dialog-semiconductor.com/documentation

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I am not able use the flash to keep my application code.
Presently, "scatterfile_common.sct" contains only limited memory range. I think that is mapped only to RAM area (42KB, which starts from 0x20000000).
请提供有关不同内存区域的基本地址的信息(ROM,OTP,系统SRAM,保留RAM和闪存)

任何事情我需要改变文件或分散memory section addresses in keil, to use the ROM and Flash (i.e. 1 Mbit) areas.

Please guide me to use different memory section as per the requirement.

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

您可以在文档UM-B-011中找到有关580中的基本地址的所需信息:用户手册 - DA14580内存映射和分散文件。

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I have gone through the document UM-B-011, but there is no information about how to use 1 Mbit Flash memory and OTP available in the DA14583.
Booting sequence is not provided in the datasheet of the DA1458x. Please share the document to understand the booting sequence.

请帮助我使用闪光来编写我的应用程序和OTP。

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premukar,

Hi Premukar,

您可以在UM-B-012的创建中看到14583的引导序列,辅助引导程序部分5.示例项目与使用DA14583兼容,您只需使用583选项构建它们。您可以使用带有14583的智能片段并刻录闪光灯,只需确保选择SPI引脚的正确配置(选择14583应选择正确的引脚,但您也可以从电路板设置中检查所选引脚)。如果您想与Flash进行交互,您可以查看它使用Suota配置文件以初始化的接近示例,以启用和与内部闪存进行交互。在14583上使用内部闪光灯不需要特殊的驱动程序只是正确的针脚。

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
I tried to down load the blinky.hex into Embedded SPI Flash using Smart Snippet tool. I am able to connect, but not able to down load the Application code into Embedded SPI Flash.

I am getting the following messages while connecting:
[INFO @16-02-18 17:12:36] Started download procedure...
[ACTION @16-02-18 17:12:37] Please press the hardware reset button on the board to start the download process.
[INFO @16-02-18 17:12:40] Reset detected
[INFO @16-02-18 17:12:42] Successfully disconnected from port COM12.
[INFO @16-02-18 17:12:42] Connection to COM12 port has successfully opened.
[INFO @16-02-18 17:12:42] Successfully disconnected from port COM12.
[info @ 16-02-18 17:12:42]成功下载了固件文件到电路板。
[INFO @16-02-18 17:12:42] Successfully configured SPI Flash ports and pins.

请给出程序步骤需要遵循将应用程序映像加载到嵌入式SPI闪光灯中。
I am not able to do any operations like burn and erase of Flash. Smart Snippet showing error messages while initiating the burn and erase operations.

Whether I need down load any binaries (Secondary Boot loader or flash_programmer) before down load the application image into Embedded SPI flash.
Please give the information about the step by step procedure to make working in Normal mode (i.e. running the application from flash). This issue block us without moving further progress.

Whether we can re-program the OTP region again to overwrite the existing Secondary boot loader code in the OTP region.

Please find the attached document for your reference.

附件:
MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premukar,

Hi Premukar,

Make sure that the proper UART pins are connected in order for the Smart Snippets to download the flash programmer to your device. Also make sure that the correct SPI pins are selected from the Board Setup section. After opening the Smart Snippets you should choose the 14583 version of the chip, this should select the appropriate SPI pins (although you should explicitly check the pins in the board setup). After that choose the SPI tab, press connect (in order for the flash programmer to be downloaded in the chip) and then erase the SPI flash (the most probable reason for not be able to erase or burn the flash is the pin selection - 2_0, 2_3, 2_4, 2_9 should be selected in board setup). There is no need to download any binaries for burning the flash Smart Snippets downloads it on the connection procedure.

Thanks MT_dialog

Premkumar.
Offline
Last seen:4 years 11 months ago
加入:2015-12-16 05:45
Hi,

Hi,
whether we can write OTP region multiple times.

MT_dialog
Offline
Last seen:4 days 15 hours ago
职员
加入:2015-06-08 11:34
Hi Premkumar,

Hi Premkumar,

您无法多次刻录OTP,OTP代表一个时间可编程,您只能将位点从0翻转到1。

Thanks MT_dialog