Cirrus-logic AN74 Manual do Utilizador Página 8

  • Descarregar
  • Adicionar aos meus manuais
  • Imprimir
  • Página
    / 14
  • Índice
  • MARCADORES
  • Avaliado. / 5. Com base em avaliações de clientes
Vista de página 7
AN74
8 AN74Rev2
/*Reset Serial Port on CS5525/6/9*/
SDI = 0x01; /*Assert SDI*/
for(counter=0;counter<255;counter++) {
SCLK = 0x01; /*Assert SCLK*/
SCLK = 0x00; /*Deassert SCLK*/
}
SDI = 0x00; /*Deassert SDI PIN*/
SCLK = 0x01; /*Assert SCLK*/
SCLK = 0x00; /* Deassert SCLK*/
}
/**************************************************************************************
* Routine - calibrate
* Input - none
* Output - none
* This subroutine instructs the CS5525/6/9 to perform self-offset calibration.
**************************************************************************************/
void calibrate()
{ write_to_register(0x84,0x01,0x00,0x00); /*Assert RS bit*/
/*Read Configuration Register Until DF Bit is Asserted*/
do {
read_register(0x94); /*Read Configuration Register*/
temp = low_byte&0x08; /*Mask DF bit to 1*/
} while (temp != 0x08);
read_register(0x92); /*Deasserts DF Bit*/
}/*End calibrate */
/**************************************************************************************
* Routine - write_to_register
* Input - command, lowbyte, midbyte, highbyte
* Output - none
* This subroutine instructs the CS5525/6/9 to write to an internal register.
**************************************************************************************/
void write_to_register(char command,char low,char mid,char high){
if(mode == 1) P1 = 0xF4; /*Assert CS
if necessary*/
transfer_byte(command); /*Transfer Command Byte to CS5525/6/9*/
transfer_byte(high); /*Transfer High Byte to CS5525/6/9*/
transfer_byte(mid); /*Transfer Middle Byte to CS5525/6/9*/
transfer_byte(low); /*Transfer Low Byte to CS5525/6/9*/
if(mode == 1) P1 = 0xF5; /*Deassert CS
if necessary*/
}
Vista de página 7
1 2 3 4 5 6 7 8 9 10 11 12 13 14

Comentários a estes Manuais

Sem comentários