877
#include "main.h" char TxBuff1[20]="MASTER SEND ONE"; char TxBuff2[20]="MASTER SEND TWO"; uint8_t txBuffer = 0; int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_SPI1_Init(); while (1) { if((HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_13)|HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_14)|HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_15))==GPIO_PIN_RESET) { HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_12); HAL_Delay(100); //send For Polling Mode receive if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_13)==GPIO_PIN_SET) { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET); HAL_SPI_Transmit(&hspi1, (uint8_t*)TxBuff1, sizeof(TxBuff1),5000); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET); while(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_13)==GPIO_PIN_RESET); } //send For IT Mode receive if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_14)==GPIO_PIN_SET) { txBuffer=txBuffer == 0?1:0; HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET); HAL_SPI_Transmit(&hspi1,&txBuffer, sizeof(txBuffer),5000); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET); while(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_14)==GPIO_PIN_RESET); } //send For IT Mode receive if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_15)==GPIO_PIN_SET) { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET); HAL_SPI_Transmit(&hspi1,(uint8_t*)TxBuff2, sizeof(TxBuff2),5000); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET); while(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_15)==GPIO_PIN_RESET); }}}}