![](templates/subSilver/images/CCSLogo.jpg) |
![CCS C Software and Maintenance Offers](templates/subSilver/images/forumAd6.jpg) |
View previous topic :: View next topic |
Author |
Message |
chava
Joined: 07 Sep 2003 Posts: 56
|
Compiler generates endless loops |
Posted: Sun Jul 11, 2004 4:43 pm |
|
|
Hello
I am sort of new to ccs compiler, and the reason is that :
I get an asignment from my bos, I've got some amount of time to finish it,
I sit and plan a nice little C program and I write it, as I know C, and then when I compile it, I realize that the compiler generates endless loops, here and there - while my code does not contains any loops.
here is a sample code(its simple and short but its a good example of what I do):
Code: |
#define jumper porta,0
int a,b,c,d;
void initiate(){
a=5;
b=5;
c=5;
d=5;
}
void function1(){
if(bit_test(jumper)
a=6;
}
void main(){
initiate();
function1();
}
|
When I add The "IF" statement, the code stuck in endless loop between "a=5;" to "c=5;"(for example)
when I dont add the "IF" statement, there is no loop, and the program runs as requested....(strange, isnt it???)
when I open the program memory window (in mplab ide) I find that actualy, an endless loop was created between those commands.
today I tryed for several houres to find how to skip this problem then I made the initiate() function "ONLINE and the problem was solved.....
something else happened , in a nother ocasion, when I did:
Code: |
if(a==1){
if(b==2)
c=3;
b=4;
}
|
and the code ignored the "d=4;, it didnt do it(I run some tests)
only when I did:
Code: |
if(a==1){
b=4;
if(b==2)
c=3;
}
|
it worked good, which is not good, becouse this is not what I wanted.....
So, what can you tell me about this?
what is the compiler forbids me to do?
Is there any "IF statement" rulles that are different from the ANCI C rules?
I tryed to add braces to every If like that:
Code: |
if(a==1){
b=4;
if(b==2){
c=3;
}
}
|
but it did'nt helped?
can anyone help me?
It became so ridiculouse - that I waste a lot of time on manipulating the code to "FIT" the compiler so that it will do what I asked it to do in simple C lines.... |
|
![](templates/subSilver/images/spacer.gif) |
dyeatman
Joined: 06 Sep 2003 Posts: 1924 Location: Norman, OK
|
|
Posted: Sun Jul 11, 2004 4:59 pm |
|
|
Here you go again for the 5th time! I am not mad at you either, but, as PCM told you earlier (http://www.ccsinfo.com/forum/viewtopic.php?t=18712), you need to contact CCS tech support.
We are not the CCS programmers and cannot fix this! Send them the example you gave and let them attack this. The only reason I can think of that you wouldn't contact CCS after all this is that you are using a pirated copy of the compiler. If it is a legal copy then they should help you. Otherwise, if it is not, we cannot help you so you have to just do whatever the compiler forces you to do to make it work since you indicate have already figured that out anyway. |
|
![](templates/subSilver/images/spacer.gif) |
Neutone
Joined: 08 Sep 2003 Posts: 839 Location: Houston
|
Re: Compiler generates endless loops |
Posted: Sun Jul 11, 2004 8:06 pm |
|
|
This is just poor syntax.
Code: |
#define jumper porta,0
if(bit_test(jumper)
|
The efective way to get this done
Code: |
#bit jumper porta,0
if(jumper)
|
I'm not even sure what you expect the rest of your code to do. It's no wonder the compiler is confused. |
|
![](templates/subSilver/images/spacer.gif) |
chava
Joined: 07 Sep 2003 Posts: 56
|
that was an example |
Posted: Mon Jul 12, 2004 12:21 am |
|
|
hello
First "dyeatman" :
I do have a legal registered copy of the pcb and pcm (3.174)
I am in contact with the CCS support and they did helped me last time, they opened my Ref# for about 2 weeks so that I can download other versions of the compiler, and I did.but is looks like it didnt helped.
Im here becouse I know that users of that compiler may have ecountered with this issue before and may help me with that.
I know that expirienced programers know the limits of theire compiler and find the things they have to avoid or how to do things in a better way.
this what the forum is all about, isnt it?
Why is this bodering you that I'm trying? |
|
![](templates/subSilver/images/spacer.gif) |
dyeatman
Joined: 06 Sep 2003 Posts: 1924 Location: Norman, OK
|
|
Posted: Mon Jul 12, 2004 7:33 am |
|
|
Chava,
OK, you asked....
What is bothering me (and a few other folks here) is that more than one person has already told you that we cant do you any good but you persist in posting the same thing over and over in the last four months.
When they tell me they can't help with a specific subject or I get no responses to a question, I dont keep asking over and over.
The only way this board will operate smoothly is for EVERYONE to observe courtesy and not clutter the board by re-asking questions that have already been answered in one form or another. More than 98% of the time my questions are answered by the search engine but for some reason many folks choose not to do a search on the internet and this forum before asking a question. For instance, using the search engine I found that your specific question had been asked four other times AND ANSWERED yet you persist! IMHO PCM is one of the (if not THE) most proficient CCS programmers here and when he tells you something it is a good bet to follow his advice. If in fact you did ask CCS then say so and indicate wht their response was. If they dont respond keep asking until they do. They are the official support channel not us.
As a professional programmer for the last 30 years I have to monitor four different programmers newsgroups and un-necessary questions being asked simply wastes forum space and time. You can be pretty certain that if anyone here has an answer to your question they would have provided it by the second or third time you asked.
I am done with this..... |
|
![](templates/subSilver/images/spacer.gif) |
chava
Joined: 07 Sep 2003 Posts: 56
|
Im sorry, |
Posted: Mon Jul 12, 2004 12:01 pm |
|
|
Have a nice day |
|
![](templates/subSilver/images/spacer.gif) |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|