CC1101: explicitly configure SPI
This commit is contained in:
		
							parent
							
								
									adb319b912
								
							
						
					
					
						commit
						aced0ee961
					
				@ -23,11 +23,34 @@ CC1101::CC1101(GpioPin ss_pin) {
 | 
				
			|||||||
//******************************************************************************
 | 
					//******************************************************************************
 | 
				
			||||||
//SpiInit
 | 
					//SpiInit
 | 
				
			||||||
/******************************************************************************/
 | 
					/******************************************************************************/
 | 
				
			||||||
 | 
					extern SPI_HandleTypeDef hspi3;
 | 
				
			||||||
void CC1101::SpiInit(void) {
 | 
					void CC1101::SpiInit(void) {
 | 
				
			||||||
    //initialize spi pins
 | 
					    //initialize spi pins
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //Enable spi master, MSB, SPI mode 0, FOSC/4
 | 
					    //Enable spi master, MSB, SPI mode 0, FOSC/4
 | 
				
			||||||
    SpiMode(0);
 | 
					    SpiMode(0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (HAL_SPI_DeInit(&hspi3) != HAL_OK) {
 | 
				
			||||||
 | 
					        Error_Handler();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    hspi3.Init.Mode = SPI_MODE_MASTER;
 | 
				
			||||||
 | 
					    hspi3.Init.Direction = SPI_DIRECTION_2LINES;
 | 
				
			||||||
 | 
					    hspi3.Init.DataSize = SPI_DATASIZE_8BIT;
 | 
				
			||||||
 | 
					    hspi3.Init.CLKPolarity = SPI_POLARITY_LOW;
 | 
				
			||||||
 | 
					    hspi3.Init.CLKPhase = SPI_PHASE_1EDGE;
 | 
				
			||||||
 | 
					    hspi3.Init.NSS = SPI_NSS_SOFT;
 | 
				
			||||||
 | 
					    hspi3.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_64;
 | 
				
			||||||
 | 
					    hspi3.Init.FirstBit = SPI_FIRSTBIT_MSB;
 | 
				
			||||||
 | 
					    hspi3.Init.TIMode = SPI_TIMODE_DISABLE;
 | 
				
			||||||
 | 
					    hspi3.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
 | 
				
			||||||
 | 
					    hspi3.Init.CRCPolynomial = 7;
 | 
				
			||||||
 | 
					    hspi3.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
 | 
				
			||||||
 | 
					    hspi3.Init.NSSPMode = SPI_NSS_PULSE_DISABLE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (HAL_SPI_Init(&hspi3) != HAL_OK) {
 | 
				
			||||||
 | 
					        Error_Handler();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void CC1101::SpiEnd(void) {
 | 
					void CC1101::SpiEnd(void) {
 | 
				
			||||||
@ -68,8 +91,6 @@ void CC1101::SpiMode(byte config) {
 | 
				
			|||||||
*INPUT        :value: data to send
 | 
					*INPUT        :value: data to send
 | 
				
			||||||
*OUTPUT       :data to receive
 | 
					*OUTPUT       :data to receive
 | 
				
			||||||
****************************************************************/
 | 
					****************************************************************/
 | 
				
			||||||
extern SPI_HandleTypeDef hspi3;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
byte CC1101::SpiTransfer(byte value) {
 | 
					byte CC1101::SpiTransfer(byte value) {
 | 
				
			||||||
    uint8_t buf[1] = {value};
 | 
					    uint8_t buf[1] = {value};
 | 
				
			||||||
    uint8_t rxbuf[1] = {0};
 | 
					    uint8_t rxbuf[1] = {0};
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user