Dear friends
i would like to know how to send any bit of a char to any port pin ie. unsigned char a = 0xAA; now at memory location for a will contains 10101010b can i send the bit 0 of "a" to P1_0? i don't want to send the entire a to P1
thanking you
sunish
use a buffer like MyBuffer[20], as you know you can now put 19 characters in this buffer. if your strings are fixed for example always 5 chars, test if the 6th char is pressed, or use * or # or any other button for entering the string. Don't forget to collect the previous chars in the buffer.
for example:
char MyBuffer[20],input; // buffer and current key input int i=0; // counter while (input != '#') // "#" key is assumed as ENTER key { input = MyBuffer[i]; i++; }
hope this helps
I am not a C51 guy, but why don't you try something like this:
P1_0 = (a & 0x1) ;
to place bit 0 on the pin.
I meant, of course, "by dedicating at least one pin for ..."
Port pins/latches are usually bit-adressable.
sunish, please reveal to us what you want to do - if you want to send the data to the outside world, maybe you want to interface your UART. Other options are to transmit your byte using "bit-banging" (by dedicating at least one bit for communication with another device), but for that you need masks and shifting. good luck.
View all questions in Keil forum