void configure_SS(void) { ///Choose the ADC IC on the SPI bus init_SPI_trans(ADC_S); ///Set PD and range pins as input cbi(DDRB, PB6); cbi(DDRB, PB7); ///Set PD high: power up the ADC IC sbi(PORTB, PB6); ///Configure GPIO pins - GPIO3 as PD and GPIO2 as range input SPI_transfer(0b01000001); SPI_transfer(0b10000000); ///Configure Auto-2 Mode ///Program the Program register of Auto-2 Mode: SPI_transfer(0b10010001); SPI_transfer(0b01000000); ///Set Mode to Auto-2 SPI_transfer(0b00111100); SPI_transfer(0b00000000); }
int init_CC1020 (void) { init_SPI_trans(CC1020); sbi(PORT_CS, CC1020); SetupCC1020PD(); ResetCC1020();//CC is still in PD (Power_Down mode) after reset SetupCC1020Allregisters(); WakeUpCC1020ToTX(TXANALOG); CalibrateCC1020 (PA_POWER); WakeUpCC1020ToTX(TXANALOG); return SetupCC1020TX(TXANALOG,PA_POWER); }