v2.0 working

Dependencies:   mbed

Committer:
krishanprajapat
Date:
Thu Jul 30 12:39:50 2015 +0000
Revision:
2:2b08032d9678
Parent:
0:8ed3ad791ca2
read from sd card and send to adf working;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
krishanprajapat 0:8ed3ad791ca2 1 void interleave( unsigned char *input, unsigned char *output ){
krishanprajapat 0:8ed3ad791ca2 2
krishanprajapat 0:8ed3ad791ca2 3 unsigned int outState = 0;
krishanprajapat 0:8ed3ad791ca2 4 unsigned int outByte = 0;
krishanprajapat 0:8ed3ad791ca2 5
krishanprajapat 0:8ed3ad791ca2 6 for( unsigned int i = 0 ; i < 36 ; ++i ){
krishanprajapat 0:8ed3ad791ca2 7 for(unsigned int j = 0 ; j < 30 ; ++j){
krishanprajapat 0:8ed3ad791ca2 8 unsigned int x = j*36+i;
krishanprajapat 0:8ed3ad791ca2 9 unsigned char tempBit = ((input[x >> 3]) >> (7-(x % 8))) & 1;
krishanprajapat 0:8ed3ad791ca2 10 switch(outState){
krishanprajapat 0:8ed3ad791ca2 11 case 0:
krishanprajapat 0:8ed3ad791ca2 12 outState = 1;
krishanprajapat 0:8ed3ad791ca2 13 output[outByte] = tempBit << 7;
krishanprajapat 0:8ed3ad791ca2 14 break;
krishanprajapat 0:8ed3ad791ca2 15 case 1:
krishanprajapat 0:8ed3ad791ca2 16 outState = 2;
krishanprajapat 0:8ed3ad791ca2 17 output[outByte] += tempBit << 6;
krishanprajapat 0:8ed3ad791ca2 18 break;
krishanprajapat 0:8ed3ad791ca2 19 case 2:
krishanprajapat 0:8ed3ad791ca2 20 outState = 3;
krishanprajapat 0:8ed3ad791ca2 21 output[outByte] += tempBit << 5;
krishanprajapat 0:8ed3ad791ca2 22 break;
krishanprajapat 0:8ed3ad791ca2 23 case 3:
krishanprajapat 0:8ed3ad791ca2 24 outState = 4;
krishanprajapat 0:8ed3ad791ca2 25 output[outByte] += tempBit << 4;
krishanprajapat 0:8ed3ad791ca2 26 break;
krishanprajapat 0:8ed3ad791ca2 27 case 4:
krishanprajapat 0:8ed3ad791ca2 28 outState = 5;
krishanprajapat 0:8ed3ad791ca2 29 output[outByte] += tempBit << 3;
krishanprajapat 0:8ed3ad791ca2 30 break;
krishanprajapat 0:8ed3ad791ca2 31 case 5:
krishanprajapat 0:8ed3ad791ca2 32 outState = 6;
krishanprajapat 0:8ed3ad791ca2 33 output[outByte] += tempBit << 2;
krishanprajapat 0:8ed3ad791ca2 34 break;
krishanprajapat 0:8ed3ad791ca2 35 case 6:
krishanprajapat 0:8ed3ad791ca2 36 outState = 7;
krishanprajapat 0:8ed3ad791ca2 37 output[outByte] += tempBit << 1;
krishanprajapat 0:8ed3ad791ca2 38 break;
krishanprajapat 0:8ed3ad791ca2 39 case 7:
krishanprajapat 0:8ed3ad791ca2 40 outState = 0;
krishanprajapat 0:8ed3ad791ca2 41 output[outByte] += tempBit;
krishanprajapat 0:8ed3ad791ca2 42 ++outByte;
krishanprajapat 0:8ed3ad791ca2 43 break;
krishanprajapat 0:8ed3ad791ca2 44 }
krishanprajapat 0:8ed3ad791ca2 45 }
krishanprajapat 0:8ed3ad791ca2 46 for(unsigned int j = 0 ; j < 2 ; ++j){
krishanprajapat 0:8ed3ad791ca2 47 switch(outState){
krishanprajapat 0:8ed3ad791ca2 48 case 0:
krishanprajapat 0:8ed3ad791ca2 49 output[outByte] = 0;
krishanprajapat 0:8ed3ad791ca2 50 outState = 1;
krishanprajapat 0:8ed3ad791ca2 51 break;
krishanprajapat 0:8ed3ad791ca2 52 case 1:
krishanprajapat 0:8ed3ad791ca2 53 outState = 2;
krishanprajapat 0:8ed3ad791ca2 54 break;
krishanprajapat 0:8ed3ad791ca2 55 case 2:
krishanprajapat 0:8ed3ad791ca2 56 outState = 3;
krishanprajapat 0:8ed3ad791ca2 57 break;
krishanprajapat 0:8ed3ad791ca2 58 case 3:
krishanprajapat 0:8ed3ad791ca2 59 outState = 4;
krishanprajapat 0:8ed3ad791ca2 60 break;
krishanprajapat 0:8ed3ad791ca2 61 case 4:
krishanprajapat 0:8ed3ad791ca2 62 outState = 5;
krishanprajapat 0:8ed3ad791ca2 63 break;
krishanprajapat 0:8ed3ad791ca2 64 case 5:
krishanprajapat 0:8ed3ad791ca2 65 outState = 6;
krishanprajapat 0:8ed3ad791ca2 66 break;
krishanprajapat 0:8ed3ad791ca2 67 case 6:
krishanprajapat 0:8ed3ad791ca2 68 outState = 7;
krishanprajapat 0:8ed3ad791ca2 69 break;
krishanprajapat 0:8ed3ad791ca2 70 case 7:
krishanprajapat 0:8ed3ad791ca2 71 outState = 0;
krishanprajapat 0:8ed3ad791ca2 72 ++outByte;
krishanprajapat 0:8ed3ad791ca2 73 break;
krishanprajapat 0:8ed3ad791ca2 74 }
krishanprajapat 0:8ed3ad791ca2 75 }
krishanprajapat 0:8ed3ad791ca2 76 }
krishanprajapat 0:8ed3ad791ca2 77 }