Hey all, I am working on a project which is quickly running out of space. So, I am now going back through and doing come closer examination of my code and how to make it a little more efficient. My question is this... In nearly learning example given ints are called for nearly everything. Ex. int ledPin = 1; or int myVal = 1; Is it bad fu to use byte for pins as we never get above the number 13? if myVal was only 50, I would have lots of head room if I used a byte instead of an int. More so, if I am wanting to store the value of a yes or no question, I could use a boolean and only use 1 bit. But I see lots of examples where folks tie the value to an int. So, where is (or is there) right or wrong?(or worse... bad form 8-)).
Also relating to bytes (and it may be the answer to the question above) When I switched out some bytes with ints and watched it in the terminal (serial read) bytes only show up as little square boxes not a value. Now, it seems to operate just fine, it just is unusable if I needed to troubleshoot.
Lastly, how does Arduino see arrays? I have a lot of stuff I am pulling from PROGMEM via arrays. to be honest it is my first time playing with them. If I have an array with 6 pointers, where does that live (what type of memory?). As I read it PROGMEM is used to keep RAM clear as it is not bogged down with bunches of strings. But, it would seem that the arrays would be eating some RAM. So, perhaps I am over analyzing this, but am just curious.