Начал убирать HAL-функции. Убрал косяк с UART
This commit is contained in:
@@ -29,14 +29,24 @@
|
|||||||
|
|
||||||
/* Private typedef -----------------------------------------------------------*/
|
/* Private typedef -----------------------------------------------------------*/
|
||||||
/* USER CODE BEGIN PTD */
|
/* USER CODE BEGIN PTD */
|
||||||
#define CS1_OFF() HAL_GPIO_WritePin(CS1_GPIO_Port, CS1_Pin, GPIO_PIN_SET)
|
void GPIO_Set(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
|
||||||
#define CS1_ON() HAL_GPIO_WritePin(CS1_GPIO_Port, CS1_Pin, GPIO_PIN_RESET)
|
{
|
||||||
#define CS2_OFF() HAL_GPIO_WritePin(CS2_GPIO_Port, CS2_Pin, GPIO_PIN_SET)
|
GPIOx->BSRR = (uint32_t)GPIO_Pin;
|
||||||
#define CS2_ON() HAL_GPIO_WritePin(CS2_GPIO_Port, CS2_Pin, GPIO_PIN_RESET)
|
}
|
||||||
#define CS3_OFF() HAL_GPIO_WritePin(CS3_GPIO_Port, CS3_Pin, GPIO_PIN_SET)
|
|
||||||
#define CS3_ON() HAL_GPIO_WritePin(CS3_GPIO_Port, CS3_Pin, GPIO_PIN_RESET)
|
void GPIO_Reset(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
|
||||||
#define RESET_ON() HAL_GPIO_WritePin(RESET_GPIO_Port, RESET_Pin, GPIO_PIN_SET)
|
{
|
||||||
#define RESET_OFF() HAL_GPIO_WritePin(RESET_GPIO_Port, RESET_Pin, GPIO_PIN_RESET)
|
GPIOx->BRR = (uint32_t)GPIO_Pin;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define CS1_OFF() GPIO_Set(CS1_GPIO_Port, CS1_Pin)
|
||||||
|
#define CS1_ON() GPIO_Reset(CS1_GPIO_Port, CS1_Pin)
|
||||||
|
#define CS2_OFF() GPIO_Set(CS2_GPIO_Port, CS2_Pin)
|
||||||
|
#define CS2_ON() GPIO_Reset(CS2_GPIO_Port, CS2_Pin)
|
||||||
|
#define CS3_OFF() GPIO_Set(CS3_GPIO_Port, CS3_Pin)
|
||||||
|
#define CS3_ON() GPIO_Reset(CS3_GPIO_Port, CS3_Pin)
|
||||||
|
#define RESET_ON() GPIO_Set(RESET_GPIO_Port, RESET_Pin)
|
||||||
|
#define RESET_OFF() GPIO_Reset(RESET_GPIO_Port, RESET_Pin)
|
||||||
/* USER CODE END PTD */
|
/* USER CODE END PTD */
|
||||||
|
|
||||||
/* Private define ------------------------------------------------------------*/
|
/* Private define ------------------------------------------------------------*/
|
||||||
@@ -121,17 +131,17 @@ int main(void)
|
|||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
CS1_ON();
|
CS1_ON();
|
||||||
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, data_out, sizeof(data_in) / sizeof(data_in[0]));
|
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, data_out, sizeof(data_in) / sizeof(data_in[0]));
|
||||||
while(!flag_receive && res == 0);
|
while(!flag_receive && res == 0);
|
||||||
|
|
||||||
CS1_OFF();
|
CS1_OFF();
|
||||||
flag_receive = 0;
|
flag_receive = 0;
|
||||||
|
|
||||||
CS2_ON();
|
CS2_ON();
|
||||||
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, &data_out[6], sizeof(data_in) / sizeof(data_in[0]));
|
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, &data_out[6], sizeof(data_in) / sizeof(data_in[0]));
|
||||||
while(!flag_receive && res == 0);
|
while(!flag_receive && res == 0);
|
||||||
|
|
||||||
CS2_OFF();
|
CS2_OFF();
|
||||||
flag_receive = 0;
|
flag_receive = 0;
|
||||||
|
|
||||||
CS3_ON();
|
CS3_ON();
|
||||||
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, &data_out[12], sizeof(data_in) / sizeof(data_in[0]));
|
res = HAL_SPI_TransmitReceive_IT(&hspi1, data_in, &data_out[12], sizeof(data_in) / sizeof(data_in[0]));
|
||||||
while(!flag_receive && res == 0) ;
|
while(!flag_receive && res == 0) ;
|
||||||
@@ -144,8 +154,7 @@ int main(void)
|
|||||||
|
|
||||||
if(res == 0)
|
if(res == 0)
|
||||||
{
|
{
|
||||||
sprintf (str, "%i;%i;%i;%i;%i;%i\r\n", data[0].rate, data[1].rate, data[2].rate, data[0].temp, data[1].temp, data[2].temp);
|
res = sprintf (str, "%i;%i;%i;%i;%i;%i\r\n", data[0].rate, data[1].rate, data[2].rate, data[0].temp, data[1].temp, data[2].temp);
|
||||||
res = HAL_UART_Transmit_DMA(&huart1, (uint8_t*)str, sizeof(str) / sizeof(str[0]));
|
|
||||||
while(flag_transmit);
|
while(flag_transmit);
|
||||||
flag_transmit = 1;
|
flag_transmit = 1;
|
||||||
HAL_UART_Transmit_DMA(&huart1, (uint8_t*)str, res);
|
HAL_UART_Transmit_DMA(&huart1, (uint8_t*)str, res);
|
||||||
@@ -333,16 +342,12 @@ static void MX_GPIO_Init(void)
|
|||||||
/* USER CODE BEGIN 4 */
|
/* USER CODE BEGIN 4 */
|
||||||
void HAL_SPI_TxRxCpltCallback(SPI_HandleTypeDef *hspi)
|
void HAL_SPI_TxRxCpltCallback(SPI_HandleTypeDef *hspi)
|
||||||
{
|
{
|
||||||
|
flag_receive = 1;
|
||||||
flag_receive = 1;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
|
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
|
||||||
{
|
{
|
||||||
|
flag_transmit = 0;
|
||||||
flag_transmit = 0;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
/* USER CODE END 4 */
|
/* USER CODE END 4 */
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user