o PSoC tem um módulo SPI de 8 bits e eu tenho que comunicar com um dispositivo que trabalha com SPI de 9 bits.
O primeiro bit que eu tenho que mandar significa Data=1 ou Command=0 the os demais fazem parte do código ou próprio dado.
Já tentei colocar o bit manualmente na porta e então forçar o clock... mas não obtive resultados. O timming não está legal....
Vocês têm alguma idéia?
Este é o código que estive tentando:
- Código: Selecionar todos
void send_data(unsigned char data)
{
SCK_OFF;
CS_OFF;
SDO_ON;
SCK_ON;
while( ! (SPIM_2_bReadStatus() & SPIM_2_SPIM_TX_BUFFER_EMPTY ) );
SPIM_2_SendTxData(data);
//while(!(SPIM_2_bReadStatus() & SPIM_2_SPIM_SPI_COMPLETE));
CS_ON;
SSPEN = 0;
}
Obrigado!
Rick