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()".
我无法确定它在执行“app_dis_init()”函数时它将进入异常处理程序的原因。
If I am commenting the "app_dis_init()" function, it is not going the exception handler and I am able to see the device name on the mobile.
Please help me to resolve the issue.
Please find the attached Screen shots for your reference
Device:

嗨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
Hi,
I have taken example projects (both "Blinky" and "ble_app_peripheral"). These two projects are working in Keil.
I have done set up for eclipse by using the makefile and GCC. It is working for "Blinky" project.
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 section `.constdata' will not fit in region `RAM_IROM4'
2. Section ER_IROM5 loaded at [20000440,2000552f] overlaps section .constdata loaded at [200003e4,200005eb]
3. Region `RAM_IROM4' overflowed by 428 bytes.
链接器脚本文件中的内存部分:
OTP (r) : ORIGIN = 0x00040000, LENGTH = 0x8000
RETENTION_RAM2 (rw) : ORIGIN = 0x00080768, LENGTH = 0x2968
RAM_IROM1 (rwx) : ORIGIN = 0x20000000, LENGTH = 0x0160
RAM_IROM2 (rwx) : ORIGIN = 0x20000160, LENGTH = 0x0160
RAM_IROM3 (rwx) : ORIGIN = 0x200002C0, LENGTH = 0x0080
RAM_IROM4 (rwx) : ORIGIN = 0x20000340, LENGTH = 0x0100
RAM_IROM5 (rwx) : ORIGIN = 0x20000440, LENGTH = 0x7AC0
RAM_RW_IRAM51 (rw) : ORIGIN = (0x20009000 - (1024 + 12)), LENGTH = (1024 + 12)
RAM_RW_IRAM52 (r) : ORIGIN = 0x20009000, LENGTH = 0x0020
RAM_RW_IRAM53(RW):源= 0x20009020,长度= 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) : ORIGIN = 0x00080768, LENGTH = 0x2968
RAM_IROM1 (rwx) : ORIGIN = 0x20000000, LENGTH = 0x0160
RAM_IROM2 (rwx) : ORIGIN = 0x20000160, LENGTH = 0x0160
RAM_IROM3 (rwx) : ORIGIN = 0x200002C0, LENGTH = 0x0080
RAM_IROM4 (rwx) : ORIGIN = 0x20000340, LENGTH = 0x0300
RAM_IROM5 (rwx) : ORIGIN = 0x20000640, LENGTH = 0x7AC0
RAM_RW_IRAM51 (rw) : ORIGIN = (0x20009000 - (1024 + 12)), LENGTH = (1024 + 12)
RAM_RW_IRAM52 (r) : ORIGIN = 0x20009000, LENGTH = 0x0020
RAM_RW_IRAM53(RW):源= 0x20009020,长度= 0x01e0
RAM_RW_IRAM54 (rw) : ORIGIN = 0x20009200, LENGTH = 0x0600
Please help me to resolve the issue.
I have seen the "sysram_case23.ini" in the keil, what is the significance of this .ini file.
Any supporting document, which will help me to resolve the memory issue and setting up the eclipse.
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 ?
嗨premkumar,
对不起,但目前我们只支持Keil而不是DA14580上的Eclipse。请检查doc an-b-024.pdf,也许您会发现它有用。
Thansk MT_dialog
Hi,
I have taken example BLE peripheral code in keil uVision. I couldn't identify, where application code needs to be changed to send the data (i.e. some bytes of information) from DA14583DEVKT-B to mobile app. Could you please provide any document to understand how to change the application. Presently, I am using SDK 5.0.3 software on DA14583DEVKT-B board.
Please provide software guide document for SDK 5.0.3.
嗨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
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 give information about the purpose of jump table concept and "rom_symdef.txt"
Hi,
I couldn't access the link for UM-B-050.pdf, which is available in the forums.
Please help me to access the UM-B-050.pdf.
嗨premkumar,
About the jump table please have a look at this posthttp://support.dialog-semiconductor.com/jumptablebase88also regarding the jump table, its usage is mainly to overide functions in ROM, if you want for instance the ROM code not to use the default function (the one located in the jump table), you can implement your own function in RAM and overide the function in ROM through the jump table, the rom_sym_def.txt file includes all the symbols from functions that are located in the ROM memory. I am not aware for the files that are created in eclipse.
If you have tried to access the document then you should have accepted and submitted the terms and conditions for using the software and the documents. It takes a couple of days for the admin to grand your access to the documents. Just be a bit patient and your access will be granded.
Thanks MT_dialog
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.
嗨premkumar,
Have you accepted the terms and conditions when you 've tried to donwload the SDK and the user manuals in order for access to be granted ?
Thanks MT_dialog
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.
嗨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
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.
请帮助我进入第一个链接。
嗨premkumar,can you go to the DA14580 product, Software & Tools and click on padlock icon next to the SDK or its release notes (top items). This should open up the SDK access request.
BR JE_Dialog
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.
Please give the information, how I can use the special function registers to debug the I2C.
Hi Premukar,
我们没有为580提供带寄存器地图/系统查看器的.srf文件。但我想你可以通过内存窗口观看你的寄存器。
Thanks MT_dialog
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).
I am able to send the slave address and write bit on the I2C lines. But I am not able to send any data bytes on the I2C lines.
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)
或者
SEND_I2C_COMMAND( 0xD0 );
执行上面的指令后,我不是ble see any change in the "I2C_DATA_CMD_REG" register value
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.
Hi premkumar,
There isn't any other official I2C driver for the 580 other than the eeprom driver but there is extensive explanation of how the driver operates on some related i2c posts on the forum. Please check the following links.
http://support.dialog-semiconductor.com/multiple-byte-read-i2c
http://support.dialog-semiconductor.com/documentation
Thanks MT_dialog
Hi,
我无法使用闪光来保留我的应用程序代码。
Presently, "scatterfile_common.sct" contains only limited memory range. I think that is mapped only to RAM area (42KB, which starts from 0x20000000).
Please provide the information about the base addresses of different memory areas (ROM, OTP, System SRAM, Retention RAMs and Flash)
我需要在keil中的分散文件或内存部分地址中更改的任何事情,以使用ROM和Flash(即1 Mbit)区域。
Please guide me to use different memory section as per the requirement.
嗨premkumar,
You can find the needed information about the base addresses in the 580 and scatter file info in the document UM-B-011: User Manual - DA14580 Memory map and scatter file.
Thanks MT_dialog
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.
Please give help me to use the flash to write my application and OTP.
Hi Premukar,
You can see the booting sequence of the 14583 in the UM-B-012 Creation of a secondary bootloader section 5. The example projects are compatible with using the da14583, you just have to build them by using the 583 option. You can use Smart Snippets with the 14583 as well and burn the Flash, just make sure to select the proper configuration of the SPI pins (selecting 14583 should choose the right pins but you can also check the selected pins from the board setup). If you want to interact with the flash you can have a look at the proximity example where it uses the SUOTA profile in order to initialize, to enable and interact with the internal flash. Using the internal flash on 14583 doesn't require a special driver just the right pins.
Thanks MT_dialog
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]重置检测到
[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] Successfully downloaded firmware file to the board.
[信息@ 16-02-18 17:12:42]成功配置了SPI闪存端口和引脚。
Please give the procedural step need to follow to down load the application Image into Embedded SPI flash.
我无法做任何像燃烧和抹掉的操作。智能代码段显示错误消息,同时启动刻录和擦除操作。
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.
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
Hi,
whether we can write OTP region multiple times.
嗨premkumar,
You can't burn the OTP multiple times, OTP stands for One Time Programmable, you can only flip the bits from 0 to 1.
Thanks MT_dialog