work ebati kak
This commit is contained in:
16
.mxproject
16
.mxproject
@@ -9,17 +9,17 @@ CDefines=USE_HAL_DRIVER;STM32L432xx;USE_HAL_DRIVER;USE_HAL_DRIVER;
|
|||||||
[PreviousGenFiles]
|
[PreviousGenFiles]
|
||||||
AdvancedFolderStructure=true
|
AdvancedFolderStructure=true
|
||||||
HeaderFileListSize=3
|
HeaderFileListSize=3
|
||||||
HeaderFiles#0=C:/Users/Maxim/Documents/STMGyro/Core/Inc/stm32l4xx_it.h
|
HeaderFiles#0=C:/file/STMGyro/Core/Inc/stm32l4xx_it.h
|
||||||
HeaderFiles#1=C:/Users/Maxim/Documents/STMGyro/Core/Inc/stm32l4xx_hal_conf.h
|
HeaderFiles#1=C:/file/STMGyro/Core/Inc/stm32l4xx_hal_conf.h
|
||||||
HeaderFiles#2=C:/Users/Maxim/Documents/STMGyro/Core/Inc/main.h
|
HeaderFiles#2=C:/file/STMGyro/Core/Inc/main.h
|
||||||
HeaderFolderListSize=1
|
HeaderFolderListSize=1
|
||||||
HeaderPath#0=C:/Users/Maxim/Documents/STMGyro/Core/Inc
|
HeaderPath#0=C:/file/STMGyro/Core/Inc
|
||||||
HeaderFiles=;
|
HeaderFiles=;
|
||||||
SourceFileListSize=3
|
SourceFileListSize=3
|
||||||
SourceFiles#0=C:/Users/Maxim/Documents/STMGyro/Core/Src/stm32l4xx_it.c
|
SourceFiles#0=C:/file/STMGyro/Core/Src/stm32l4xx_it.c
|
||||||
SourceFiles#1=C:/Users/Maxim/Documents/STMGyro/Core/Src/stm32l4xx_hal_msp.c
|
SourceFiles#1=C:/file/STMGyro/Core/Src/stm32l4xx_hal_msp.c
|
||||||
SourceFiles#2=C:/Users/Maxim/Documents/STMGyro/Core/Src/main.c
|
SourceFiles#2=C:/file/STMGyro/Core/Src/main.c
|
||||||
SourceFolderListSize=1
|
SourceFolderListSize=1
|
||||||
SourcePath#0=C:/Users/Maxim/Documents/STMGyro/Core/Src
|
SourcePath#0=C:/file/STMGyro/Core/Src
|
||||||
SourceFiles=;
|
SourceFiles=;
|
||||||
|
|
||||||
|
|||||||
@@ -18,12 +18,12 @@
|
|||||||
/* USER CODE END Header */
|
/* USER CODE END Header */
|
||||||
/* Includes ------------------------------------------------------------------*/
|
/* Includes ------------------------------------------------------------------*/
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "gyro_mes.h"
|
|
||||||
#include "stdio.h"
|
|
||||||
#include "string.h"
|
|
||||||
|
|
||||||
/* Private includes ----------------------------------------------------------*/
|
/* Private includes ----------------------------------------------------------*/
|
||||||
/* USER CODE BEGIN Includes */
|
/* USER CODE BEGIN Includes */
|
||||||
|
#include "gyro_mes.h"
|
||||||
|
#include "stdio.h"
|
||||||
|
#include "string.h"
|
||||||
|
|
||||||
/* USER CODE END Includes */
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
@@ -113,6 +113,7 @@ int main(void)
|
|||||||
|
|
||||||
/* Infinite loop */
|
/* Infinite loop */
|
||||||
/* USER CODE BEGIN WHILE */
|
/* USER CODE BEGIN WHILE */
|
||||||
|
struct sData data[3];
|
||||||
int8_t res = comand_mes(data_in, sizeof(data_in) / sizeof(data_in[0]));
|
int8_t res = comand_mes(data_in, sizeof(data_in) / sizeof(data_in[0]));
|
||||||
if(res != 0) return res;
|
if(res != 0) return res;
|
||||||
while (1)
|
while (1)
|
||||||
@@ -120,29 +121,24 @@ int main(void)
|
|||||||
flag_cs = 1;
|
flag_cs = 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);
|
||||||
HAL_Delay(1);
|
|
||||||
}
|
|
||||||
CS1_OFF();
|
CS1_OFF();
|
||||||
flag_receive = 0;
|
flag_receive = 0;
|
||||||
flag_cs = 2;
|
flag_cs = 2;
|
||||||
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);
|
||||||
HAL_Delay(1);
|
|
||||||
}
|
|
||||||
CS2_OFF();
|
CS2_OFF();
|
||||||
flag_receive = 0;
|
flag_receive = 0;
|
||||||
flag_cs = 3;
|
flag_cs = 3;
|
||||||
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) ;
|
||||||
HAL_Delay(1);
|
|
||||||
}
|
|
||||||
CS3_OFF();
|
CS3_OFF();
|
||||||
flag_receive = 0;
|
flag_receive = 0;
|
||||||
|
|
||||||
struct sData data[3];
|
|
||||||
int8_t res = status_mes(&data_out[0], 6u, &data[0]);
|
int8_t res = status_mes(&data_out[0], 6u, &data[0]);
|
||||||
res += status_mes(&data_out[6], 6u, &data[1]);
|
res += status_mes(&data_out[6], 6u, &data[1]);
|
||||||
res += status_mes(&data_out[12], 6u, &data[2]);
|
res += status_mes(&data_out[12], 6u, &data[2]);
|
||||||
@@ -181,11 +177,16 @@ void SystemClock_Config(void)
|
|||||||
/** Initializes the RCC Oscillators according to the specified parameters
|
/** Initializes the RCC Oscillators according to the specified parameters
|
||||||
* in the RCC_OscInitTypeDef structure.
|
* in the RCC_OscInitTypeDef structure.
|
||||||
*/
|
*/
|
||||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_MSI;
|
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
|
||||||
RCC_OscInitStruct.MSIState = RCC_MSI_ON;
|
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
|
||||||
RCC_OscInitStruct.MSICalibrationValue = 0;
|
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
|
||||||
RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_6;
|
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
|
||||||
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
|
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
|
||||||
|
RCC_OscInitStruct.PLL.PLLM = 1;
|
||||||
|
RCC_OscInitStruct.PLL.PLLN = 10;
|
||||||
|
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV7;
|
||||||
|
RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV2;
|
||||||
|
RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2;
|
||||||
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
|
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
@@ -194,12 +195,12 @@ void SystemClock_Config(void)
|
|||||||
*/
|
*/
|
||||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_MSI;
|
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
|
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
|
||||||
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
|
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
|
||||||
|
|
||||||
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK)
|
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
@@ -261,7 +262,7 @@ static void MX_USART1_UART_Init(void)
|
|||||||
|
|
||||||
/* USER CODE END USART1_Init 1 */
|
/* USER CODE END USART1_Init 1 */
|
||||||
huart1.Instance = USART1;
|
huart1.Instance = USART1;
|
||||||
huart1.Init.BaudRate = 115200;
|
huart1.Init.BaudRate = 921600;
|
||||||
huart1.Init.WordLength = UART_WORDLENGTH_8B;
|
huart1.Init.WordLength = UART_WORDLENGTH_8B;
|
||||||
huart1.Init.StopBits = UART_STOPBITS_1;
|
huart1.Init.StopBits = UART_STOPBITS_1;
|
||||||
huart1.Init.Parity = UART_PARITY_NONE;
|
huart1.Init.Parity = UART_PARITY_NONE;
|
||||||
|
|||||||
54
STMGyro.ioc
54
STMGyro.ioc
@@ -119,33 +119,59 @@ ProjectManager.StackSize=0x400
|
|||||||
ProjectManager.TargetToolchain=STM32CubeIDE
|
ProjectManager.TargetToolchain=STM32CubeIDE
|
||||||
ProjectManager.ToolChainLocation=
|
ProjectManager.ToolChainLocation=
|
||||||
ProjectManager.UnderRoot=true
|
ProjectManager.UnderRoot=true
|
||||||
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_DMA_Init-DMA-false-HAL-true
|
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_DMA_Init-DMA-false-HAL-true,5-MX_USART1_UART_Init-USART1-false-HAL-true
|
||||||
|
RCC.ADCFreq_Value=64000000
|
||||||
|
RCC.AHBFreq_Value=80000000
|
||||||
|
RCC.APB1Freq_Value=80000000
|
||||||
|
RCC.APB1TimFreq_Value=80000000
|
||||||
|
RCC.APB2Freq_Value=80000000
|
||||||
|
RCC.APB2TimFreq_Value=80000000
|
||||||
|
RCC.CortexFreq_Value=80000000
|
||||||
|
RCC.FCLKCortexFreq_Value=80000000
|
||||||
RCC.FamilyName=M
|
RCC.FamilyName=M
|
||||||
|
RCC.HCLKFreq_Value=80000000
|
||||||
RCC.HSE_VALUE=8000000
|
RCC.HSE_VALUE=8000000
|
||||||
RCC.HSI48_VALUE=48000000
|
RCC.HSI48_VALUE=48000000
|
||||||
RCC.HSI_VALUE=16000000
|
RCC.HSI_VALUE=16000000
|
||||||
RCC.IPParameters=FamilyName,HSE_VALUE,HSI48_VALUE,HSI_VALUE,LSCOPinFreq_Value,LSE_VALUE,LSI_VALUE,MSI_VALUE,PLLPoutputFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLSAI1PoutputFreq_Value,PLLSAI1QoutputFreq_Value,PLLSAI1RoutputFreq_Value,SAI1Freq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VCOSAI1OutputFreq_Value
|
RCC.I2C1Freq_Value=80000000
|
||||||
|
RCC.I2C3Freq_Value=80000000
|
||||||
|
RCC.IPParameters=ADCFreq_Value,AHBFreq_Value,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI48_VALUE,HSI_VALUE,I2C1Freq_Value,I2C3Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPUART1Freq_Value,LSCOPinFreq_Value,LSE_VALUE,LSI_VALUE,MCO1PinFreq_Value,MSI_VALUE,PLLN,PLLPoutputFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLSAI1PoutputFreq_Value,PLLSAI1QoutputFreq_Value,PLLSAI1RoutputFreq_Value,PLLSourceVirtual,PWRFreq_Value,RNGFreq_Value,SAI1Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,USART1Freq_Value,USART2Freq_Value,USBFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VCOSAI1OutputFreq_Value
|
||||||
|
RCC.LPTIM1Freq_Value=80000000
|
||||||
|
RCC.LPTIM2Freq_Value=80000000
|
||||||
|
RCC.LPUART1Freq_Value=80000000
|
||||||
RCC.LSCOPinFreq_Value=32000
|
RCC.LSCOPinFreq_Value=32000
|
||||||
RCC.LSE_VALUE=32768
|
RCC.LSE_VALUE=32768
|
||||||
RCC.LSI_VALUE=32000
|
RCC.LSI_VALUE=32000
|
||||||
|
RCC.MCO1PinFreq_Value=80000000
|
||||||
RCC.MSI_VALUE=4000000
|
RCC.MSI_VALUE=4000000
|
||||||
RCC.PLLPoutputFreq_Value=4571428.571428572
|
RCC.PLLN=10
|
||||||
RCC.PLLQoutputFreq_Value=16000000
|
RCC.PLLPoutputFreq_Value=22857142.85714286
|
||||||
RCC.PLLRCLKFreq_Value=16000000
|
RCC.PLLQoutputFreq_Value=80000000
|
||||||
RCC.PLLSAI1PoutputFreq_Value=4571428.571428572
|
RCC.PLLRCLKFreq_Value=80000000
|
||||||
RCC.PLLSAI1QoutputFreq_Value=16000000
|
RCC.PLLSAI1PoutputFreq_Value=18285714.285714287
|
||||||
RCC.PLLSAI1RoutputFreq_Value=16000000
|
RCC.PLLSAI1QoutputFreq_Value=64000000
|
||||||
RCC.SAI1Freq_Value=4571428.571428572
|
RCC.PLLSAI1RoutputFreq_Value=64000000
|
||||||
RCC.VCOInputFreq_Value=4000000
|
RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSI
|
||||||
RCC.VCOOutputFreq_Value=32000000
|
RCC.PWRFreq_Value=80000000
|
||||||
RCC.VCOSAI1OutputFreq_Value=32000000
|
RCC.RNGFreq_Value=64000000
|
||||||
SPI1.CalculateBaudRate=2.0 MBits/s
|
RCC.SAI1Freq_Value=18285714.285714287
|
||||||
|
RCC.SWPMI1Freq_Value=80000000
|
||||||
|
RCC.SYSCLKFreq_VALUE=80000000
|
||||||
|
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
|
||||||
|
RCC.USART1Freq_Value=80000000
|
||||||
|
RCC.USART2Freq_Value=80000000
|
||||||
|
RCC.USBFreq_Value=64000000
|
||||||
|
RCC.VCOInputFreq_Value=16000000
|
||||||
|
RCC.VCOOutputFreq_Value=160000000
|
||||||
|
RCC.VCOSAI1OutputFreq_Value=128000000
|
||||||
|
SPI1.CalculateBaudRate=40.0 MBits/s
|
||||||
SPI1.DataSize=SPI_DATASIZE_8BIT
|
SPI1.DataSize=SPI_DATASIZE_8BIT
|
||||||
SPI1.Direction=SPI_DIRECTION_2LINES
|
SPI1.Direction=SPI_DIRECTION_2LINES
|
||||||
SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize
|
SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize
|
||||||
SPI1.Mode=SPI_MODE_MASTER
|
SPI1.Mode=SPI_MODE_MASTER
|
||||||
SPI1.VirtualType=VM_MASTER
|
SPI1.VirtualType=VM_MASTER
|
||||||
USART1.IPParameters=VirtualMode-Asynchronous
|
USART1.BaudRate=921600
|
||||||
|
USART1.IPParameters=VirtualMode-Asynchronous,BaudRate
|
||||||
USART1.VirtualMode-Asynchronous=VM_ASYNC
|
USART1.VirtualMode-Asynchronous=VM_ASYNC
|
||||||
VP_SYS_VS_Systick.Mode=SysTick
|
VP_SYS_VS_Systick.Mode=SysTick
|
||||||
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
|
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
|
||||||
|
|||||||
Reference in New Issue
Block a user