NEW: Learning electronics? Ask your questions on the new Electronics Questions & Answers site hosted by CircuitLab.
Microcontroller Programming » led array code
March 27, 2011 by newbie |
I am new to c programming. I built the led array and loaded the test program had a few problems corrected them and test work now. I started looking at the educational code and the manual. I get to page 27 and had no idea how to complete the code. I then looked at the completed code and got confused as to what was going on. I understand the array and how it is set up but can somebody walk through the code with met . I know that you are trying to see what the first led is ( on or off) but I don't know how to follow the two if statements. inline uint8_t ledarray_get(uint8_t i, uint8_t j) { if(i < ROWS && j < COLS) { if((la_data[j] & (1<<i)) != 0) { return 1; } else { return 0; } } else { return 0; } } This might seem very easy to some but I have been looking at this for a while and just can't seem to get it. Thanks Newbie |
---|---|
March 27, 2011 by newbie |
Here is the code in correct indent
} |
March 28, 2011 by Hexorg |
read that code like this: (If "i" is smaller then "ROWS" and "j" is smaller then "COLS") AND (if "i"'s bit in "j"'s row of "la_data" array is set) then return 1, otherwise 0; Pretty much first we do the sanity check, making sure that "i" and "j" are within the screen boundaries. If they ARE within boundaries, we read the bit according to [i, j] coordinates, and return it. Nested if {} statements are executed one after the other, as long as previous if {} statement is true. Hope this helps. Hexorg. |
March 29, 2011 by newbie |
Sorry for the long delay I just got time to look at the reply. Thanks for the reply. I understand it now . Why is there another else return 0 ? Is it to close the second else? Thanks again newbie |
March 29, 2011 by bretm |
Does this formatting make it more clear?
Since "return" causes subsequent statements in the same routine to be skipped, I might have written it like this:
Is that more confusing, or less? |
March 29, 2011 by Hexorg |
newbie, here's is a good tutorial about if statements and here is one about functions if you have some free time, I'd recommend to read all the C - made easy articles. Actually, do you guys think we should put those tutorial links somewhere on top of the website as a recommendation to read? |
April 02, 2011 by newbie |
Hello got side tracked again. Thanks for all your suggestions and help. I see it better with your programming bretm. I can understand both now but it seems to bretm's flows better for me. Also thanks for links Hexorg. I will be looking at them. Thanks |
Please log in to post a reply.
Did you know that our customers love us? Learn more...
|