We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
Iam facing a problem where as soon as i declare a string my program after downloading will execute only 10 percent of program.
The program works fine when i dont declare a string.
I am using LM3S3748. Please Help me. Thank You
So let's just take a wild guess:
Do you understand the basic operation of strings in the 'C' programming language?
Really, they are just arrays - with the special requirement for a NUL charater to mark the end.
Do you have the correct NUL termination?
Do you understand the basic operation of arrays in the 'C' programming language?
They are very closely related to pointers - and bad handling of pointers is a great (and all too common) way to mess-up a program!
I have worked the same thing in IAR. What iam doing is a simple thing like, say.
char buffer[20];
As soon as this declaration is made, the welcome screen stops being displayed, with only the background set colour working. As far as the function is concerned it is developed by luminary micro themself.
do you have enough stack space?
I am sorry but how would i set the stack space and check if it is full
"What iam doing is a simple thing like, say."
No, that is still very vague!
We need to know precisely what you are doing, and where you are doing it!
eg, if it is a local array, it will use stack space - so Tamir's question is pertinent.
"As far as the function is concerned it is developed by luminary micro themself."
They supply the source code, so there is nothing to stop you stepping into it - as suggested!
Have you actually done any debugging of your own yet??
For one way to check, see:
http://www.keil.com/support/man/docs/armcc/armcc_cjaiidcg.htm
www.keil.com/.../armlinkref_chdgdfff.htm
The initial Stack Pointer value is set in the startup code...
you really cannot expect to be able to solve problems associated with your system if you do not know the basics. you must read the data sheet / user manual of the processor / display, and of course also to get acquainted with the Keil IDE.
Indeed!
Luminary (now TI) provide a startup_rvmdk.S in each of their sample pojects provided in the StellarisWare package. This includes all of the DevKit samples.
For example:
; <<< Use Configuration Wizard in Context Menu >>> ;****************************************************************************** ; ; startup_rvmdk.S - Startup code for use with Keil's uVision. ; ; Copyright (c) 2009 Luminary Micro, Inc. All rights reserved. ; Software License Agreement ; ; Luminary Micro, Inc. (LMI) is supplying this software for use solely and ; exclusively on LMI's microcontroller products. ; ; The software is owned by LMI and/or its suppliers, and is protected under ; applicable copyright laws. All rights are reserved. You may not combine ; this software with "viral" open-source software in order to form a larger ; program. Any use in violation of the foregoing restrictions may subject ; the user to criminal sanctions under applicable laws, as well as to civil ; liability for the breach of the terms and conditions of this license. ; ; THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED ; OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF ; MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. ; LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR ; CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. ; ; This is part of revision 4781 of the DK-LM3S9B96 Firmware Package. ; ;****************************************************************************** ;****************************************************************************** ; ; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> ; ;****************************************************************************** Stack EQU 0x00000100 ;****************************************************************************** ; ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> ; ;****************************************************************************** Heap EQU 0x00000000 ;****************************************************************************** ; ; Allocate space for the stack. ; ;****************************************************************************** AREA STACK, NOINIT, READWRITE, ALIGN=3 StackMem SPACE Stack __initial_sp
Hi andy,
Thanks a lot it was the problem with the stack space and it is solved now. I dont know what would have happened to me thinking about this issue if you weren't there to help us out. Thank you.
You're welcome.
You're welcome - although it was Tamir who first brought up the Stack Size as a possible culprit!