Compare commits
7 Commits
3cedd7c413
...
0bce1acabd
Author | SHA1 | Date | |
---|---|---|---|
|
0bce1acabd | ||
|
a26d865e06 | ||
|
6e1717624f | ||
|
117afd6bbe | ||
|
d66db6572b | ||
|
bf073e85f4 | ||
|
7ecc96de62 |
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,4 +1,5 @@
|
||||||
.vscode
|
.vscode
|
||||||
|
MDK-ARM/.vscode
|
||||||
MDK-ARM/CAR
|
MDK-ARM/CAR
|
||||||
MDK-ARM/DebugConfig
|
MDK-ARM/DebugConfig
|
||||||
MDK-ARM/CAR.uvguix.*
|
MDK-ARM/CAR.uvguix.*
|
||||||
|
|
File diff suppressed because one or more lines are too long
27
CAR.ioc
27
CAR.ioc
|
@ -153,8 +153,8 @@ ProjectManager.BackupPrevious=false
|
||||||
ProjectManager.CompilerOptimize=6
|
ProjectManager.CompilerOptimize=6
|
||||||
ProjectManager.ComputerToolchain=false
|
ProjectManager.ComputerToolchain=false
|
||||||
ProjectManager.CoupleFile=true
|
ProjectManager.CoupleFile=true
|
||||||
ProjectManager.CustomerFirmwarePackage=..\\stm32\\STM32Cube_FW_F1_V1.8.0
|
ProjectManager.CustomerFirmwarePackage=
|
||||||
ProjectManager.DefaultFWLocation=false
|
ProjectManager.DefaultFWLocation=true
|
||||||
ProjectManager.DeletePrevious=true
|
ProjectManager.DeletePrevious=true
|
||||||
ProjectManager.DeviceId=STM32F103C8Tx
|
ProjectManager.DeviceId=STM32F103C8Tx
|
||||||
ProjectManager.FirmwarePackage=STM32Cube FW_F1 V1.8.5
|
ProjectManager.FirmwarePackage=STM32Cube FW_F1 V1.8.5
|
||||||
|
@ -212,19 +212,20 @@ SH.S_TIM4_CH1.0=TIM4_CH1,PWM Generation1 CH1
|
||||||
SH.S_TIM4_CH1.ConfNb=1
|
SH.S_TIM4_CH1.ConfNb=1
|
||||||
SH.S_TIM4_CH2.0=TIM4_CH2,PWM Generation2 CH2
|
SH.S_TIM4_CH2.0=TIM4_CH2,PWM Generation2 CH2
|
||||||
SH.S_TIM4_CH2.ConfNb=1
|
SH.S_TIM4_CH2.ConfNb=1
|
||||||
TIM2.IPParameters=Prescaler,Period
|
TIM2.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE
|
||||||
TIM2.Period=1 - 1
|
TIM2.IPParameters=Prescaler,Period,AutoReloadPreload
|
||||||
TIM2.Prescaler=72 - 1
|
TIM2.Period=72 - 1
|
||||||
|
TIM2.Prescaler=0
|
||||||
TIM3.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
|
TIM3.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
|
||||||
TIM3.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3
|
TIM3.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3
|
||||||
TIM3.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4
|
TIM3.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4
|
||||||
TIM3.ClockDivision=TIM_CLOCKDIVISION_DIV1
|
TIM3.ClockDivision=TIM_CLOCKDIVISION_DIV1
|
||||||
TIM3.IPParameters=Channel-PWM Generation4 CH4,Prescaler,ClockDivision,Period,Pulse-PWM Generation4 CH4,Channel-PWM Generation3 CH3,Channel-PWM Generation2 CH2,Pulse-PWM Generation2 CH2,Pulse-PWM Generation3 CH3
|
TIM3.IPParameters=Channel-PWM Generation4 CH4,Prescaler,ClockDivision,Period,Pulse-PWM Generation4 CH4,Channel-PWM Generation3 CH3,Channel-PWM Generation2 CH2,Pulse-PWM Generation2 CH2,Pulse-PWM Generation3 CH3
|
||||||
TIM3.Period=100 - 1
|
TIM3.Period=256 - 1
|
||||||
TIM3.Prescaler=72 - 1
|
TIM3.Prescaler=720 - 1
|
||||||
TIM3.Pulse-PWM\ Generation2\ CH2=10000 - 1
|
TIM3.Pulse-PWM\ Generation2\ CH2=255
|
||||||
TIM3.Pulse-PWM\ Generation3\ CH3=10000 - 1
|
TIM3.Pulse-PWM\ Generation3\ CH3=255
|
||||||
TIM3.Pulse-PWM\ Generation4\ CH4=10000 - 1
|
TIM3.Pulse-PWM\ Generation4\ CH4=255
|
||||||
TIM4.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1
|
TIM4.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1
|
||||||
TIM4.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
|
TIM4.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
|
||||||
TIM4.IPParameters=Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2,Prescaler,Period,Pulse-PWM Generation1 CH1,Pulse-PWM Generation2 CH2
|
TIM4.IPParameters=Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2,Prescaler,Period,Pulse-PWM Generation1 CH1,Pulse-PWM Generation2 CH2
|
||||||
|
@ -232,9 +233,11 @@ TIM4.Period=100
|
||||||
TIM4.Prescaler=720 - 1
|
TIM4.Prescaler=720 - 1
|
||||||
TIM4.Pulse-PWM\ Generation1\ CH1=100
|
TIM4.Pulse-PWM\ Generation1\ CH1=100
|
||||||
TIM4.Pulse-PWM\ Generation2\ CH2=100
|
TIM4.Pulse-PWM\ Generation2\ CH2=100
|
||||||
USART1.IPParameters=VirtualMode
|
USART1.BaudRate=115200
|
||||||
|
USART1.IPParameters=VirtualMode,BaudRate
|
||||||
USART1.VirtualMode=VM_ASYNC
|
USART1.VirtualMode=VM_ASYNC
|
||||||
USART2.IPParameters=VirtualMode
|
USART2.BaudRate=9600
|
||||||
|
USART2.IPParameters=VirtualMode,BaudRate
|
||||||
USART2.VirtualMode=VM_ASYNC
|
USART2.VirtualMode=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
|
||||||
|
|
8
Core/Inc/bluetooth.h
Normal file
8
Core/Inc/bluetooth.h
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
#ifndef __BLUETOOTH_H
|
||||||
|
#define __BLUETOOTH_H
|
||||||
|
|
||||||
|
#include "main.h"
|
||||||
|
|
||||||
|
void BLUETOOTH_Init(void);
|
||||||
|
|
||||||
|
#endif
|
10
Core/Inc/control.h
Normal file
10
Core/Inc/control.h
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
#ifndef __CONTROL_H
|
||||||
|
#define __CONTROL_H
|
||||||
|
|
||||||
|
#include "main.h"
|
||||||
|
|
||||||
|
void CONTROL_CommonCmd(uint8_t type, uint8_t state);
|
||||||
|
void CONTROL_RGB(uint8_t r, uint8_t g, uint8_t b);
|
||||||
|
void CONTROL_Mode(uint8_t mode, uint8_t state);
|
||||||
|
|
||||||
|
#endif
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
|
||||||
int16_t sonar_mm(void);
|
uint16_t sonar(void);
|
||||||
float sonar(void);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
void LED_Start(uint8_t led);
|
void LED_Start(uint8_t led);
|
||||||
void LED_Stop(uint8_t led);
|
void LED_Stop(uint8_t led);
|
||||||
|
|
||||||
// duty in [0, 100]
|
// duty in [0, 255]
|
||||||
void LED_SetDuty(uint8_t r, uint8_t g, uint8_t b);
|
void LED_SetDuty(uint8_t r, uint8_t g, uint8_t b);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef __MOTOR_H
|
#ifndef __MOTOR_H
|
||||||
#define __MOTOR_H
|
#define __MOTOR_H
|
||||||
|
|
||||||
// 控制电机转动
|
// 控制电机转动
|
||||||
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
|
||||||
|
|
75
Core/Src/bluetooth.c
Normal file
75
Core/Src/bluetooth.c
Normal file
|
@ -0,0 +1,75 @@
|
||||||
|
#include "bluetooth.h"
|
||||||
|
#include "usart.h"
|
||||||
|
#include "control.h"
|
||||||
|
#include "stdio.h"
|
||||||
|
|
||||||
|
#define BUFFER_SIZE 100
|
||||||
|
#define MESSAGE_SIZE 19
|
||||||
|
#define CMD_NUM 9
|
||||||
|
|
||||||
|
static uint8_t rxBuffer[BUFFER_SIZE], rxSize;
|
||||||
|
static uint8_t txBuffer[BUFFER_SIZE], txSize;
|
||||||
|
static uint8_t cmdIndex;
|
||||||
|
|
||||||
|
void BLUETOOTH_Init(void)
|
||||||
|
{
|
||||||
|
rxSize = 0;
|
||||||
|
HAL_UART_Receive_IT(&huart2, rxBuffer, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void receiveCmd()
|
||||||
|
{
|
||||||
|
// 通用协议
|
||||||
|
if (rxBuffer[2] == ',')
|
||||||
|
{
|
||||||
|
cmdIndex = 0;
|
||||||
|
for (uint8_t i = 1; i < MESSAGE_SIZE; i += 2)
|
||||||
|
if (rxBuffer[i] == '0')
|
||||||
|
++cmdIndex;
|
||||||
|
else
|
||||||
|
break;
|
||||||
|
if (cmdIndex == CMD_NUM)
|
||||||
|
cmdIndex = 0;
|
||||||
|
CONTROL_CommonCmd(cmdIndex, rxBuffer[cmdIndex * 2 + 1]);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
static uint16_t num[6];
|
||||||
|
switch (rxBuffer[5])
|
||||||
|
{
|
||||||
|
// 机械手
|
||||||
|
case 'S':
|
||||||
|
break;
|
||||||
|
// 舵机云台
|
||||||
|
case 'P':
|
||||||
|
break;
|
||||||
|
// 七彩灯
|
||||||
|
case 'C':
|
||||||
|
sscanf(rxBuffer + 5, "%*3s%hu,%*3s%hu,%*3s%hu", num, num + 1, num + 2);
|
||||||
|
CONTROL_RGB(num[0], num[1], num[2]);
|
||||||
|
break;
|
||||||
|
|
||||||
|
// 模式选择
|
||||||
|
case 'M':
|
||||||
|
sscanf(rxBuffer + 5, "%*4s%lc%lc", num, num + 1);
|
||||||
|
CONTROL_Mode(num[0] - '0', num[1] - '0');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
HAL_UART_Transmit(&huart1, rxBuffer, rxSize, 1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
|
||||||
|
{
|
||||||
|
if (huart == &huart2)
|
||||||
|
{
|
||||||
|
if (rxSize && rxBuffer[rxSize] == '#')
|
||||||
|
{
|
||||||
|
if (++rxSize > 10)
|
||||||
|
receiveCmd();
|
||||||
|
BLUETOOTH_Init();
|
||||||
|
}
|
||||||
|
else if (rxSize++ == 0 && rxBuffer[0] == '$')
|
||||||
|
HAL_UART_Receive_IT(&huart2, rxBuffer + rxSize, 1);
|
||||||
|
}
|
||||||
|
}
|
88
Core/Src/control.c
Normal file
88
Core/Src/control.c
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
#include "control.h"
|
||||||
|
#include "hcsr04.h"
|
||||||
|
#include "led.h"
|
||||||
|
#include "motor.h"
|
||||||
|
|
||||||
|
#define CMD_MOVE 0
|
||||||
|
#define CMD_ROTATE 1
|
||||||
|
#define CMD_BUZZER 2
|
||||||
|
#define CMD_SPEED 3
|
||||||
|
// #define CMD_SHAKE 4
|
||||||
|
// #define CMD_SING 5
|
||||||
|
#define CMD_LED 6
|
||||||
|
// #define CMD_FIRE 7
|
||||||
|
// #define CMD_SERVO 8
|
||||||
|
|
||||||
|
void move(uint8_t state);
|
||||||
|
void rotate(uint8_t state);
|
||||||
|
void buzzer(uint8_t state);
|
||||||
|
void speed(uint8_t state);
|
||||||
|
// void shake(uint8_t state);
|
||||||
|
// void sing(uint8_t state);
|
||||||
|
void led(uint8_t state);
|
||||||
|
// void fire(uint8_t state);
|
||||||
|
// void servo(uint8_t state);
|
||||||
|
|
||||||
|
void CONTROL_CommonCmd(uint8_t type, uint8_t state)
|
||||||
|
{
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case CMD_MOVE:
|
||||||
|
move(state);
|
||||||
|
break;
|
||||||
|
case CMD_ROTATE:
|
||||||
|
rotate(state);
|
||||||
|
break;
|
||||||
|
case CMD_BUZZER:
|
||||||
|
buzzer(state);
|
||||||
|
break;
|
||||||
|
case CMD_SPEED:
|
||||||
|
speed(state);
|
||||||
|
break;
|
||||||
|
// case CMD_SHAKE:
|
||||||
|
// break;
|
||||||
|
// case CMD_SING:
|
||||||
|
// break;
|
||||||
|
case CMD_LED:
|
||||||
|
led(state);
|
||||||
|
break;
|
||||||
|
// case CMD_FIRE:
|
||||||
|
// break;
|
||||||
|
// case CMD_SERVO:
|
||||||
|
// break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void CONTROL_RGB(uint8_t r, uint8_t g, uint8_t b)
|
||||||
|
{
|
||||||
|
LED_Start(LED_ALL);
|
||||||
|
LED_SetDuty(r, g, b);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CONTROL_Mode(uint8_t mode, uint8_t state)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void move(uint8_t state)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void rotate(uint8_t state)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void buzzer(uint8_t state)
|
||||||
|
{
|
||||||
|
if (state)
|
||||||
|
HAL_GPIO_WritePin(FM_K2_POWERC_GPIO_Port, FM_K2_POWERC_Pin, GPIO_PIN_RESET);
|
||||||
|
else
|
||||||
|
HAL_GPIO_WritePin(FM_K2_POWERC_GPIO_Port, FM_K2_POWERC_Pin, GPIO_PIN_SET);
|
||||||
|
}
|
||||||
|
|
||||||
|
void speed(uint8_t state)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void led(uint8_t state)
|
||||||
|
{
|
||||||
|
}
|
|
@ -1,54 +1,28 @@
|
||||||
#include "hcsr04.h"
|
#include "hcsr04.h"
|
||||||
#include "tim.h"
|
#include "tim.h"
|
||||||
|
|
||||||
// time 的单位是 μs
|
// time 的单位是 1μs
|
||||||
uint64_t time; // 声明变量,用来计时
|
static volatile uint64_t time; // 声明变量,用来计时
|
||||||
uint64_t time_end; // 声明变量,存储回波信号时间
|
static uint64_t time_end; // 声明变量,存储回波信号时间
|
||||||
uint8_t state = 1;
|
static uint8_t state = 0;
|
||||||
|
|
||||||
// HACK 临时的 delay 解决方法
|
// HACK 临时的 delay 解决方法
|
||||||
void delay_us(uint16_t us);
|
void delay_us(uint16_t us);
|
||||||
|
|
||||||
int16_t sonar_mm(void) // 测距并返回单位为毫米的距离结果
|
uint16_t sonar(void) // 测距并返回单位为毫米的距离结果
|
||||||
{
|
{
|
||||||
uint32_t distance, distance_mm = 0;
|
// 超时则返回5m距离
|
||||||
|
uint32_t distance = 5000;
|
||||||
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_SET); // 输出高电平
|
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_SET); // 输出高电平
|
||||||
delay_us(15); // 延时15微秒
|
delay_us(15); // 延时15微秒
|
||||||
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_RESET); // 输出低电平
|
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_RESET); // 输出低电平
|
||||||
|
|
||||||
while (state)
|
// HACK 考虑RTOS优化
|
||||||
;
|
HAL_Delay(15);
|
||||||
state = 1;
|
|
||||||
|
|
||||||
// BUG 现在 time 的单位是 1μs
|
if (state)
|
||||||
if (time_end / 100 < 38) // 判断是否小于38毫秒,大于38毫秒的就是超时,直接调到下面返回0
|
distance = time_end * 346 / 2000; // 计算距离,25°C空气中的音速为346m/s
|
||||||
{
|
return distance;
|
||||||
distance = (time_end * 346) / 2; // 计算距离,25°C空气中的音速为346m/s
|
|
||||||
distance_mm = distance / 100; // 因为上面的time_end的单位是10微秒,所以要得出单位为毫米的距离结果,还得除以100
|
|
||||||
}
|
|
||||||
return distance_mm; // 返回测距结果
|
|
||||||
}
|
|
||||||
|
|
||||||
float sonar(void) // 测距并返回单位为米的距离结果
|
|
||||||
{
|
|
||||||
uint32_t distance, distance_mm = 0;
|
|
||||||
float distance_m = 0;
|
|
||||||
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_SET); // 输出高电平
|
|
||||||
delay_us(15); // 延时15微秒
|
|
||||||
HAL_GPIO_WritePin(SCL_C_GPIO_Port, SCL_C_Pin, GPIO_PIN_RESET); // 输出低电平
|
|
||||||
|
|
||||||
while (state)
|
|
||||||
;
|
|
||||||
state = 1;
|
|
||||||
|
|
||||||
// BUG 现在 time 的单位是 1μs
|
|
||||||
if (time_end / 100 < 38)
|
|
||||||
{
|
|
||||||
distance = (time_end * 346) / 2;
|
|
||||||
distance_mm = distance / 100;
|
|
||||||
distance_m = distance_mm / 1000;
|
|
||||||
}
|
|
||||||
return distance_m;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void delay_us(uint16_t us)
|
void delay_us(uint16_t us)
|
||||||
|
@ -72,14 +46,14 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
||||||
{
|
{
|
||||||
if (HAL_GPIO_ReadPin(SDA_C_EXTI12_GPIO_Port, SDA_C_EXTI12_Pin))
|
if (HAL_GPIO_ReadPin(SDA_C_EXTI12_GPIO_Port, SDA_C_EXTI12_Pin))
|
||||||
{
|
{
|
||||||
HAL_TIM_Base_Start_IT(&htim2);
|
|
||||||
time = 0;
|
time = 0;
|
||||||
|
HAL_TIM_Base_Start_IT(&htim2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
time_end = time;
|
time_end = time;
|
||||||
HAL_TIM_Base_Stop_IT(&htim2);
|
HAL_TIM_Base_Stop_IT(&htim2);
|
||||||
state = 0;
|
state = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +1,21 @@
|
||||||
/* USER CODE BEGIN Header */
|
/* USER CODE BEGIN Header */
|
||||||
/**
|
/**
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
* @file tim.c
|
* @file tim.c
|
||||||
* @brief This file provides code for the configuration
|
* @brief This file provides code for the configuration
|
||||||
* of the TIM instances.
|
* of the TIM instances.
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
* @attention
|
* @attention
|
||||||
*
|
*
|
||||||
* Copyright (c) 2024 STMicroelectronics.
|
* Copyright (c) 2024 STMicroelectronics.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This software is licensed under terms that can be found in the LICENSE file
|
* This software is licensed under terms that can be found in the LICENSE file
|
||||||
* in the root directory of this software component.
|
* in the root directory of this software component.
|
||||||
* If no LICENSE file comes with this software, it is provided AS-IS.
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||||
*
|
*
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
*/
|
*/
|
||||||
/* USER CODE END Header */
|
/* USER CODE END Header */
|
||||||
/* Includes ------------------------------------------------------------------*/
|
/* Includes ------------------------------------------------------------------*/
|
||||||
#include "tim.h"
|
#include "tim.h"
|
||||||
|
@ -43,9 +43,9 @@ void MX_TIM2_Init(void)
|
||||||
|
|
||||||
/* USER CODE END TIM2_Init 1 */
|
/* USER CODE END TIM2_Init 1 */
|
||||||
htim2.Instance = TIM2;
|
htim2.Instance = TIM2;
|
||||||
htim2.Init.Prescaler = 72 - 1;
|
htim2.Init.Prescaler = 0;
|
||||||
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim2.Init.Period = 1 - 1;
|
htim2.Init.Period = 72 - 1;
|
||||||
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim2) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim2) != HAL_OK)
|
||||||
|
@ -84,9 +84,9 @@ void MX_TIM3_Init(void)
|
||||||
|
|
||||||
/* USER CODE END TIM3_Init 1 */
|
/* USER CODE END TIM3_Init 1 */
|
||||||
htim3.Instance = TIM3;
|
htim3.Instance = TIM3;
|
||||||
htim3.Init.Prescaler = 72 - 1;
|
htim3.Init.Prescaler = 720 - 1;
|
||||||
htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim3.Init.Period = 100 - 1;
|
htim3.Init.Period = 256 - 1;
|
||||||
htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
|
||||||
|
@ -109,7 +109,7 @@ void MX_TIM3_Init(void)
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
sConfigOC.OCMode = TIM_OCMODE_PWM1;
|
sConfigOC.OCMode = TIM_OCMODE_PWM1;
|
||||||
sConfigOC.Pulse = 10000 - 1;
|
sConfigOC.Pulse = 255;
|
||||||
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
|
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
|
||||||
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
|
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
|
||||||
if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
|
if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
|
||||||
|
|
|
@ -69,7 +69,7 @@ void MX_USART2_UART_Init(void)
|
||||||
|
|
||||||
/* USER CODE END USART2_Init 1 */
|
/* USER CODE END USART2_Init 1 */
|
||||||
huart2.Instance = USART2;
|
huart2.Instance = USART2;
|
||||||
huart2.Init.BaudRate = 115200;
|
huart2.Init.BaudRate = 9600;
|
||||||
huart2.Init.WordLength = UART_WORDLENGTH_8B;
|
huart2.Init.WordLength = UART_WORDLENGTH_8B;
|
||||||
huart2.Init.StopBits = UART_STOPBITS_1;
|
huart2.Init.StopBits = UART_STOPBITS_1;
|
||||||
huart2.Init.Parity = UART_PARITY_NONE;
|
huart2.Init.Parity = UART_PARITY_NONE;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||||
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
|
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
|
||||||
|
|
||||||
<SchemaVersion>1.0</SchemaVersion>
|
<SchemaVersion>1.0</SchemaVersion>
|
||||||
|
@ -45,7 +45,7 @@
|
||||||
<PageWidth>79</PageWidth>
|
<PageWidth>79</PageWidth>
|
||||||
<PageLength>66</PageLength>
|
<PageLength>66</PageLength>
|
||||||
<TabStop>8</TabStop>
|
<TabStop>8</TabStop>
|
||||||
<ListingPath />
|
<ListingPath></ListingPath>
|
||||||
</OPTLEX>
|
</OPTLEX>
|
||||||
<ListingPage>
|
<ListingPage>
|
||||||
<CreateCListing>1</CreateCListing>
|
<CreateCListing>1</CreateCListing>
|
||||||
|
@ -104,16 +104,16 @@
|
||||||
<bSchkAxf>0</bSchkAxf>
|
<bSchkAxf>0</bSchkAxf>
|
||||||
<bTchkAxf>0</bTchkAxf>
|
<bTchkAxf>0</bTchkAxf>
|
||||||
<nTsel>3</nTsel>
|
<nTsel>3</nTsel>
|
||||||
<sDll />
|
<sDll></sDll>
|
||||||
<sDllPa />
|
<sDllPa></sDllPa>
|
||||||
<sDlgDll />
|
<sDlgDll></sDlgDll>
|
||||||
<sDlgPa />
|
<sDlgPa></sDlgPa>
|
||||||
<sIfile />
|
<sIfile></sIfile>
|
||||||
<tDll />
|
<tDll></tDll>
|
||||||
<tDllPa />
|
<tDllPa></tDllPa>
|
||||||
<tDlgDll />
|
<tDlgDll></tDlgDll>
|
||||||
<tDlgPa />
|
<tDlgPa></tDlgPa>
|
||||||
<tIfile />
|
<tIfile></tIfile>
|
||||||
<pMon>BIN\CMSIS_AGDI.dll</pMon>
|
<pMon>BIN\CMSIS_AGDI.dll</pMon>
|
||||||
</DebugOpt>
|
</DebugOpt>
|
||||||
<TargetDriverDllRegistry>
|
<TargetDriverDllRegistry>
|
||||||
|
@ -130,7 +130,7 @@
|
||||||
<SetRegEntry>
|
<SetRegEntry>
|
||||||
<Number>0</Number>
|
<Number>0</Number>
|
||||||
<Key>ARMDBGFLAGS</Key>
|
<Key>ARMDBGFLAGS</Key>
|
||||||
<Name />
|
<Name></Name>
|
||||||
</SetRegEntry>
|
</SetRegEntry>
|
||||||
<SetRegEntry>
|
<SetRegEntry>
|
||||||
<Number>0</Number>
|
<Number>0</Number>
|
||||||
|
@ -140,7 +140,7 @@
|
||||||
<SetRegEntry>
|
<SetRegEntry>
|
||||||
<Number>0</Number>
|
<Number>0</Number>
|
||||||
<Key>DLGUARM</Key>
|
<Key>DLGUARM</Key>
|
||||||
<Name />
|
<Name></Name>
|
||||||
</SetRegEntry>
|
</SetRegEntry>
|
||||||
<SetRegEntry>
|
<SetRegEntry>
|
||||||
<Number>0</Number>
|
<Number>0</Number>
|
||||||
|
@ -167,8 +167,8 @@
|
||||||
<BreakByAccess>0</BreakByAccess>
|
<BreakByAccess>0</BreakByAccess>
|
||||||
<BreakIfRCount>0</BreakIfRCount>
|
<BreakIfRCount>0</BreakIfRCount>
|
||||||
<Filename>../Core/Src/main.c</Filename>
|
<Filename>../Core/Src/main.c</Filename>
|
||||||
<ExecCommand />
|
<ExecCommand></ExecCommand>
|
||||||
<Expression />
|
<Expression></Expression>
|
||||||
</Bp>
|
</Bp>
|
||||||
<Bp>
|
<Bp>
|
||||||
<Number>1</Number>
|
<Number>1</Number>
|
||||||
|
@ -183,8 +183,8 @@
|
||||||
<BreakByAccess>0</BreakByAccess>
|
<BreakByAccess>0</BreakByAccess>
|
||||||
<BreakIfRCount>0</BreakIfRCount>
|
<BreakIfRCount>0</BreakIfRCount>
|
||||||
<Filename>..\Core\Src\motor.c</Filename>
|
<Filename>..\Core\Src\motor.c</Filename>
|
||||||
<ExecCommand />
|
<ExecCommand></ExecCommand>
|
||||||
<Expression />
|
<Expression></Expression>
|
||||||
</Bp>
|
</Bp>
|
||||||
</Breakpoint>
|
</Breakpoint>
|
||||||
<Tracepoint>
|
<Tracepoint>
|
||||||
|
@ -216,19 +216,19 @@
|
||||||
<newCpu>0</newCpu>
|
<newCpu>0</newCpu>
|
||||||
<uProt>0</uProt>
|
<uProt>0</uProt>
|
||||||
</DebugFlag>
|
</DebugFlag>
|
||||||
<LintExecutable />
|
<LintExecutable></LintExecutable>
|
||||||
<LintConfigFile />
|
<LintConfigFile></LintConfigFile>
|
||||||
<bLintAuto>0</bLintAuto>
|
<bLintAuto>0</bLintAuto>
|
||||||
<bAutoGenD>0</bAutoGenD>
|
<bAutoGenD>0</bAutoGenD>
|
||||||
<LntExFlags>0</LntExFlags>
|
<LntExFlags>0</LntExFlags>
|
||||||
<pMisraName />
|
<pMisraName></pMisraName>
|
||||||
<pszMrule />
|
<pszMrule></pszMrule>
|
||||||
<pSingCmds />
|
<pSingCmds></pSingCmds>
|
||||||
<pMultCmds />
|
<pMultCmds></pMultCmds>
|
||||||
<pMisraNamep />
|
<pMisraNamep></pMisraNamep>
|
||||||
<pszMrulep />
|
<pszMrulep></pszMrulep>
|
||||||
<pSingCmdsp />
|
<pSingCmdsp></pSingCmdsp>
|
||||||
<pMultCmdsp />
|
<pMultCmdsp></pMultCmdsp>
|
||||||
<DebugDescription>
|
<DebugDescription>
|
||||||
<Enable>1</Enable>
|
<Enable>1</Enable>
|
||||||
<EnableFlashSeq>0</EnableFlashSeq>
|
<EnableFlashSeq>0</EnableFlashSeq>
|
||||||
|
@ -272,8 +272,8 @@
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>..\Core\Src\led.c</PathWithFileName>
|
<PathWithFileName>..\Core\Src\bluetooth.c</PathWithFileName>
|
||||||
<FilenameWithoutPath>led.c</FilenameWithoutPath>
|
<FilenameWithoutPath>bluetooth.c</FilenameWithoutPath>
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<bShared>0</bShared>
|
<bShared>0</bShared>
|
||||||
</File>
|
</File>
|
||||||
|
@ -284,8 +284,8 @@
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>..\Core\Src\motor.c</PathWithFileName>
|
<PathWithFileName>..\Core\Src\control.c</PathWithFileName>
|
||||||
<FilenameWithoutPath>motor.c</FilenameWithoutPath>
|
<FilenameWithoutPath>control.c</FilenameWithoutPath>
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<bShared>0</bShared>
|
<bShared>0</bShared>
|
||||||
</File>
|
</File>
|
||||||
|
@ -308,6 +308,30 @@
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
|
<PathWithFileName>..\Core\Src\led.c</PathWithFileName>
|
||||||
|
<FilenameWithoutPath>led.c</FilenameWithoutPath>
|
||||||
|
<RteFlg>0</RteFlg>
|
||||||
|
<bShared>0</bShared>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<GroupNumber>2</GroupNumber>
|
||||||
|
<FileNumber>6</FileNumber>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<tvExp>0</tvExp>
|
||||||
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
<bDave2>0</bDave2>
|
||||||
|
<PathWithFileName>..\Core\Src\motor.c</PathWithFileName>
|
||||||
|
<FilenameWithoutPath>motor.c</FilenameWithoutPath>
|
||||||
|
<RteFlg>0</RteFlg>
|
||||||
|
<bShared>0</bShared>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<GroupNumber>2</GroupNumber>
|
||||||
|
<FileNumber>7</FileNumber>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<tvExp>0</tvExp>
|
||||||
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>../Core/Src/main.c</PathWithFileName>
|
<PathWithFileName>../Core/Src/main.c</PathWithFileName>
|
||||||
<FilenameWithoutPath>main.c</FilenameWithoutPath>
|
<FilenameWithoutPath>main.c</FilenameWithoutPath>
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
|
@ -315,7 +339,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>6</FileNumber>
|
<FileNumber>8</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -327,7 +351,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>7</FileNumber>
|
<FileNumber>9</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -339,7 +363,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>8</FileNumber>
|
<FileNumber>10</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -351,7 +375,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>9</FileNumber>
|
<FileNumber>11</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -363,7 +387,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>10</FileNumber>
|
<FileNumber>12</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -375,7 +399,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>11</FileNumber>
|
<FileNumber>13</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -395,7 +419,7 @@
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>12</FileNumber>
|
<FileNumber>14</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -407,7 +431,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>13</FileNumber>
|
<FileNumber>15</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -419,7 +443,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>14</FileNumber>
|
<FileNumber>16</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -431,7 +455,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>15</FileNumber>
|
<FileNumber>17</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -443,7 +467,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>16</FileNumber>
|
<FileNumber>18</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -455,7 +479,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>17</FileNumber>
|
<FileNumber>19</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -467,7 +491,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>18</FileNumber>
|
<FileNumber>20</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -479,7 +503,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>19</FileNumber>
|
<FileNumber>21</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -491,7 +515,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>20</FileNumber>
|
<FileNumber>22</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -503,7 +527,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>21</FileNumber>
|
<FileNumber>23</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -515,7 +539,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>22</FileNumber>
|
<FileNumber>24</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -527,7 +551,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>23</FileNumber>
|
<FileNumber>25</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -539,7 +563,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>24</FileNumber>
|
<FileNumber>26</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -551,7 +575,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>25</FileNumber>
|
<FileNumber>27</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -563,7 +587,7 @@
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>3</GroupNumber>
|
<GroupNumber>3</GroupNumber>
|
||||||
<FileNumber>26</FileNumber>
|
<FileNumber>28</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -583,9 +607,9 @@
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>4</GroupNumber>
|
<GroupNumber>4</GroupNumber>
|
||||||
<FileNumber>27</FileNumber>
|
<FileNumber>29</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>1</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>../Core/Src/system_stm32f1xx.c</PathWithFileName>
|
<PathWithFileName>../Core/Src/system_stm32f1xx.c</PathWithFileName>
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||||
<Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" noNamespaceSchemaLocation="project_projx.xsd">
|
<Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_projx.xsd">
|
||||||
|
|
||||||
<SchemaVersion>2.1</SchemaVersion>
|
<SchemaVersion>2.1</SchemaVersion>
|
||||||
|
|
||||||
<Header>### uVision Project, (C) Keil Software</Header>
|
<Header>### uVision Project, (C) Keil Software</Header>
|
||||||
|
|
||||||
<Targets>
|
<Targets>
|
||||||
<Target>
|
<Target>
|
||||||
<TargetName>CAR</TargetName>
|
<TargetName>CAR</TargetName>
|
||||||
|
@ -16,28 +19,28 @@
|
||||||
<PackID>Keil.STM32F1xx_DFP.2.4.1</PackID>
|
<PackID>Keil.STM32F1xx_DFP.2.4.1</PackID>
|
||||||
<PackURL>https://www.keil.com/pack/</PackURL>
|
<PackURL>https://www.keil.com/pack/</PackURL>
|
||||||
<Cpu>IRAM(0x20000000-0x20004FFF) IROM(0x8000000-0x800FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") TZ</Cpu>
|
<Cpu>IRAM(0x20000000-0x20004FFF) IROM(0x8000000-0x800FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") TZ</Cpu>
|
||||||
<FlashUtilSpec />
|
<FlashUtilSpec></FlashUtilSpec>
|
||||||
<StartupFile />
|
<StartupFile></StartupFile>
|
||||||
<FlashDriverDll />
|
<FlashDriverDll></FlashDriverDll>
|
||||||
<DeviceId>0</DeviceId>
|
<DeviceId>0</DeviceId>
|
||||||
<RegisterFile />
|
<RegisterFile></RegisterFile>
|
||||||
<MemoryEnv />
|
<MemoryEnv></MemoryEnv>
|
||||||
<Cmp />
|
<Cmp></Cmp>
|
||||||
<Asm />
|
<Asm></Asm>
|
||||||
<Linker />
|
<Linker></Linker>
|
||||||
<OHString />
|
<OHString></OHString>
|
||||||
<InfinionOptionDll />
|
<InfinionOptionDll></InfinionOptionDll>
|
||||||
<SLE66CMisc />
|
<SLE66CMisc></SLE66CMisc>
|
||||||
<SLE66AMisc />
|
<SLE66AMisc></SLE66AMisc>
|
||||||
<SLE66LinkerMisc />
|
<SLE66LinkerMisc></SLE66LinkerMisc>
|
||||||
<SFDFile>$$Device:STM32F103C8$SVD\STM32F103xx.svd</SFDFile>
|
<SFDFile>$$Device:STM32F103C8$SVD\STM32F103xx.svd</SFDFile>
|
||||||
<bCustSvd>0</bCustSvd>
|
<bCustSvd>0</bCustSvd>
|
||||||
<UseEnv>0</UseEnv>
|
<UseEnv>0</UseEnv>
|
||||||
<BinPath />
|
<BinPath></BinPath>
|
||||||
<IncludePath />
|
<IncludePath></IncludePath>
|
||||||
<LibPath />
|
<LibPath></LibPath>
|
||||||
<RegisterFilePath />
|
<RegisterFilePath></RegisterFilePath>
|
||||||
<DBRegisterFilePath />
|
<DBRegisterFilePath></DBRegisterFilePath>
|
||||||
<TargetStatus>
|
<TargetStatus>
|
||||||
<Error>0</Error>
|
<Error>0</Error>
|
||||||
<ExitCodeStop>0</ExitCodeStop>
|
<ExitCodeStop>0</ExitCodeStop>
|
||||||
|
@ -52,15 +55,15 @@
|
||||||
<CreateHexFile>1</CreateHexFile>
|
<CreateHexFile>1</CreateHexFile>
|
||||||
<DebugInformation>1</DebugInformation>
|
<DebugInformation>1</DebugInformation>
|
||||||
<BrowseInformation>1</BrowseInformation>
|
<BrowseInformation>1</BrowseInformation>
|
||||||
<ListingPath />
|
<ListingPath></ListingPath>
|
||||||
<HexFormatSelection>1</HexFormatSelection>
|
<HexFormatSelection>1</HexFormatSelection>
|
||||||
<Merge32K>0</Merge32K>
|
<Merge32K>0</Merge32K>
|
||||||
<CreateBatchFile>0</CreateBatchFile>
|
<CreateBatchFile>0</CreateBatchFile>
|
||||||
<BeforeCompile>
|
<BeforeCompile>
|
||||||
<RunUserProg1>0</RunUserProg1>
|
<RunUserProg1>0</RunUserProg1>
|
||||||
<RunUserProg2>0</RunUserProg2>
|
<RunUserProg2>0</RunUserProg2>
|
||||||
<UserProg1Name />
|
<UserProg1Name></UserProg1Name>
|
||||||
<UserProg2Name />
|
<UserProg2Name></UserProg2Name>
|
||||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||||
<nStopU1X>0</nStopU1X>
|
<nStopU1X>0</nStopU1X>
|
||||||
|
@ -69,8 +72,8 @@
|
||||||
<BeforeMake>
|
<BeforeMake>
|
||||||
<RunUserProg1>0</RunUserProg1>
|
<RunUserProg1>0</RunUserProg1>
|
||||||
<RunUserProg2>0</RunUserProg2>
|
<RunUserProg2>0</RunUserProg2>
|
||||||
<UserProg1Name />
|
<UserProg1Name></UserProg1Name>
|
||||||
<UserProg2Name />
|
<UserProg2Name></UserProg2Name>
|
||||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||||
<nStopB1X>0</nStopB1X>
|
<nStopB1X>0</nStopB1X>
|
||||||
|
@ -79,15 +82,15 @@
|
||||||
<AfterMake>
|
<AfterMake>
|
||||||
<RunUserProg1>0</RunUserProg1>
|
<RunUserProg1>0</RunUserProg1>
|
||||||
<RunUserProg2>1</RunUserProg2>
|
<RunUserProg2>1</RunUserProg2>
|
||||||
<UserProg1Name />
|
<UserProg1Name></UserProg1Name>
|
||||||
<UserProg2Name />
|
<UserProg2Name></UserProg2Name>
|
||||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||||
<nStopA1X>0</nStopA1X>
|
<nStopA1X>0</nStopA1X>
|
||||||
<nStopA2X>0</nStopA2X>
|
<nStopA2X>0</nStopA2X>
|
||||||
</AfterMake>
|
</AfterMake>
|
||||||
<SelectedForBatchBuild>1</SelectedForBatchBuild>
|
<SelectedForBatchBuild>1</SelectedForBatchBuild>
|
||||||
<SVCSIdString />
|
<SVCSIdString></SVCSIdString>
|
||||||
</TargetCommonOption>
|
</TargetCommonOption>
|
||||||
<CommonProperty>
|
<CommonProperty>
|
||||||
<UseCPPCompiler>0</UseCPPCompiler>
|
<UseCPPCompiler>0</UseCPPCompiler>
|
||||||
|
@ -101,8 +104,8 @@
|
||||||
<AssembleAssemblyFile>0</AssembleAssemblyFile>
|
<AssembleAssemblyFile>0</AssembleAssemblyFile>
|
||||||
<PublicsOnly>0</PublicsOnly>
|
<PublicsOnly>0</PublicsOnly>
|
||||||
<StopOnExitCode>3</StopOnExitCode>
|
<StopOnExitCode>3</StopOnExitCode>
|
||||||
<CustomArgument />
|
<CustomArgument></CustomArgument>
|
||||||
<IncludeLibraryModules />
|
<IncludeLibraryModules></IncludeLibraryModules>
|
||||||
<ComprImg>0</ComprImg>
|
<ComprImg>0</ComprImg>
|
||||||
</CommonProperty>
|
</CommonProperty>
|
||||||
<DllOption>
|
<DllOption>
|
||||||
|
@ -111,7 +114,7 @@
|
||||||
<SimDlgDll>DCM.DLL</SimDlgDll>
|
<SimDlgDll>DCM.DLL</SimDlgDll>
|
||||||
<SimDlgDllArguments>-pCM3</SimDlgDllArguments>
|
<SimDlgDllArguments>-pCM3</SimDlgDllArguments>
|
||||||
<TargetDllName>SARMCM3.DLL</TargetDllName>
|
<TargetDllName>SARMCM3.DLL</TargetDllName>
|
||||||
<TargetDllArguments />
|
<TargetDllArguments></TargetDllArguments>
|
||||||
<TargetDlgDll>TCM.DLL</TargetDlgDll>
|
<TargetDlgDll>TCM.DLL</TargetDlgDll>
|
||||||
<TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
|
<TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
|
||||||
</DllOption>
|
</DllOption>
|
||||||
|
@ -136,10 +139,10 @@
|
||||||
<bUseTDR>1</bUseTDR>
|
<bUseTDR>1</bUseTDR>
|
||||||
<Flash2>BIN\UL2V8M.DLL</Flash2>
|
<Flash2>BIN\UL2V8M.DLL</Flash2>
|
||||||
<Flash3>"" ()</Flash3>
|
<Flash3>"" ()</Flash3>
|
||||||
<Flash4 />
|
<Flash4></Flash4>
|
||||||
<pFcarmOut />
|
<pFcarmOut></pFcarmOut>
|
||||||
<pFcarmGrp />
|
<pFcarmGrp></pFcarmGrp>
|
||||||
<pFcArmRoot />
|
<pFcArmRoot></pFcArmRoot>
|
||||||
<FcArmLst>0</FcArmLst>
|
<FcArmLst>0</FcArmLst>
|
||||||
</Utilities>
|
</Utilities>
|
||||||
<TargetArmAds>
|
<TargetArmAds>
|
||||||
|
@ -172,7 +175,7 @@
|
||||||
<RvctClst>0</RvctClst>
|
<RvctClst>0</RvctClst>
|
||||||
<GenPPlst>0</GenPPlst>
|
<GenPPlst>0</GenPPlst>
|
||||||
<AdsCpuType>"Cortex-M3"</AdsCpuType>
|
<AdsCpuType>"Cortex-M3"</AdsCpuType>
|
||||||
<RvctDeviceName />
|
<RvctDeviceName></RvctDeviceName>
|
||||||
<mOS>0</mOS>
|
<mOS>0</mOS>
|
||||||
<uocRom>0</uocRom>
|
<uocRom>0</uocRom>
|
||||||
<uocRam>0</uocRam>
|
<uocRam>0</uocRam>
|
||||||
|
@ -306,7 +309,7 @@
|
||||||
<Size>0x0</Size>
|
<Size>0x0</Size>
|
||||||
</OCR_RVCT10>
|
</OCR_RVCT10>
|
||||||
</OnChipMemories>
|
</OnChipMemories>
|
||||||
<RvctStartVector />
|
<RvctStartVector></RvctStartVector>
|
||||||
</ArmAdsMisc>
|
</ArmAdsMisc>
|
||||||
<Cads>
|
<Cads>
|
||||||
<interw>1</interw>
|
<interw>1</interw>
|
||||||
|
@ -333,10 +336,10 @@
|
||||||
<v6WtE>0</v6WtE>
|
<v6WtE>0</v6WtE>
|
||||||
<v6Rtti>0</v6Rtti>
|
<v6Rtti>0</v6Rtti>
|
||||||
<VariousControls>
|
<VariousControls>
|
||||||
<MiscControls />
|
<MiscControls></MiscControls>
|
||||||
<Define>USE_HAL_DRIVER,STM32F103xB</Define>
|
<Define>USE_HAL_DRIVER,STM32F103xB</Define>
|
||||||
<Undefine />
|
<Undefine></Undefine>
|
||||||
<IncludePath>../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include</IncludePath>
|
<IncludePath>../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include</IncludePath>
|
||||||
</VariousControls>
|
</VariousControls>
|
||||||
</Cads>
|
</Cads>
|
||||||
<Aads>
|
<Aads>
|
||||||
|
@ -351,10 +354,10 @@
|
||||||
<useXO>0</useXO>
|
<useXO>0</useXO>
|
||||||
<ClangAsOpt>4</ClangAsOpt>
|
<ClangAsOpt>4</ClangAsOpt>
|
||||||
<VariousControls>
|
<VariousControls>
|
||||||
<MiscControls />
|
<MiscControls></MiscControls>
|
||||||
<Define />
|
<Define></Define>
|
||||||
<Undefine />
|
<Undefine></Undefine>
|
||||||
<IncludePath />
|
<IncludePath></IncludePath>
|
||||||
</VariousControls>
|
</VariousControls>
|
||||||
</Aads>
|
</Aads>
|
||||||
<LDads>
|
<LDads>
|
||||||
|
@ -364,15 +367,15 @@
|
||||||
<noStLib>0</noStLib>
|
<noStLib>0</noStLib>
|
||||||
<RepFail>1</RepFail>
|
<RepFail>1</RepFail>
|
||||||
<useFile>0</useFile>
|
<useFile>0</useFile>
|
||||||
<TextAddressRange />
|
<TextAddressRange></TextAddressRange>
|
||||||
<DataAddressRange />
|
<DataAddressRange></DataAddressRange>
|
||||||
<pXoBase />
|
<pXoBase></pXoBase>
|
||||||
<ScatterFile />
|
<ScatterFile></ScatterFile>
|
||||||
<IncludeLibs />
|
<IncludeLibs></IncludeLibs>
|
||||||
<IncludeLibsPath />
|
<IncludeLibsPath></IncludeLibsPath>
|
||||||
<Misc />
|
<Misc></Misc>
|
||||||
<LinkerInputFile />
|
<LinkerInputFile></LinkerInputFile>
|
||||||
<DisabledWarnings />
|
<DisabledWarnings></DisabledWarnings>
|
||||||
</LDads>
|
</LDads>
|
||||||
</TargetArmAds>
|
</TargetArmAds>
|
||||||
</TargetOption>
|
</TargetOption>
|
||||||
|
@ -390,6 +393,21 @@
|
||||||
<Group>
|
<Group>
|
||||||
<GroupName>Application/User/Core</GroupName>
|
<GroupName>Application/User/Core</GroupName>
|
||||||
<Files>
|
<Files>
|
||||||
|
<File>
|
||||||
|
<FileName>bluetooth.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\Core\Src\bluetooth.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>control.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\Core\Src\control.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>hcsr04.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\Core\Src\hcsr04.c</FilePath>
|
||||||
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>led.c</FileName>
|
<FileName>led.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
|
@ -400,11 +418,6 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\Core\Src\motor.c</FilePath>
|
<FilePath>..\Core\Src\motor.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
|
||||||
<FileName>hcsr04.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\Core\Src\hcsr04.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
<File>
|
||||||
<FileName>main.c</FileName>
|
<FileName>main.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
|
@ -538,25 +551,18 @@
|
||||||
</Groups>
|
</Groups>
|
||||||
</Target>
|
</Target>
|
||||||
</Targets>
|
</Targets>
|
||||||
|
|
||||||
<RTE>
|
<RTE>
|
||||||
<apis />
|
<apis/>
|
||||||
<components>
|
<components>
|
||||||
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="4.3.0" condition="CMSIS Core">
|
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="4.3.0" condition="CMSIS Core">
|
||||||
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="4.5.0" />
|
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="4.5.0"/>
|
||||||
<targetInfos>
|
<targetInfos>
|
||||||
<targetInfo name="CAR" />
|
<targetInfo name="CAR"/>
|
||||||
</targetInfos>
|
</targetInfos>
|
||||||
</component>
|
</component>
|
||||||
</components>
|
</components>
|
||||||
<files />
|
<files/>
|
||||||
</RTE>
|
</RTE>
|
||||||
<LayerInfo>
|
|
||||||
<Layers>
|
|
||||||
<Layer>
|
|
||||||
<LayName>CAR</LayName>
|
|
||||||
<LayPrjMark>1</LayPrjMark>
|
|
||||||
</Layer>
|
|
||||||
</Layers>
|
|
||||||
</LayerInfo>
|
|
||||||
</Project>
|
|
||||||
|
|
||||||
|
</Project>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user