示例#1
0
void RFXX_PORT_INIT(void){
  HI_SEL();
  HI_SDI();
  LOW_SCK();
  //SET nFFS pin HI when using FIFO
  HI_DATA();
  SEL_OUTPUT();
  SDI_OUTPUT();
  SDO_INPUT();
  SCK_OUTPUT();
  IRQ_IN();
  DATA_OUT();
}
/*===============================================================================
	関数名	:	gpio_busout
	処理概要:	dt10drv_write()関数実行時のポートHi/Lo出力部	
===============================================================================*/
static void gpio_busout( unsigned int addr, unsigned int data )
{
	CS_LOW;

	DATA_OUT(data >> 12);		// bit15-12	
	CLK_LOW;

	DATA_OUT(data >> 8);		// bit11-8	
	CLK_HI;

	DATA_OUT(data >> 4);		// bit7-4	
	CLK_LOW;

	DATA_OUT(data);				// bit3-0	
	CLK_HI;

	if( addr >= 0x00010000 )
	{
		DATA_OUT(addr >> 20);		// bit23-20	
		CLK_LOW;
		DATA_OUT(addr >> 16);		// bit19-16	
		CLK_HI;
	}
chunk  old_scramble(chunk DATA_IN)
{
  static chunk COMMON_FRAME_1(7);
  static chunk COMMON_FRAME_2(0);
  chunk DATA_OUT(0);

  COMMON_FRAME_2[0 ] = COMMON_FRAME_1[0 ] ^ COMMON_FRAME_1[29];
  COMMON_FRAME_2[1 ] = COMMON_FRAME_1[0 ] ^ COMMON_FRAME_1[1 ] ^ COMMON_FRAME_1[29];
  COMMON_FRAME_2[2 ] = COMMON_FRAME_1[1 ] ^ COMMON_FRAME_1[2 ];
  COMMON_FRAME_2[3 ] = COMMON_FRAME_1[2 ] ^ COMMON_FRAME_1[3 ];
  COMMON_FRAME_2[4 ] = COMMON_FRAME_1[3 ] ^ COMMON_FRAME_1[4 ];
  COMMON_FRAME_2[5 ] = COMMON_FRAME_1[4 ] ^ COMMON_FRAME_1[5 ];
  COMMON_FRAME_2[6 ] = COMMON_FRAME_1[5 ] ^ COMMON_FRAME_1[6 ];
  COMMON_FRAME_2[7 ] = COMMON_FRAME_1[6 ] ^ COMMON_FRAME_1[7 ];
  COMMON_FRAME_2[8 ] = COMMON_FRAME_1[7 ] ^ COMMON_FRAME_1[8 ];
  COMMON_FRAME_2[9 ] = COMMON_FRAME_1[8 ] ^ COMMON_FRAME_1[9 ];
  COMMON_FRAME_2[10] = COMMON_FRAME_1[9 ] ^ COMMON_FRAME_1[10];
  COMMON_FRAME_2[11] = COMMON_FRAME_1[10] ^ COMMON_FRAME_1[11];
  COMMON_FRAME_2[12] = COMMON_FRAME_1[11] ^ COMMON_FRAME_1[12];
  COMMON_FRAME_2[13] = COMMON_FRAME_1[12] ^ COMMON_FRAME_1[13];
  COMMON_FRAME_2[14] = COMMON_FRAME_1[13] ^ COMMON_FRAME_1[14];
  COMMON_FRAME_2[15] = COMMON_FRAME_1[14] ^ COMMON_FRAME_1[15];
  COMMON_FRAME_2[16] = COMMON_FRAME_1[15] ^ COMMON_FRAME_1[16];
  COMMON_FRAME_2[17] = COMMON_FRAME_1[16] ^ COMMON_FRAME_1[17];
  COMMON_FRAME_2[18] = COMMON_FRAME_1[17] ^ COMMON_FRAME_1[18];
  COMMON_FRAME_2[19] = COMMON_FRAME_1[18] ^ COMMON_FRAME_1[19];
  COMMON_FRAME_2[20] = COMMON_FRAME_1[19] ^ COMMON_FRAME_1[20];
  COMMON_FRAME_2[21] = COMMON_FRAME_1[20] ^ COMMON_FRAME_1[21];
  COMMON_FRAME_2[22] = COMMON_FRAME_1[21] ^ COMMON_FRAME_1[22];
  COMMON_FRAME_2[23] = COMMON_FRAME_1[22] ^ COMMON_FRAME_1[23];
  COMMON_FRAME_2[24] = COMMON_FRAME_1[23] ^ COMMON_FRAME_1[24];
  COMMON_FRAME_2[25] = COMMON_FRAME_1[24] ^ COMMON_FRAME_1[25];
  COMMON_FRAME_2[26] = COMMON_FRAME_1[25] ^ COMMON_FRAME_1[26];
  COMMON_FRAME_2[27] = COMMON_FRAME_1[26] ^ COMMON_FRAME_1[27];
  COMMON_FRAME_2[28] = COMMON_FRAME_1[27] ^ COMMON_FRAME_1[28];
  COMMON_FRAME_2[29] = COMMON_FRAME_1[28] ^ COMMON_FRAME_1[29];
  DATA_OUT[0 ] = DATA_IN[0 ] ^ COMMON_FRAME_1[29];
  DATA_OUT[1 ] = DATA_IN[1 ] ^ COMMON_FRAME_1[28];
  DATA_OUT[2 ] = DATA_IN[2 ] ^ COMMON_FRAME_1[27];
  DATA_OUT[3 ] = DATA_IN[3 ] ^ COMMON_FRAME_1[26];
  DATA_OUT[4 ] = DATA_IN[4 ] ^ COMMON_FRAME_1[25];
  DATA_OUT[5 ] = DATA_IN[5 ] ^ COMMON_FRAME_1[24];
  DATA_OUT[6 ] = DATA_IN[6 ] ^ COMMON_FRAME_1[23];
  DATA_OUT[7 ] = DATA_IN[7 ] ^ COMMON_FRAME_1[22];
  DATA_OUT[8 ] = DATA_IN[8 ] ^ COMMON_FRAME_1[21];
  DATA_OUT[9 ] = DATA_IN[9 ] ^ COMMON_FRAME_1[20];
  DATA_OUT[10] = DATA_IN[10] ^ COMMON_FRAME_1[19];
  DATA_OUT[11] = DATA_IN[11] ^ COMMON_FRAME_1[18];
  DATA_OUT[12] = DATA_IN[12] ^ COMMON_FRAME_1[17];
  DATA_OUT[13] = DATA_IN[13] ^ COMMON_FRAME_1[16];
  DATA_OUT[14] = DATA_IN[14] ^ COMMON_FRAME_1[15];
  DATA_OUT[15] = DATA_IN[15] ^ COMMON_FRAME_1[14];
  DATA_OUT[16] = DATA_IN[16] ^ COMMON_FRAME_1[13];
  DATA_OUT[17] = DATA_IN[17] ^ COMMON_FRAME_1[12];
  DATA_OUT[18] = DATA_IN[18] ^ COMMON_FRAME_1[11];
  DATA_OUT[19] = DATA_IN[19] ^ COMMON_FRAME_1[10];
  DATA_OUT[20] = DATA_IN[20] ^ COMMON_FRAME_1[9 ];
  DATA_OUT[21] = DATA_IN[21] ^ COMMON_FRAME_1[8 ];
  DATA_OUT[22] = DATA_IN[22] ^ COMMON_FRAME_1[7 ];
  DATA_OUT[23] = DATA_IN[23] ^ COMMON_FRAME_1[6 ];
  DATA_OUT[24] = DATA_IN[24] ^ COMMON_FRAME_1[5 ];
  DATA_OUT[25] = DATA_IN[25] ^ COMMON_FRAME_1[4 ];
  DATA_OUT[26] = DATA_IN[26] ^ COMMON_FRAME_1[3 ];
  DATA_OUT[27] = DATA_IN[27] ^ COMMON_FRAME_1[2 ];
  DATA_OUT[28] = DATA_IN[28] ^ COMMON_FRAME_1[1 ];
  DATA_OUT[29] = DATA_IN[29] ^ COMMON_FRAME_1[0 ] ^ COMMON_FRAME_1[29 ];

  COMMON_FRAME_1 = COMMON_FRAME_2;

  return DATA_OUT;
}
示例#4
0
spp  additive_scramble_RX(spp DATA_IN, int i)
{
  static spp COMMON_FRAME_1_RX [4] = {7,7,7,7};
  static spp COMMON_FRAME_2_RX [4] = {0,0,0,0};
    
  spp DATA_OUT(0);
    
  COMMON_FRAME_2_RX[i][0 ] = COMMON_FRAME_1_RX[i][0 ] ^ COMMON_FRAME_1_RX[i][29];
  COMMON_FRAME_2_RX[i][1 ] = COMMON_FRAME_1_RX[i][0 ] ^ COMMON_FRAME_1_RX[i][1 ] ^ COMMON_FRAME_1_RX[i][29];
  COMMON_FRAME_2_RX[i][2 ] = COMMON_FRAME_1_RX[i][1 ] ^ COMMON_FRAME_1_RX[i][2 ];
  COMMON_FRAME_2_RX[i][3 ] = COMMON_FRAME_1_RX[i][2 ] ^ COMMON_FRAME_1_RX[i][3 ];
  COMMON_FRAME_2_RX[i][4 ] = COMMON_FRAME_1_RX[i][3 ] ^ COMMON_FRAME_1_RX[i][4 ];
  COMMON_FRAME_2_RX[i][5 ] = COMMON_FRAME_1_RX[i][4 ] ^ COMMON_FRAME_1_RX[i][5 ];
  COMMON_FRAME_2_RX[i][6 ] = COMMON_FRAME_1_RX[i][5 ] ^ COMMON_FRAME_1_RX[i][6 ];
  COMMON_FRAME_2_RX[i][7 ] = COMMON_FRAME_1_RX[i][6 ] ^ COMMON_FRAME_1_RX[i][7 ];
  COMMON_FRAME_2_RX[i][8 ] = COMMON_FRAME_1_RX[i][7 ] ^ COMMON_FRAME_1_RX[i][8 ];
  COMMON_FRAME_2_RX[i][9 ] = COMMON_FRAME_1_RX[i][8 ] ^ COMMON_FRAME_1_RX[i][9 ];
  COMMON_FRAME_2_RX[i][10] = COMMON_FRAME_1_RX[i][9 ] ^ COMMON_FRAME_1_RX[i][10];
  COMMON_FRAME_2_RX[i][11] = COMMON_FRAME_1_RX[i][10] ^ COMMON_FRAME_1_RX[i][11];
  COMMON_FRAME_2_RX[i][12] = COMMON_FRAME_1_RX[i][11] ^ COMMON_FRAME_1_RX[i][12];
  COMMON_FRAME_2_RX[i][13] = COMMON_FRAME_1_RX[i][12] ^ COMMON_FRAME_1_RX[i][13];
  COMMON_FRAME_2_RX[i][14] = COMMON_FRAME_1_RX[i][13] ^ COMMON_FRAME_1_RX[i][14];
  COMMON_FRAME_2_RX[i][15] = COMMON_FRAME_1_RX[i][14] ^ COMMON_FRAME_1_RX[i][15];
  COMMON_FRAME_2_RX[i][16] = COMMON_FRAME_1_RX[i][15] ^ COMMON_FRAME_1_RX[i][16];
  COMMON_FRAME_2_RX[i][17] = COMMON_FRAME_1_RX[i][16] ^ COMMON_FRAME_1_RX[i][17];
  COMMON_FRAME_2_RX[i][18] = COMMON_FRAME_1_RX[i][17] ^ COMMON_FRAME_1_RX[i][18];
  COMMON_FRAME_2_RX[i][19] = COMMON_FRAME_1_RX[i][18] ^ COMMON_FRAME_1_RX[i][19];
  COMMON_FRAME_2_RX[i][20] = COMMON_FRAME_1_RX[i][19] ^ COMMON_FRAME_1_RX[i][20];
  COMMON_FRAME_2_RX[i][21] = COMMON_FRAME_1_RX[i][20] ^ COMMON_FRAME_1_RX[i][21];
  COMMON_FRAME_2_RX[i][22] = COMMON_FRAME_1_RX[i][21] ^ COMMON_FRAME_1_RX[i][22];
  COMMON_FRAME_2_RX[i][23] = COMMON_FRAME_1_RX[i][22] ^ COMMON_FRAME_1_RX[i][23];
  COMMON_FRAME_2_RX[i][24] = COMMON_FRAME_1_RX[i][23] ^ COMMON_FRAME_1_RX[i][24];
  COMMON_FRAME_2_RX[i][25] = COMMON_FRAME_1_RX[i][24] ^ COMMON_FRAME_1_RX[i][25];
  COMMON_FRAME_2_RX[i][26] = COMMON_FRAME_1_RX[i][25] ^ COMMON_FRAME_1_RX[i][26];
  COMMON_FRAME_2_RX[i][27] = COMMON_FRAME_1_RX[i][26] ^ COMMON_FRAME_1_RX[i][27];
  COMMON_FRAME_2_RX[i][28] = COMMON_FRAME_1_RX[i][27] ^ COMMON_FRAME_1_RX[i][28];
  COMMON_FRAME_2_RX[i][29] = COMMON_FRAME_1_RX[i][28] ^ COMMON_FRAME_1_RX[i][29];
  DATA_OUT[0 ] = DATA_IN[0 ] ^ COMMON_FRAME_1_RX[i][29];
  DATA_OUT[1 ] = DATA_IN[1 ] ^ COMMON_FRAME_1_RX[i][28];
  DATA_OUT[2 ] = DATA_IN[2 ] ^ COMMON_FRAME_1_RX[i][27];
  DATA_OUT[3 ] = DATA_IN[3 ] ^ COMMON_FRAME_1_RX[i][26];
  DATA_OUT[4 ] = DATA_IN[4 ] ^ COMMON_FRAME_1_RX[i][25];
  DATA_OUT[5 ] = DATA_IN[5 ] ^ COMMON_FRAME_1_RX[i][24];
  DATA_OUT[6 ] = DATA_IN[6 ] ^ COMMON_FRAME_1_RX[i][23];
  DATA_OUT[7 ] = DATA_IN[7 ] ^ COMMON_FRAME_1_RX[i][22];
  DATA_OUT[8 ] = DATA_IN[8 ] ^ COMMON_FRAME_1_RX[i][21];
  DATA_OUT[9 ] = DATA_IN[9 ] ^ COMMON_FRAME_1_RX[i][20];
  DATA_OUT[10] = DATA_IN[10] ^ COMMON_FRAME_1_RX[i][19];
  DATA_OUT[11] = DATA_IN[11] ^ COMMON_FRAME_1_RX[i][18];
  DATA_OUT[12] = DATA_IN[12] ^ COMMON_FRAME_1_RX[i][17];
  DATA_OUT[13] = DATA_IN[13] ^ COMMON_FRAME_1_RX[i][16];
  DATA_OUT[14] = DATA_IN[14] ^ COMMON_FRAME_1_RX[i][15];
  DATA_OUT[15] = DATA_IN[15] ^ COMMON_FRAME_1_RX[i][14];
  DATA_OUT[16] = DATA_IN[16] ^ COMMON_FRAME_1_RX[i][13];
  DATA_OUT[17] = DATA_IN[17] ^ COMMON_FRAME_1_RX[i][12];
  DATA_OUT[18] = DATA_IN[18] ^ COMMON_FRAME_1_RX[i][11];
  DATA_OUT[19] = DATA_IN[19] ^ COMMON_FRAME_1_RX[i][10];
  DATA_OUT[20] = DATA_IN[20] ^ COMMON_FRAME_1_RX[i][9 ];
  DATA_OUT[21] = DATA_IN[21] ^ COMMON_FRAME_1_RX[i][8 ];
  DATA_OUT[22] = DATA_IN[22] ^ COMMON_FRAME_1_RX[i][7 ];
  DATA_OUT[23] = DATA_IN[23] ^ COMMON_FRAME_1_RX[i][6 ];
  DATA_OUT[24] = DATA_IN[24] ^ COMMON_FRAME_1_RX[i][5 ];
  DATA_OUT[25] = DATA_IN[25] ^ COMMON_FRAME_1_RX[i][4 ];
  DATA_OUT[26] = DATA_IN[26] ^ COMMON_FRAME_1_RX[i][3 ];
  DATA_OUT[27] = DATA_IN[27] ^ COMMON_FRAME_1_RX[i][2 ];
  DATA_OUT[28] = DATA_IN[28] ^ COMMON_FRAME_1_RX[i][1 ];
  DATA_OUT[29] = DATA_IN[29] ^ COMMON_FRAME_1_RX[i][0 ] ^ COMMON_FRAME_1_RX[i][29 ];
    
  COMMON_FRAME_1_RX[i] = COMMON_FRAME_2_RX[i];
    
  return DATA_OUT;

}