HAI, I would like to implement TTL interface to a swipe card reader. I want to read track 2 of a card .This contains alphanumeric characters and each character is of 5 bit size which includes one parity bit. I designed a hardware circuit for this with AT89c2051. The data is coming as a stream of bits from the readers magnetic head. So I have store this bit stream to a bit array. I used bdata variable for this purpose, but is not possible to write to the bit position. How I can write these bits to my bit array? What is wrong with code below: I used the pin P1.6 as the input for the data from card reader's magnetic head. Please help me.
sbit dat=P1^6; bdata unsigned char mydata[13]; for (i = 0; i < 13; i++) { for (mask = 0x01; mask != 0x00; mask <<= 1) { mydata[i] & mask = dat; } }
Here the error I got is errorC141:syntax error near'=';
Please give a replay.
Access:
(*Store) & (1<<BitNumber);
Store:
if (BitVal==0) *Store &= ~(1<<BitNumber); else *Store |= (1<<BitNumber);
BitNumber is a value 0 to 7.
Since bit manipulation into normal C data types (char or int) is really standard: Why do you not use Google to search for example code? Are you afraid that you may find too many examples?