MVBMS - pwm generation code added
This commit is contained in:
parent
a3e7c2c266
commit
7d7276d126
@ -13,13 +13,14 @@
|
|||||||
#include "stm32f3xx_hal.h"
|
#include "stm32f3xx_hal.h"
|
||||||
#include "stm32f3xx_hal_can.h"
|
#include "stm32f3xx_hal_can.h"
|
||||||
#include "stm32f3xx_hal_def.h"
|
#include "stm32f3xx_hal_def.h"
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
typedef struct {
|
||||||
|
uint8_t pwrgndfans;
|
||||||
|
} rx_status_frame;
|
||||||
|
uint8_t txbuffer;
|
||||||
|
uint8_t rxbuffer;
|
||||||
void ams_can_init(CAN_HandleTypeDef* hcan);
|
void ams_can_init(CAN_HandleTypeDef* hcan);
|
||||||
|
|
||||||
void ams_can_handle_ams_msg(CAN_RxHeaderTypeDef* header, uint8_t* data);
|
void ams_can_handle_ams_msg(CAN_RxHeaderTypeDef* header, uint8_t* data);
|
||||||
|
|
||||||
void ams_can_send_status();
|
void ams_can_send_status();
|
||||||
/**
|
/**
|
||||||
* @brief Send an AMS Error via CAN.
|
* @brief Send an AMS Error via CAN.
|
||||||
|
9
Core/Inc/PWM_Control.h
Normal file
9
Core/Inc/PWM_Control.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#ifndef INC_PWM_CONTROL_H_
|
||||||
|
#define INC_PWM_CONTROL_H_
|
||||||
|
|
||||||
|
#include "stm32f3xx_hal_conf.h"
|
||||||
|
|
||||||
|
void PWMControl_UpdatePWMs(uint8_t pwrgndfans );
|
||||||
|
void PWMControl_init(TIM_HandleTypeDef* timer3);
|
||||||
|
|
||||||
|
#endif /* INC_CHANNEL_CONTROL_H_ */
|
@ -63,10 +63,6 @@ void Error_Handler(void);
|
|||||||
#define RELAY_EN_GPIO_Port GPIOA
|
#define RELAY_EN_GPIO_Port GPIOA
|
||||||
#define _60V_EN_Pin GPIO_PIN_1
|
#define _60V_EN_Pin GPIO_PIN_1
|
||||||
#define _60V_EN_GPIO_Port GPIOA
|
#define _60V_EN_GPIO_Port GPIOA
|
||||||
#define PWM_PG_FAN1_Pin GPIO_PIN_2
|
|
||||||
#define PWM_PG_FAN1_GPIO_Port GPIOA
|
|
||||||
#define PWM_PG_FAN2_Pin GPIO_PIN_3
|
|
||||||
#define PWM_PG_FAN2_GPIO_Port GPIOA
|
|
||||||
#define CSB_Pin GPIO_PIN_4
|
#define CSB_Pin GPIO_PIN_4
|
||||||
#define CSB_GPIO_Port GPIOA
|
#define CSB_GPIO_Port GPIOA
|
||||||
#define STATUS_LED_R_Pin GPIO_PIN_0
|
#define STATUS_LED_R_Pin GPIO_PIN_0
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
#define INITIAL_COMMAND_PEC 0x0010
|
#define INITIAL_COMMAND_PEC 0x0010
|
||||||
#define INITIAL_DATA_PEC 0x0010
|
#define INITIAL_DATA_PEC 0x0010
|
||||||
#define ADBMS_SPI_TIMEOUT 100 // Timeout in ms
|
#define ADBMS_SPI_TIMEOUT 100 // Timeout in ms
|
||||||
#warning ask about the timeout value
|
|
||||||
|
|
||||||
SPI_HandleTypeDef* adbmsspi;
|
SPI_HandleTypeDef* adbmsspi;
|
||||||
|
|
||||||
|
@ -24,11 +24,14 @@
|
|||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
#define CAN_ID_SLAVE_PANIC 0x009
|
#define CAN_ID_SLAVE_PANIC 0x009
|
||||||
#define CAN_ID_SLAVE_STATUS_BASE 0x080
|
#define CAN_ID_SLAVE_STATUS_BASE 0x080
|
||||||
#define CAN_ID_SLAVE_LOG_BASE 0x600
|
#define CAN_ID_SLAVE_LOG_BASE 0x600
|
||||||
|
|
||||||
|
rx_status_frame rxstate = {};
|
||||||
|
volatile uint8_t canmsg_received = 0;
|
||||||
void ams_can_init(CAN_HandleTypeDef* hcan) { ftcan_init(hcan); }
|
void ams_can_init(CAN_HandleTypeDef* hcan) { ftcan_init(hcan); }
|
||||||
|
|
||||||
#define ITER_COUNT 10
|
#define ITER_COUNT 10
|
||||||
|
31
Core/Src/PWM_Control.c
Normal file
31
Core/Src/PWM_Control.c
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#include "PWM_Control.h"
|
||||||
|
|
||||||
|
|
||||||
|
uint8_t timer2_running = 0;
|
||||||
|
TIM_HandleTypeDef* pwmtimer2;
|
||||||
|
|
||||||
|
void PWMControl_init( TIM_HandleTypeDef* timer2)
|
||||||
|
{
|
||||||
|
pwmtimer2 = timer2;
|
||||||
|
PWMControl_UpdatePWMs(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PWMControl_UpdatePWMs(uint8_t pwrgndfans)
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
pwmtimer2->Instance->CCR3 = pwrgndfans << 8;
|
||||||
|
|
||||||
|
if (timer2_running) {
|
||||||
|
if ((pwrgndfans == 0)) {
|
||||||
|
timer2_running = 0;
|
||||||
|
HAL_TIM_PWM_Stop(pwmtimer2, TIM_CHANNEL_3);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if ( (pwrgndfans != 0)) {
|
||||||
|
timer2_running = 1;
|
||||||
|
HAL_TIM_PWM_Start(pwmtimer2, TIM_CHANNEL_3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -30,6 +30,8 @@
|
|||||||
#include "errors.h"
|
#include "errors.h"
|
||||||
#include "stm32f3xx_hal.h"
|
#include "stm32f3xx_hal.h"
|
||||||
#include "stm32f3xx_hal_gpio.h"
|
#include "stm32f3xx_hal_gpio.h"
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
/* USER CODE END Includes */
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
/* Private typedef -----------------------------------------------------------*/
|
/* Private typedef -----------------------------------------------------------*/
|
||||||
@ -55,7 +57,7 @@ I2C_HandleTypeDef hi2c1;
|
|||||||
SPI_HandleTypeDef hspi1;
|
SPI_HandleTypeDef hspi1;
|
||||||
|
|
||||||
TIM_HandleTypeDef htim1;
|
TIM_HandleTypeDef htim1;
|
||||||
TIM_HandleTypeDef htim15;
|
TIM_HandleTypeDef htim2;
|
||||||
|
|
||||||
UART_HandleTypeDef huart1;
|
UART_HandleTypeDef huart1;
|
||||||
|
|
||||||
@ -69,9 +71,9 @@ static void MX_GPIO_Init(void);
|
|||||||
static void MX_CAN_Init(void);
|
static void MX_CAN_Init(void);
|
||||||
static void MX_I2C1_Init(void);
|
static void MX_I2C1_Init(void);
|
||||||
static void MX_SPI1_Init(void);
|
static void MX_SPI1_Init(void);
|
||||||
static void MX_TIM15_Init(void);
|
|
||||||
static void MX_USART1_UART_Init(void);
|
static void MX_USART1_UART_Init(void);
|
||||||
static void MX_TIM1_Init(void);
|
static void MX_TIM1_Init(void);
|
||||||
|
static void MX_TIM2_Init(void);
|
||||||
/* USER CODE BEGIN PFP */
|
/* USER CODE BEGIN PFP */
|
||||||
|
|
||||||
/* USER CODE END PFP */
|
/* USER CODE END PFP */
|
||||||
@ -113,9 +115,9 @@ int main(void)
|
|||||||
MX_CAN_Init();
|
MX_CAN_Init();
|
||||||
MX_I2C1_Init();
|
MX_I2C1_Init();
|
||||||
MX_SPI1_Init();
|
MX_SPI1_Init();
|
||||||
MX_TIM15_Init();
|
|
||||||
MX_USART1_UART_Init();
|
MX_USART1_UART_Init();
|
||||||
MX_TIM1_Init();
|
MX_TIM1_Init();
|
||||||
|
MX_TIM2_Init();
|
||||||
/* USER CODE BEGIN 2 */
|
/* USER CODE BEGIN 2 */
|
||||||
tmp1075_init(&hi2c1);
|
tmp1075_init(&hi2c1);
|
||||||
AMS_Init(&hspi1);
|
AMS_Init(&hspi1);
|
||||||
@ -148,6 +150,9 @@ int main(void)
|
|||||||
HAL_GPIO_WritePin(STATUS_LED_R_GPIO_Port, STATUS_LED_R_Pin, relay_target ? GPIO_PIN_RESET : GPIO_PIN_SET);
|
HAL_GPIO_WritePin(STATUS_LED_R_GPIO_Port, STATUS_LED_R_Pin, relay_target ? GPIO_PIN_RESET : GPIO_PIN_SET);
|
||||||
target_time = HAL_GetTick() + 10000;
|
target_time = HAL_GetTick() + 10000;
|
||||||
relay_target = !relay_target;
|
relay_target = !relay_target;
|
||||||
|
ChannelControl_UpdatePWMs( x.pwrgndfans )
|
||||||
|
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* USER CODE END 3 */
|
/* USER CODE END 3 */
|
||||||
@ -397,72 +402,51 @@ static void MX_TIM1_Init(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief TIM15 Initialization Function
|
* @brief TIM2 Initialization Function
|
||||||
* @param None
|
* @param None
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
static void MX_TIM15_Init(void)
|
static void MX_TIM2_Init(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
/* USER CODE BEGIN TIM15_Init 0 */
|
/* USER CODE BEGIN TIM2_Init 0 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_Init 0 */
|
/* USER CODE END TIM2_Init 0 */
|
||||||
|
|
||||||
TIM_MasterConfigTypeDef sMasterConfig = {0};
|
TIM_MasterConfigTypeDef sMasterConfig = {0};
|
||||||
TIM_OC_InitTypeDef sConfigOC = {0};
|
TIM_OC_InitTypeDef sConfigOC = {0};
|
||||||
TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0};
|
|
||||||
|
|
||||||
/* USER CODE BEGIN TIM15_Init 1 */
|
/* USER CODE BEGIN TIM2_Init 1 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_Init 1 */
|
/* USER CODE END TIM2_Init 1 */
|
||||||
htim15.Instance = TIM15;
|
htim2.Instance = TIM2;
|
||||||
htim15.Init.Prescaler = 0;
|
htim2.Init.Prescaler = 0;
|
||||||
htim15.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim15.Init.Period = 65535;
|
htim2.Init.Period = 65535;
|
||||||
htim15.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
htim15.Init.RepetitionCounter = 0;
|
htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
htim15.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
if (HAL_TIM_PWM_Init(&htim2) != HAL_OK)
|
||||||
if (HAL_TIM_PWM_Init(&htim15) != HAL_OK)
|
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
|
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
|
||||||
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
|
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
|
||||||
if (HAL_TIMEx_MasterConfigSynchronization(&htim15, &sMasterConfig) != HAL_OK)
|
if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
sConfigOC.OCMode = TIM_OCMODE_PWM1;
|
sConfigOC.OCMode = TIM_OCMODE_PWM1;
|
||||||
sConfigOC.Pulse = 0;
|
sConfigOC.Pulse = 0;
|
||||||
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
|
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
|
||||||
sConfigOC.OCNPolarity = TIM_OCNPOLARITY_HIGH;
|
|
||||||
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
|
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
|
||||||
sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET;
|
if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_3) != HAL_OK)
|
||||||
sConfigOC.OCNIdleState = TIM_OCNIDLESTATE_RESET;
|
|
||||||
if (HAL_TIM_PWM_ConfigChannel(&htim15, &sConfigOC, TIM_CHANNEL_1) != HAL_OK)
|
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
if (HAL_TIM_PWM_ConfigChannel(&htim15, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
|
/* USER CODE BEGIN TIM2_Init 2 */
|
||||||
{
|
|
||||||
Error_Handler();
|
|
||||||
}
|
|
||||||
sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE;
|
|
||||||
sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE;
|
|
||||||
sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF;
|
|
||||||
sBreakDeadTimeConfig.DeadTime = 0;
|
|
||||||
sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE;
|
|
||||||
sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH;
|
|
||||||
sBreakDeadTimeConfig.BreakFilter = 0;
|
|
||||||
sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE;
|
|
||||||
if (HAL_TIMEx_ConfigBreakDeadTime(&htim15, &sBreakDeadTimeConfig) != HAL_OK)
|
|
||||||
{
|
|
||||||
Error_Handler();
|
|
||||||
}
|
|
||||||
/* USER CODE BEGIN TIM15_Init 2 */
|
|
||||||
|
|
||||||
/* USER CODE END TIM15_Init 2 */
|
/* USER CODE END TIM2_Init 2 */
|
||||||
HAL_TIM_MspPostInit(&htim15);
|
HAL_TIM_MspPostInit(&htim2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -540,6 +524,12 @@ static void MX_GPIO_Init(void)
|
|||||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
||||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||||
|
|
||||||
|
/*Configure GPIO pin : PA3 */
|
||||||
|
GPIO_InitStruct.Pin = GPIO_PIN_3;
|
||||||
|
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
|
||||||
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
|
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||||
|
|
||||||
/*Configure GPIO pins : STATUS_LED_R_Pin STATUS_LED_B_Pin STATUS_LED_G_Pin PRECHARGE_EN_Pin
|
/*Configure GPIO pins : STATUS_LED_R_Pin STATUS_LED_B_Pin STATUS_LED_G_Pin PRECHARGE_EN_Pin
|
||||||
AUX_IN_Pin */
|
AUX_IN_Pin */
|
||||||
GPIO_InitStruct.Pin = STATUS_LED_R_Pin|STATUS_LED_B_Pin|STATUS_LED_G_Pin|PRECHARGE_EN_Pin
|
GPIO_InitStruct.Pin = STATUS_LED_R_Pin|STATUS_LED_B_Pin|STATUS_LED_G_Pin|PRECHARGE_EN_Pin
|
||||||
|
@ -305,16 +305,16 @@ void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef* htim_pwm)
|
|||||||
|
|
||||||
/* USER CODE END TIM1_MspInit 1 */
|
/* USER CODE END TIM1_MspInit 1 */
|
||||||
}
|
}
|
||||||
else if(htim_pwm->Instance==TIM15)
|
else if(htim_pwm->Instance==TIM2)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN TIM15_MspInit 0 */
|
/* USER CODE BEGIN TIM2_MspInit 0 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspInit 0 */
|
/* USER CODE END TIM2_MspInit 0 */
|
||||||
/* Peripheral clock enable */
|
/* Peripheral clock enable */
|
||||||
__HAL_RCC_TIM15_CLK_ENABLE();
|
__HAL_RCC_TIM2_CLK_ENABLE();
|
||||||
/* USER CODE BEGIN TIM15_MspInit 1 */
|
/* USER CODE BEGIN TIM2_MspInit 1 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspInit 1 */
|
/* USER CODE END TIM2_MspInit 1 */
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -342,27 +342,26 @@ void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
|
|||||||
|
|
||||||
/* USER CODE END TIM1_MspPostInit 1 */
|
/* USER CODE END TIM1_MspPostInit 1 */
|
||||||
}
|
}
|
||||||
else if(htim->Instance==TIM15)
|
else if(htim->Instance==TIM2)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN TIM15_MspPostInit 0 */
|
/* USER CODE BEGIN TIM2_MspPostInit 0 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspPostInit 0 */
|
/* USER CODE END TIM2_MspPostInit 0 */
|
||||||
|
|
||||||
__HAL_RCC_GPIOA_CLK_ENABLE();
|
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||||
/**TIM15 GPIO Configuration
|
/**TIM2 GPIO Configuration
|
||||||
PA2 ------> TIM15_CH1
|
PA2 ------> TIM2_CH3
|
||||||
PA3 ------> TIM15_CH2
|
|
||||||
*/
|
*/
|
||||||
GPIO_InitStruct.Pin = PWM_PG_FAN1_Pin|PWM_PG_FAN2_Pin;
|
GPIO_InitStruct.Pin = GPIO_PIN_2;
|
||||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
||||||
GPIO_InitStruct.Alternate = GPIO_AF9_TIM15;
|
GPIO_InitStruct.Alternate = GPIO_AF1_TIM2;
|
||||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||||
|
|
||||||
/* USER CODE BEGIN TIM15_MspPostInit 1 */
|
/* USER CODE BEGIN TIM2_MspPostInit 1 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspPostInit 1 */
|
/* USER CODE END TIM2_MspPostInit 1 */
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -385,16 +384,16 @@ void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef* htim_pwm)
|
|||||||
|
|
||||||
/* USER CODE END TIM1_MspDeInit 1 */
|
/* USER CODE END TIM1_MspDeInit 1 */
|
||||||
}
|
}
|
||||||
else if(htim_pwm->Instance==TIM15)
|
else if(htim_pwm->Instance==TIM2)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN TIM15_MspDeInit 0 */
|
/* USER CODE BEGIN TIM2_MspDeInit 0 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspDeInit 0 */
|
/* USER CODE END TIM2_MspDeInit 0 */
|
||||||
/* Peripheral clock disable */
|
/* Peripheral clock disable */
|
||||||
__HAL_RCC_TIM15_CLK_DISABLE();
|
__HAL_RCC_TIM2_CLK_DISABLE();
|
||||||
/* USER CODE BEGIN TIM15_MspDeInit 1 */
|
/* USER CODE BEGIN TIM2_MspDeInit 1 */
|
||||||
|
|
||||||
/* USER CODE END TIM15_MspDeInit 1 */
|
/* USER CODE END TIM2_MspDeInit 1 */
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
2
Makefile
2
Makefile
@ -1,5 +1,5 @@
|
|||||||
##########################################################################################################################
|
##########################################################################################################################
|
||||||
# File automatically-generated by tool: [projectgenerator] version: [4.3.0-B58] date: [Fri May 17 19:29:11 CEST 2024]
|
# File automatically-generated by tool: [projectgenerator] version: [4.3.0-B58] date: [Thu May 23 18:55:59 CEST 2024]
|
||||||
##########################################################################################################################
|
##########################################################################################################################
|
||||||
|
|
||||||
# ------------------------------------------------
|
# ------------------------------------------------
|
||||||
|
@ -18,42 +18,41 @@ Mcu.IP3=RCC
|
|||||||
Mcu.IP4=SPI1
|
Mcu.IP4=SPI1
|
||||||
Mcu.IP5=SYS
|
Mcu.IP5=SYS
|
||||||
Mcu.IP6=TIM1
|
Mcu.IP6=TIM1
|
||||||
Mcu.IP7=TIM15
|
Mcu.IP7=TIM2
|
||||||
Mcu.IP8=USART1
|
Mcu.IP8=USART1
|
||||||
Mcu.IPNb=9
|
Mcu.IPNb=9
|
||||||
Mcu.Name=STM32F302C(B-C)Tx
|
Mcu.Name=STM32F302C(B-C)Tx
|
||||||
Mcu.Package=LQFP48
|
Mcu.Package=LQFP48
|
||||||
Mcu.Pin0=PF0-OSC_IN
|
Mcu.Pin0=PF0-OSC_IN
|
||||||
Mcu.Pin1=PF1-OSC_OUT
|
Mcu.Pin1=PF1-OSC_OUT
|
||||||
Mcu.Pin10=PB0
|
Mcu.Pin10=PB1
|
||||||
Mcu.Pin11=PB1
|
Mcu.Pin11=PB2
|
||||||
Mcu.Pin12=PB2
|
Mcu.Pin12=PB11
|
||||||
Mcu.Pin13=PB11
|
Mcu.Pin13=PB13
|
||||||
Mcu.Pin14=PB13
|
Mcu.Pin14=PB14
|
||||||
Mcu.Pin15=PB14
|
Mcu.Pin15=PB15
|
||||||
Mcu.Pin16=PB15
|
Mcu.Pin16=PA8
|
||||||
Mcu.Pin17=PA8
|
Mcu.Pin17=PA9
|
||||||
Mcu.Pin18=PA9
|
Mcu.Pin18=PA10
|
||||||
Mcu.Pin19=PA10
|
Mcu.Pin19=PA11
|
||||||
Mcu.Pin2=PA0
|
Mcu.Pin2=PA0
|
||||||
Mcu.Pin20=PA11
|
Mcu.Pin20=PA12
|
||||||
Mcu.Pin21=PA12
|
Mcu.Pin21=PA13
|
||||||
Mcu.Pin22=PA13
|
Mcu.Pin22=PA14
|
||||||
Mcu.Pin23=PA14
|
Mcu.Pin23=PA15
|
||||||
Mcu.Pin24=PA15
|
Mcu.Pin24=PB3
|
||||||
Mcu.Pin25=PB3
|
Mcu.Pin25=PB6
|
||||||
Mcu.Pin26=PB6
|
Mcu.Pin26=PB7
|
||||||
Mcu.Pin27=PB7
|
Mcu.Pin27=PB9
|
||||||
Mcu.Pin28=PB9
|
Mcu.Pin28=VP_SYS_VS_Systick
|
||||||
Mcu.Pin29=VP_SYS_VS_Systick
|
|
||||||
Mcu.Pin3=PA1
|
Mcu.Pin3=PA1
|
||||||
Mcu.Pin4=PA2
|
Mcu.Pin4=PA2
|
||||||
Mcu.Pin5=PA3
|
Mcu.Pin5=PA4
|
||||||
Mcu.Pin6=PA4
|
Mcu.Pin6=PA5
|
||||||
Mcu.Pin7=PA5
|
Mcu.Pin7=PA6
|
||||||
Mcu.Pin8=PA6
|
Mcu.Pin8=PA7
|
||||||
Mcu.Pin9=PA7
|
Mcu.Pin9=PB0
|
||||||
Mcu.PinsNb=30
|
Mcu.PinsNb=29
|
||||||
Mcu.ThirdPartyNb=0
|
Mcu.ThirdPartyNb=0
|
||||||
Mcu.UserConstants=
|
Mcu.UserConstants=
|
||||||
Mcu.UserName=STM32F302CBTx
|
Mcu.UserName=STM32F302CBTx
|
||||||
@ -99,14 +98,8 @@ PA14.Signal=SYS_JTCK-SWCLK
|
|||||||
PA15.Locked=true
|
PA15.Locked=true
|
||||||
PA15.Mode=I2C
|
PA15.Mode=I2C
|
||||||
PA15.Signal=I2C1_SCL
|
PA15.Signal=I2C1_SCL
|
||||||
PA2.GPIOParameters=GPIO_Label
|
|
||||||
PA2.GPIO_Label=PWM_PG_FAN1
|
|
||||||
PA2.Locked=true
|
PA2.Locked=true
|
||||||
PA2.Signal=S_TIM15_CH1
|
PA2.Signal=S_TIM2_CH3
|
||||||
PA3.GPIOParameters=GPIO_Label
|
|
||||||
PA3.GPIO_Label=PWM_PG_FAN2
|
|
||||||
PA3.Locked=true
|
|
||||||
PA3.Signal=S_TIM15_CH2
|
|
||||||
PA4.GPIOParameters=GPIO_Label
|
PA4.GPIOParameters=GPIO_Label
|
||||||
PA4.GPIO_Label=CSB
|
PA4.GPIO_Label=CSB
|
||||||
PA4.Locked=true
|
PA4.Locked=true
|
||||||
@ -192,7 +185,7 @@ ProjectManager.FreePins=true
|
|||||||
ProjectManager.HalAssertFull=false
|
ProjectManager.HalAssertFull=false
|
||||||
ProjectManager.HeapSize=0x200
|
ProjectManager.HeapSize=0x200
|
||||||
ProjectManager.KeepUserCode=true
|
ProjectManager.KeepUserCode=true
|
||||||
ProjectManager.LastFirmware=true
|
ProjectManager.LastFirmware=false
|
||||||
ProjectManager.LibraryCopy=1
|
ProjectManager.LibraryCopy=1
|
||||||
ProjectManager.MainLocation=Core/Src
|
ProjectManager.MainLocation=Core/Src
|
||||||
ProjectManager.NoMain=false
|
ProjectManager.NoMain=false
|
||||||
@ -208,7 +201,7 @@ ProjectManager.ToolChainLocation=
|
|||||||
ProjectManager.UAScriptAfterPath=
|
ProjectManager.UAScriptAfterPath=
|
||||||
ProjectManager.UAScriptBeforePath=
|
ProjectManager.UAScriptBeforePath=
|
||||||
ProjectManager.UnderRoot=false
|
ProjectManager.UnderRoot=false
|
||||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_CAN_Init-CAN-false-HAL-true,4-MX_I2C1_Init-I2C1-false-HAL-true,5-MX_SPI1_Init-SPI1-false-HAL-true,6-MX_TIM15_Init-TIM15-false-HAL-true,7-MX_USART1_UART_Init-USART1-false-HAL-true,8-MX_TIM1_Init-TIM1-false-HAL-true
|
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_CAN_Init-CAN-false-HAL-true,4-MX_I2C1_Init-I2C1-false-HAL-true,5-MX_SPI1_Init-SPI1-false-HAL-true,6-MX_TIM15_Init-TIM15-false-HAL-true,6-MX_USART1_UART_Init-USART1-false-HAL-true,7-MX_TIM1_Init-TIM1-false-HAL-true
|
||||||
RCC.ADC12outputFreq_Value=16000000
|
RCC.ADC12outputFreq_Value=16000000
|
||||||
RCC.AHBFreq_Value=16000000
|
RCC.AHBFreq_Value=16000000
|
||||||
RCC.APB1Freq_Value=16000000
|
RCC.APB1Freq_Value=16000000
|
||||||
@ -243,10 +236,8 @@ RCC.USART2Freq_Value=16000000
|
|||||||
RCC.USART3Freq_Value=16000000
|
RCC.USART3Freq_Value=16000000
|
||||||
RCC.USBFreq_Value=16000000
|
RCC.USBFreq_Value=16000000
|
||||||
RCC.VCOOutput2Freq_Value=4000000
|
RCC.VCOOutput2Freq_Value=4000000
|
||||||
SH.S_TIM15_CH1.0=TIM15_CH1,PWM Generation1 CH1
|
SH.S_TIM2_CH3.0=TIM2_CH3,PWM Generation3 CH3
|
||||||
SH.S_TIM15_CH1.ConfNb=1
|
SH.S_TIM2_CH3.ConfNb=1
|
||||||
SH.S_TIM15_CH2.0=TIM15_CH2,PWM Generation2 CH2
|
|
||||||
SH.S_TIM15_CH2.ConfNb=1
|
|
||||||
SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_32
|
SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_32
|
||||||
SPI1.CalculateBaudRate=500.0 KBits/s
|
SPI1.CalculateBaudRate=500.0 KBits/s
|
||||||
SPI1.DataSize=SPI_DATASIZE_8BIT
|
SPI1.DataSize=SPI_DATASIZE_8BIT
|
||||||
@ -256,9 +247,9 @@ SPI1.Mode=SPI_MODE_MASTER
|
|||||||
SPI1.VirtualType=VM_MASTER
|
SPI1.VirtualType=VM_MASTER
|
||||||
TIM1.Channel-PWM\ Generation3\ CH3N=TIM_CHANNEL_3
|
TIM1.Channel-PWM\ Generation3\ CH3N=TIM_CHANNEL_3
|
||||||
TIM1.IPParameters=Channel-PWM Generation3 CH3N
|
TIM1.IPParameters=Channel-PWM Generation3 CH3N
|
||||||
TIM15.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1
|
TIM2.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3
|
||||||
TIM15.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
|
TIM2.IPParameters=Channel-PWM Generation3 CH3,Period
|
||||||
TIM15.IPParameters=Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2
|
TIM2.Period=65535
|
||||||
USART1.IPParameters=VirtualMode-Asynchronous
|
USART1.IPParameters=VirtualMode-Asynchronous
|
||||||
USART1.VirtualMode-Asynchronous=VM_ASYNC
|
USART1.VirtualMode-Asynchronous=VM_ASYNC
|
||||||
VP_SYS_VS_Systick.Mode=SysTick
|
VP_SYS_VS_Systick.Mode=SysTick
|
||||||
|
Loading…
x
Reference in New Issue
Block a user