⚠️ Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.wsdof.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
This is our English forum and customers posts their question in English. So, please try to translate your question in English. Otherwise, you can post your question in our Chinese forums.
我downloaded the latest DSPS program on the official website, but when I enter the debug mode when I run the program, the program is easy to run. Is there any place to modify the downloaded program? How can I enter debug mode normally? The chip I am using is DA14580.
我s there any place to modify the downloaded program?
Could you please clarify your question? You mean that after downloading the firmware into the System-RAM and you still have attached the debuggers, you would like to modify the firmware? If yes, this is not possible/
How can I enter debug mode normally?
我would strongly recommend you to have a look atTutorial 8: Debugging methodswhich is describing how to debug your code.
我used the keil IDE to open the engineering v5.15 version of DSPS. There was a problem in the process of opening the debug mode.When I start debug session and run it,command will print the following information:
FUNC void disp_memlog(void) { int idx; unsigned int min_delta;
exec("log > Memlog.log");
printf("\n\n*** Memory Logging Results ***\n\n");
printf(">>> ENV HEAP <<<\n"); printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[0].used_sz, mem_log[0].max_used_sz); printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[0].used_other_sz, mem_log[0].max_used_other_sz);
printf(">>> DB HEAP <<<\n"); printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[1].used_sz, mem_log[1].max_used_sz); printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[1].used_other_sz, mem_log[1].max_used_other_sz);
printf(">>> MSG HEAP <<<\n"); printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[2].used_sz, mem_log[2].max_used_sz); printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[2].used_other_sz, mem_log[2].max_used_other_sz);
printf(">>> Non-Ret HEAP <<<\n"); printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[3].used_sz, mem_log[3].max_used_sz); printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[3].used_other_sz, mem_log[3].max_used_other_sz);
exec("log off"); } //disp_memlog() ends
**JLink Warning: CPU could not be halted ***JLink Error: Can not read register 15 (R15) while CPU is running ***JLink Error: Can not read register 16 (XPSR) while CPU is running ***JLink Error: Can not read register 0 (R0) while CPU is running ***JLink Error: Can not read register 1 (R1) while CPU is running ***JLink Error: Can not read register 2 (R2) while CPU is running ***JLink Error: Can not read register 3 (R3) while CPU is running ***JLink Error: Can not read register 4 (R4) while CPU is running ***JLink Error: Can not read register 5 (R5) while CPU is running ***JLink Error: Can not read register 6 (R6) while CPU is running ***JLink Error: Can not read register 7 (R7) while CPU is running ***JLink Error: Can not read register 8 (R8) while CPU is running ***JLink Error: Can not read register 9 (R9) while CPU is running ***JLink Error: Can not read register 10 (R10) while CPU is running ***JLink Error: Can not read register 11 (R11) while CPU is running ***JLink Error: Can not read register 12 (R12) while CPU is running ***JLink Error: Can not read register 13 (R13) while CPU is running ***JLink Error: Can not read register 14 (R14) while CPU is running ***JLink Error: Can not read register 15 (R15) while CPU is running ***JLink Error: Can not read register 16 (XPSR) while CPU is running ***JLink Error: Can not read register 17 (MSP) while CPU is running ***JLink Error: Can not read register 18 (PSP) while CPU is running ***JLink Error: Can not read register 20 (CFBP) while CPU is running
我used Jlink to download the program. I can guarantee that the connection is correct, because the same way to debug the DA1458x_SDK5.0.1 version of the program downloaded from the official website is no problem.
Could you please provide me some additional inputs regarding your issue? Are you using any of our development boards or you have a custom board? Are you able to download firmware form any other example of the SDK into the System-RAM?
我have a custom board.I can download firmware to System-RAM from any other example of the SDK. Only the example of this DSPS has a problem, I know that there is no problem with the configuration of the keil environment. I can also see the serial number of JLINK, and click on ok, but there will still be problems I described earlier.
The DSPS projects is by default using the extended sleep mode, so if you change it into the active mode, could you please let me now if you have the same issue?
app_default_sleep_mode = ARCH_SLEEP_OFF ; // in user_config.h
Thank you for your answer, I have solved the previous problem, now I have a new question I would like to ask, the same is the dsps program, I can only send data after running, can not accept data, whether it is to be done in the program What modified?
Glad that you figured your issue out, If you found my answer useful please mark it as accepted. Could you please clarify your second question? You connected the DA14580 with the DSPS mobile application, didn’t you? Did you make any modification in the source code? Be aware that if you are using extended sleep mode, you have to use UART flow control (either HW for SW flow control). Otherwise, you will not be able to wake up.
我connected the DA14580 to the DSPS mobile app. I have not made any changes to the source code. Now I can send data to the mobile phone through the computer, but I can't send data to the serial port of the computer through the mobile phone. Now the data transmission is one-way transmission. Do I need to make some modifications in the DSPS program to achieve two-way data transmission?
No, you will not need to do any modification into the DSPS reference design in order to send data form your mobile to the PC. Could you please provide me some inputs on that? Which PC serial application are you using? And how are you tying to send data from the mobile to the PC? If you found any answer useful, please mark one of them as “accepted”.
我am using the DAPS app on your official website. I use this software to connect to the DA14580. I can send data to the phone on the PC, but I can't send data from the phone to the PC. It is not clear whether there is any configuration on the software side that needs to be modified.
PC的串口应用程序应该没问题,using the serial port assistant I usually use to print data. Whether the v5.15 version of the DSPS program can not print the data sent from the mobile phone in the serial port application. But I can use the V3.15 version of the DSPS program to send and receive data normally on the PC and mobile phones. So in order to realize the two-way sending and receiving function of data, I would like to know if there is any need to modify the version of V5.15.
我n case you have a custom board, which UART pins are you using? Be aware that if you would like to use extended sleep mode, you should have UART flow control (either software or hardware). Otherwise you will not be able to wake-up, because the device goes into extended sleep mode between advertising or connection intervals.
Hi Qyt,
This is our English forum and customers posts their question in English. So, please try to translate your question in English. Otherwise, you can post your question in our Chinese forums.
Thanks, PM_Dialog
Hi,PM_Dialog
Sorry,I repeat my question again.
我downloaded the latest DSPS program on the official website, but when I enter the debug mode when I run the program, the program is easy to run. Is there any place to modify the downloaded program? How can I enter debug mode normally? The chip I am using is DA14580.
Thanks, Qyt
Hi Qyt,
谢谢你用英语翻译你的问题。
Could you please clarify your question? You mean that after downloading the firmware into the System-RAM and you still have attached the debuggers, you would like to modify the firmware? If yes, this is not possible/
我would strongly recommend you to have a look atTutorial 8: Debugging methodswhich is describing how to debug your code.
Thanks, PM_Dialog
Hi,PM_Dialog
我will describe my problem in detail.
我used the keil IDE to open the engineering v5.15 version of DSPS. There was a problem in the process of opening the debug mode.When I start debug session and run it,command will print the following information:
FUNC void disp_memlog(void)
{
int idx;
unsigned int min_delta;
exec("log > Memlog.log");
printf("\n\n*** Memory Logging Results ***\n\n");
printf(">>> ENV HEAP <<<\n");
printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[0].used_sz, mem_log[0].max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[0].used_other_sz, mem_log[0].max_used_other_sz);
printf(">>> DB HEAP <<<\n");
printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[1].used_sz, mem_log[1].max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[1].used_other_sz, mem_log[1].max_used_other_sz);
printf(">>> MSG HEAP <<<\n");
printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[2].used_sz, mem_log[2].max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[2].used_other_sz, mem_log[2].max_used_other_sz);
printf(">>> Non-Ret HEAP <<<\n");
printf("Used size in this HEAP : %4d (current) - %4d (maximum)\n", mem_log[3].used_sz, mem_log[3].max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n", mem_log[3].used_other_sz, mem_log[3].max_used_other_sz);
exec("log off");
} //disp_memlog() ends
**JLink Warning: CPU could not be halted
***JLink Error: Can not read register 15 (R15) while CPU is running
***JLink Error: Can not read register 16 (XPSR) while CPU is running
***JLink Error: Can not read register 0 (R0) while CPU is running
***JLink Error: Can not read register 1 (R1) while CPU is running
***JLink Error: Can not read register 2 (R2) while CPU is running
***JLink Error: Can not read register 3 (R3) while CPU is running
***JLink Error: Can not read register 4 (R4) while CPU is running
***JLink Error: Can not read register 5 (R5) while CPU is running
***JLink Error: Can not read register 6 (R6) while CPU is running
***JLink Error: Can not read register 7 (R7) while CPU is running
***JLink Error: Can not read register 8 (R8) while CPU is running
***JLink Error: Can not read register 9 (R9) while CPU is running
***JLink Error: Can not read register 10 (R10) while CPU is running
***JLink Error: Can not read register 11 (R11) while CPU is running
***JLink Error: Can not read register 12 (R12) while CPU is running
***JLink Error: Can not read register 13 (R13) while CPU is running
***JLink Error: Can not read register 14 (R14) while CPU is running
***JLink Error: Can not read register 15 (R15) while CPU is running
***JLink Error: Can not read register 16 (XPSR) while CPU is running
***JLink Error: Can not read register 17 (MSP) while CPU is running
***JLink Error: Can not read register 18 (PSP) while CPU is running
***JLink Error: Can not read register 20 (CFBP) while CPU is running
我used Jlink to download the program. I can guarantee that the connection is correct, because the same way to debug the DA1458x_SDK5.0.1 version of the program downloaded from the official website is no problem.
Please help me solve this problem.
Thanks,Qyt
Hi Qyt,
Could you please provide me some additional inputs regarding your issue? Are you using any of our development boards or you have a custom board? Are you able to download firmware form any other example of the SDK into the System-RAM?
From the Keil environment, please navigate to:
Project -> Options for target -> Debug -> Setting (right corner)
After that, you should be able to see the Serial Number of the J-Link. Press ok and try to download firmware into he System-RAM.
Thanks, PM_Dialog
Hi,PM_Dialog
我have a custom board.I can download firmware to System-RAM from any other example of the SDK. Only the example of this DSPS has a problem, I know that there is no problem with the configuration of the keil environment. I can also see the serial number of JLINK, and click on ok, but there will still be problems I described earlier.
thanks,Qyt
Hi Qyt,
The DSPS projects is by default using the extended sleep mode, so if you change it into the active mode, could you please let me now if you have the same issue?
app_default_sleep_mode = ARCH_SLEEP_OFF ; // in user_config.h
Thanks, PM_Dialog
Hi,PM_Dialog
Thank you for your answer, I have solved the previous problem, now I have a new question I would like to ask, the same is the dsps program, I can only send data after running, can not accept data, whether it is to be done in the program What modified?
Thanks,Qyt
Hi Qyt,
Glad that you figured your issue out, If you found my answer useful please mark it as accepted. Could you please clarify your second question? You connected the DA14580 with the DSPS mobile application, didn’t you? Did you make any modification in the source code? Be aware that if you are using extended sleep mode, you have to use UART flow control (either HW for SW flow control). Otherwise, you will not be able to wake up.
Thanks, PM_Dialog
Hi,PM_Dialog
我connected the DA14580 to the DSPS mobile app. I have not made any changes to the source code. Now I can send data to the mobile phone through the computer, but I can't send data to the serial port of the computer through the mobile phone. Now the data transmission is one-way transmission. Do I need to make some modifications in the DSPS program to achieve two-way data transmission?
Thanks,Qyt
Hi Qyt,
No, you will not need to do any modification into the DSPS reference design in order to send data form your mobile to the PC. Could you please provide me some inputs on that? Which PC serial application are you using? And how are you tying to send data from the mobile to the PC? If you found any answer useful, please mark one of them as “accepted”.
Thanks, PM_Dialog
Hi,PM_Dialog
我am using the DAPS app on your official website. I use this software to connect to the DA14580. I can send data to the phone on the PC, but I can't send data from the phone to the PC. It is not clear whether there is any configuration on the software side that needs to be modified.
PC的串口应用程序应该没问题,using the serial port assistant I usually use to print data. Whether the v5.15 version of the DSPS program can not print the data sent from the mobile phone in the serial port application. But I can use the V3.15 version of the DSPS program to send and receive data normally on the PC and mobile phones. So in order to realize the two-way sending and receiving function of data, I would like to know if there is any need to modify the version of V5.15.
Thanks,Qyt
Hi Qyt,
我n case you have a custom board, which UART pins are you using? Be aware that if you would like to use extended sleep mode, you should have UART flow control (either software or hardware). Otherwise you will not be able to wake-up, because the device goes into extended sleep mode between advertising or connection intervals.
Thanks, PM_Dialog