diff --git a/Multiprotocol/A7105_SPI.ino b/Multiprotocol/A7105_SPI.ino index 16f5869..6a54457 100644 --- a/Multiprotocol/A7105_SPI.ino +++ b/Multiprotocol/A7105_SPI.ino @@ -24,10 +24,10 @@ void A7105_WriteData(uint8_t len, uint8_t channel) { uint8_t i; CS_off; - A7105_Write(A7105_RST_WRPTR); - A7105_Write(0x05); + spi_write(A7105_RST_WRPTR); + spi_write(0x05); for (i = 0; i < len; i++) - A7105_Write(packet[i]); + spi_write(packet[i]); CS_on; A7105_WriteReg(0x0F, channel); A7105_Strobe(A7105_TX); @@ -39,64 +39,27 @@ void A7105_ReadData() { CS_off; A7105_Write(0x45); for (i=0;i<16;i++) - packet[i]=A7105_Read(); + packet[i]=spi_Read(); CS_on; } void A7105_WriteReg(uint8_t address, uint8_t data) { CS_off; - A7105_Write(address); + spi_write(address); NOP(); - A7105_Write(data); + spi_write(data); CS_on; } uint8_t A7105_ReadReg(uint8_t address) { uint8_t result; CS_off; - A7105_Write(address |=0x40); //bit 6 =1 for reading - result = A7105_Read(); + spi_write(address |=0x40); //bit 6 =1 for reading + result = spi_Read(); CS_on; return(result); } -void A7105_Write(uint8_t command) { - uint8_t n=8; - - SCK_off;//SCK start low - SDI_off; - while(n--) { - if(command&0x80) - SDI_on; - else - SDI_off; - SCK_on; - NOP(); - SCK_off; - command = command << 1; - } - SDI_on; -} - -uint8_t A7105_Read(void) { - uint8_t result=0; - uint8_t i; - - SDI_SET_INPUT; - for(i=0;i<8;i++) { - if(SDI_1) ///if SDIO =1 - result=(result<<1)|0x01; - else - result=result<<1; - SCK_on; - NOP(); - SCK_off; - NOP(); - } - SDI_SET_OUTPUT; - return result; -} - //------------------------ void A7105_SetTxRxMode(uint8_t mode) { @@ -131,11 +94,11 @@ uint8_t A7105_Reset() void A7105_WriteID(uint32_t ida) { CS_off; - A7105_Write(0x06);//ex id=0x5475c52a ;txid3txid2txid1txid0 - A7105_Write((ida>>24)&0xff);//53 - A7105_Write((ida>>16)&0xff);//75 - A7105_Write((ida>>8)&0xff);//c5 - A7105_Write((ida>>0)&0xff);//2a + spi_write(0x06);//ex id=0x5475c52a ;txid3txid2txid1txid0 + spi_write((ida>>24)&0xff);//53 + spi_write((ida>>16)&0xff);//75 + spi_write((ida>>8)&0xff);//c5 + spi_write((ida>>0)&0xff);//2a CS_on; } @@ -179,7 +142,7 @@ void A7105_SetPower() void A7105_Strobe(uint8_t address) { CS_off; - A7105_Write(address); + spi_write(address); CS_on; }