face_recognition
This commit is contained in:
parent
6c44c742e8
commit
5bd4b4c100
Binary file not shown.
|
@ -8,9 +8,9 @@ class access_control:
|
|||
_door_state: bool = 0
|
||||
serial_adapter: serial.Serial
|
||||
def __init__(self, serial_port: str):
|
||||
self.serial_adapter = serial.Serial(serial_port,baudrate=115200)
|
||||
Thread(target=self.read_serial).start()
|
||||
Thread(target=self._process_payload).start()
|
||||
self.serial_adapter = serial.Serial(serial_port,baudrate=9600)
|
||||
#Thread(target=self.read_serial).start()
|
||||
#Thread(target=self._process_payload).start()
|
||||
def read_serial(self):
|
||||
while True:
|
||||
if self.serial_adapter.in_waiting:
|
||||
|
|
|
@ -5,6 +5,8 @@ import time
|
|||
stm32 = access_control("COM12")
|
||||
time.sleep(1)
|
||||
stm32.lock_door()
|
||||
#stm32.unlock_door()
|
||||
time.sleep(1)
|
||||
#door_state = False
|
||||
#while True:
|
||||
#print(stm32._in_payloads)
|
||||
|
|
|
@ -59,12 +59,18 @@ UART_HandleTypeDef huart2;
|
|||
|
||||
/* Definitions for mainTask */
|
||||
osThreadId_t mainTaskHandle;
|
||||
const osThreadAttr_t mainTask_attributes = { .name = "mainTask", .stack_size =
|
||||
128 * 4, .priority = (osPriority_t) osPriorityNormal, };
|
||||
const osThreadAttr_t mainTask_attributes = {
|
||||
.name = "mainTask",
|
||||
.stack_size = 128 * 4,
|
||||
.priority = (osPriority_t) osPriorityNormal,
|
||||
};
|
||||
/* Definitions for doorHandler */
|
||||
osThreadId_t doorHandlerHandle;
|
||||
const osThreadAttr_t doorHandler_attributes = { .name = "doorHandler",
|
||||
.stack_size = 128 * 4, .priority = (osPriority_t) osPriorityLow, };
|
||||
const osThreadAttr_t doorHandler_attributes = {
|
||||
.name = "doorHandler",
|
||||
.stack_size = 128 * 4,
|
||||
.priority = (osPriority_t) osPriorityLow,
|
||||
};
|
||||
/* USER CODE BEGIN PV */
|
||||
uint8_t uart_buffer[10];
|
||||
uint8_t uart_index = 0;
|
||||
|
@ -95,201 +101,207 @@ void startDoorHandleTask(void *argument);
|
|||
/* USER CODE END 0 */
|
||||
|
||||
/**
|
||||
* @brief The application entry point.
|
||||
* @retval int
|
||||
*/
|
||||
int main(void) {
|
||||
/* USER CODE BEGIN 1 */
|
||||
* @brief The application entry point.
|
||||
* @retval int
|
||||
*/
|
||||
int main(void)
|
||||
{
|
||||
/* USER CODE BEGIN 1 */
|
||||
|
||||
/* USER CODE END 1 */
|
||||
/* USER CODE END 1 */
|
||||
|
||||
/* MCU Configuration--------------------------------------------------------*/
|
||||
/* MCU Configuration--------------------------------------------------------*/
|
||||
|
||||
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
|
||||
HAL_Init();
|
||||
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
|
||||
HAL_Init();
|
||||
|
||||
/* USER CODE BEGIN Init */
|
||||
/* USER CODE BEGIN Init */
|
||||
|
||||
/* USER CODE END Init */
|
||||
/* USER CODE END Init */
|
||||
|
||||
/* Configure the system clock */
|
||||
SystemClock_Config();
|
||||
/* Configure the system clock */
|
||||
SystemClock_Config();
|
||||
|
||||
/* USER CODE BEGIN SysInit */
|
||||
/* USER CODE BEGIN SysInit */
|
||||
|
||||
/* USER CODE END SysInit */
|
||||
/* USER CODE END SysInit */
|
||||
|
||||
/* Initialize all configured peripherals */
|
||||
MX_GPIO_Init();
|
||||
MX_USART2_UART_Init();
|
||||
/* USER CODE BEGIN 2 */
|
||||
/* Initialize all configured peripherals */
|
||||
MX_GPIO_Init();
|
||||
MX_USART2_UART_Init();
|
||||
/* USER CODE BEGIN 2 */
|
||||
memset(uart_buffer, 0, 10);
|
||||
/* USER CODE END 2 */
|
||||
/* USER CODE END 2 */
|
||||
|
||||
/* Init scheduler */
|
||||
osKernelInitialize();
|
||||
/* Init scheduler */
|
||||
osKernelInitialize();
|
||||
|
||||
/* USER CODE BEGIN RTOS_MUTEX */
|
||||
/* USER CODE BEGIN RTOS_MUTEX */
|
||||
/* add mutexes, ... */
|
||||
/* USER CODE END RTOS_MUTEX */
|
||||
/* USER CODE END RTOS_MUTEX */
|
||||
|
||||
/* USER CODE BEGIN RTOS_SEMAPHORES */
|
||||
/* USER CODE BEGIN RTOS_SEMAPHORES */
|
||||
/* add semaphores, ... */
|
||||
/* USER CODE END RTOS_SEMAPHORES */
|
||||
/* USER CODE END RTOS_SEMAPHORES */
|
||||
|
||||
/* USER CODE BEGIN RTOS_TIMERS */
|
||||
/* USER CODE BEGIN RTOS_TIMERS */
|
||||
/* start timers, add new ones, ... */
|
||||
/* USER CODE END RTOS_TIMERS */
|
||||
/* USER CODE END RTOS_TIMERS */
|
||||
|
||||
/* USER CODE BEGIN RTOS_QUEUES */
|
||||
/* USER CODE BEGIN RTOS_QUEUES */
|
||||
/* add queues, ... */
|
||||
/* USER CODE END RTOS_QUEUES */
|
||||
/* USER CODE END RTOS_QUEUES */
|
||||
|
||||
/* Create the thread(s) */
|
||||
/* creation of mainTask */
|
||||
mainTaskHandle = osThreadNew(StartMainTask, NULL, &mainTask_attributes);
|
||||
/* Create the thread(s) */
|
||||
/* creation of mainTask */
|
||||
mainTaskHandle = osThreadNew(StartMainTask, NULL, &mainTask_attributes);
|
||||
|
||||
/* creation of doorHandler */
|
||||
doorHandlerHandle = osThreadNew(startDoorHandleTask, NULL,
|
||||
&doorHandler_attributes);
|
||||
/* creation of doorHandler */
|
||||
doorHandlerHandle = osThreadNew(startDoorHandleTask, NULL, &doorHandler_attributes);
|
||||
|
||||
/* USER CODE BEGIN RTOS_THREADS */
|
||||
/* USER CODE BEGIN RTOS_THREADS */
|
||||
/* add threads, ... */
|
||||
/* USER CODE END RTOS_THREADS */
|
||||
/* USER CODE END RTOS_THREADS */
|
||||
|
||||
/* USER CODE BEGIN RTOS_EVENTS */
|
||||
/* USER CODE BEGIN RTOS_EVENTS */
|
||||
/* add events, ... */
|
||||
/* USER CODE END RTOS_EVENTS */
|
||||
/* USER CODE END RTOS_EVENTS */
|
||||
|
||||
/* Start scheduler */
|
||||
osKernelStart();
|
||||
/* Start scheduler */
|
||||
osKernelStart();
|
||||
|
||||
/* We should never get here as control is now taken by the scheduler */
|
||||
/* Infinite loop */
|
||||
/* USER CODE BEGIN WHILE */
|
||||
/* We should never get here as control is now taken by the scheduler */
|
||||
/* Infinite loop */
|
||||
/* USER CODE BEGIN WHILE */
|
||||
while (1) {
|
||||
}
|
||||
/* USER CODE END WHILE */
|
||||
/* USER CODE END WHILE */
|
||||
|
||||
/* USER CODE BEGIN 3 */
|
||||
/* USER CODE BEGIN 3 */
|
||||
|
||||
/* USER CODE END 3 */
|
||||
/* USER CODE END 3 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief System Clock Configuration
|
||||
* @retval None
|
||||
*/
|
||||
void SystemClock_Config(void) {
|
||||
RCC_OscInitTypeDef RCC_OscInitStruct = { 0 };
|
||||
RCC_ClkInitTypeDef RCC_ClkInitStruct = { 0 };
|
||||
* @brief System Clock Configuration
|
||||
* @retval None
|
||||
*/
|
||||
void SystemClock_Config(void)
|
||||
{
|
||||
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
|
||||
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
|
||||
|
||||
/** Configure the main internal regulator output voltage
|
||||
*/
|
||||
__HAL_RCC_PWR_CLK_ENABLE();
|
||||
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
|
||||
/** Configure the main internal regulator output voltage
|
||||
*/
|
||||
__HAL_RCC_PWR_CLK_ENABLE();
|
||||
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
|
||||
|
||||
/** Initializes the RCC Oscillators according to the specified parameters
|
||||
* in the RCC_OscInitTypeDef structure.
|
||||
*/
|
||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
|
||||
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
|
||||
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
|
||||
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
|
||||
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
|
||||
RCC_OscInitStruct.PLL.PLLM = 16;
|
||||
RCC_OscInitStruct.PLL.PLLN = 336;
|
||||
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4;
|
||||
RCC_OscInitStruct.PLL.PLLQ = 4;
|
||||
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
/** Initializes the RCC Oscillators according to the specified parameters
|
||||
* in the RCC_OscInitTypeDef structure.
|
||||
*/
|
||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
|
||||
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
|
||||
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
|
||||
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
|
||||
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
|
||||
RCC_OscInitStruct.PLL.PLLM = 16;
|
||||
RCC_OscInitStruct.PLL.PLLN = 336;
|
||||
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4;
|
||||
RCC_OscInitStruct.PLL.PLLQ = 4;
|
||||
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
/** Initializes the CPU, AHB and APB buses clocks
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK
|
||||
| RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
|
||||
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
|
||||
/** Initializes the CPU, AHB and APB buses clocks
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
|
||||
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
|
||||
|
||||
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief USART2 Initialization Function
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
static void MX_USART2_UART_Init(void) {
|
||||
* @brief USART2 Initialization Function
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
static void MX_USART2_UART_Init(void)
|
||||
{
|
||||
|
||||
/* USER CODE BEGIN USART2_Init 0 */
|
||||
/* USER CODE BEGIN USART2_Init 0 */
|
||||
|
||||
/* USER CODE END USART2_Init 0 */
|
||||
/* USER CODE END USART2_Init 0 */
|
||||
|
||||
/* USER CODE BEGIN USART2_Init 1 */
|
||||
/* USER CODE BEGIN USART2_Init 1 */
|
||||
|
||||
/* USER CODE END USART2_Init 1 */
|
||||
huart2.Instance = USART2;
|
||||
huart2.Init.BaudRate = 115200;
|
||||
huart2.Init.WordLength = UART_WORDLENGTH_8B;
|
||||
huart2.Init.StopBits = UART_STOPBITS_1;
|
||||
huart2.Init.Parity = UART_PARITY_NONE;
|
||||
huart2.Init.Mode = UART_MODE_TX_RX;
|
||||
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
|
||||
huart2.Init.OverSampling = UART_OVERSAMPLING_16;
|
||||
if (HAL_UART_Init(&huart2) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
/* USER CODE BEGIN USART2_Init 2 */
|
||||
/* USER CODE END USART2_Init 1 */
|
||||
huart2.Instance = USART2;
|
||||
huart2.Init.BaudRate = 9600;
|
||||
huart2.Init.WordLength = UART_WORDLENGTH_8B;
|
||||
huart2.Init.StopBits = UART_STOPBITS_1;
|
||||
huart2.Init.Parity = UART_PARITY_NONE;
|
||||
huart2.Init.Mode = UART_MODE_TX_RX;
|
||||
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
|
||||
huart2.Init.OverSampling = UART_OVERSAMPLING_16;
|
||||
if (HAL_UART_Init(&huart2) != HAL_OK)
|
||||
{
|
||||
Error_Handler();
|
||||
}
|
||||
/* USER CODE BEGIN USART2_Init 2 */
|
||||
|
||||
/* USER CODE END USART2_Init 2 */
|
||||
/* USER CODE END USART2_Init 2 */
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief GPIO Initialization Function
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
static void MX_GPIO_Init(void) {
|
||||
GPIO_InitTypeDef GPIO_InitStruct = { 0 };
|
||||
/* USER CODE BEGIN MX_GPIO_Init_1 */
|
||||
/* USER CODE END MX_GPIO_Init_1 */
|
||||
* @brief GPIO Initialization Function
|
||||
* @param None
|
||||
* @retval None
|
||||
*/
|
||||
static void MX_GPIO_Init(void)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||
/* USER CODE BEGIN MX_GPIO_Init_1 */
|
||||
/* USER CODE END MX_GPIO_Init_1 */
|
||||
|
||||
/* GPIO Ports Clock Enable */
|
||||
__HAL_RCC_GPIOC_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOH_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||
/* GPIO Ports Clock Enable */
|
||||
__HAL_RCC_GPIOC_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOH_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||
|
||||
/*Configure GPIO pin Output Level */
|
||||
HAL_GPIO_WritePin(GPIOA, LD2_Pin | Door_Lock_Pin, GPIO_PIN_RESET);
|
||||
/*Configure GPIO pin Output Level */
|
||||
HAL_GPIO_WritePin(GPIOA, LD2_Pin|Door_Lock_Pin, GPIO_PIN_RESET);
|
||||
|
||||
/*Configure GPIO pin : B1_Pin */
|
||||
GPIO_InitStruct.Pin = B1_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
HAL_GPIO_Init(B1_GPIO_Port, &GPIO_InitStruct);
|
||||
/*Configure GPIO pin : B1_Pin */
|
||||
GPIO_InitStruct.Pin = B1_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
HAL_GPIO_Init(B1_GPIO_Port, &GPIO_InitStruct);
|
||||
|
||||
/*Configure GPIO pins : LD2_Pin Door_Lock_Pin */
|
||||
GPIO_InitStruct.Pin = LD2_Pin | Door_Lock_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||
/*Configure GPIO pins : LD2_Pin Door_Lock_Pin */
|
||||
GPIO_InitStruct.Pin = LD2_Pin|Door_Lock_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
|
||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
|
||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||
|
||||
/*Configure GPIO pin : Door_Sensor_Pin */
|
||||
GPIO_InitStruct.Pin = Door_Sensor_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
|
||||
GPIO_InitStruct.Pull = GPIO_PULLUP;
|
||||
HAL_GPIO_Init(Door_Sensor_GPIO_Port, &GPIO_InitStruct);
|
||||
/*Configure GPIO pin : Door_Sensor_Pin */
|
||||
GPIO_InitStruct.Pin = Door_Sensor_Pin;
|
||||
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
|
||||
GPIO_InitStruct.Pull = GPIO_PULLUP;
|
||||
HAL_GPIO_Init(Door_Sensor_GPIO_Port, &GPIO_InitStruct);
|
||||
|
||||
/* USER CODE BEGIN MX_GPIO_Init_2 */
|
||||
/* USER CODE END MX_GPIO_Init_2 */
|
||||
/* USER CODE BEGIN MX_GPIO_Init_2 */
|
||||
/* USER CODE END MX_GPIO_Init_2 */
|
||||
}
|
||||
|
||||
/* USER CODE BEGIN 4 */
|
||||
|
@ -303,8 +315,9 @@ static void MX_GPIO_Init(void) {
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_StartMainTask */
|
||||
void StartMainTask(void *argument) {
|
||||
/* USER CODE BEGIN 5 */
|
||||
void StartMainTask(void *argument)
|
||||
{
|
||||
/* USER CODE BEGIN 5 */
|
||||
memset(uart_buffer, 0, 10);
|
||||
/* USER CODE END 2 */
|
||||
|
||||
|
@ -312,7 +325,7 @@ void StartMainTask(void *argument) {
|
|||
/* USER CODE BEGIN WHILE */
|
||||
while (1) {
|
||||
|
||||
if (HAL_UART_Receive(&huart2, uart_buffer + uart_index, 1, 250)
|
||||
if (HAL_UART_Receive(&huart2, uart_buffer + uart_index, 1, 1000)
|
||||
== HAL_OK) {
|
||||
uart_index++;
|
||||
if (uart_buffer[uart_index - 1] == 0xFF) {
|
||||
|
@ -333,11 +346,14 @@ void StartMainTask(void *argument) {
|
|||
}
|
||||
uart_index = 0;
|
||||
memset(uart_buffer, 0, 10);
|
||||
} else if (uart_index > sizeof(uart_buffer)-1) {
|
||||
memset(uart_buffer, 0, 10);
|
||||
uart_index=0;
|
||||
}
|
||||
}
|
||||
vTaskDelay(1);
|
||||
}
|
||||
/* USER CODE END 5 */
|
||||
/* USER CODE END 5 */
|
||||
}
|
||||
|
||||
/* USER CODE BEGIN Header_startDoorHandleTask */
|
||||
|
@ -347,8 +363,9 @@ void StartMainTask(void *argument) {
|
|||
* @retval None
|
||||
*/
|
||||
/* USER CODE END Header_startDoorHandleTask */
|
||||
void startDoorHandleTask(void *argument) {
|
||||
/* USER CODE BEGIN startDoorHandleTask */
|
||||
void startDoorHandleTask(void *argument)
|
||||
{
|
||||
/* USER CODE BEGIN startDoorHandleTask */
|
||||
/* Infinite loop */
|
||||
for (;;) {
|
||||
door_state = HAL_GPIO_ReadPin(DOOR_SENSOR_BANK, DOOR_SENSOR_PIN);
|
||||
|
@ -384,40 +401,42 @@ void startDoorHandleTask(void *argument) {
|
|||
vTaskDelay(100);
|
||||
|
||||
}
|
||||
/* USER CODE END startDoorHandleTask */
|
||||
/* USER CODE END startDoorHandleTask */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Period elapsed callback in non blocking mode
|
||||
* @note This function is called when TIM1 interrupt took place, inside
|
||||
* HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment
|
||||
* a global variable "uwTick" used as application time base.
|
||||
* @param htim : TIM handle
|
||||
* @retval None
|
||||
*/
|
||||
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {
|
||||
/* USER CODE BEGIN Callback 0 */
|
||||
* @brief Period elapsed callback in non blocking mode
|
||||
* @note This function is called when TIM1 interrupt took place, inside
|
||||
* HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment
|
||||
* a global variable "uwTick" used as application time base.
|
||||
* @param htim : TIM handle
|
||||
* @retval None
|
||||
*/
|
||||
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
||||
{
|
||||
/* USER CODE BEGIN Callback 0 */
|
||||
|
||||
/* USER CODE END Callback 0 */
|
||||
if (htim->Instance == TIM1) {
|
||||
HAL_IncTick();
|
||||
}
|
||||
/* USER CODE BEGIN Callback 1 */
|
||||
/* USER CODE END Callback 0 */
|
||||
if (htim->Instance == TIM1) {
|
||||
HAL_IncTick();
|
||||
}
|
||||
/* USER CODE BEGIN Callback 1 */
|
||||
|
||||
/* USER CODE END Callback 1 */
|
||||
/* USER CODE END Callback 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief This function is executed in case of error occurrence.
|
||||
* @retval None
|
||||
*/
|
||||
void Error_Handler(void) {
|
||||
/* USER CODE BEGIN Error_Handler_Debug */
|
||||
* @brief This function is executed in case of error occurrence.
|
||||
* @retval None
|
||||
*/
|
||||
void Error_Handler(void)
|
||||
{
|
||||
/* USER CODE BEGIN Error_Handler_Debug */
|
||||
/* User can add his own implementation to report the HAL error return state */
|
||||
__disable_irq();
|
||||
while (1) {
|
||||
}
|
||||
/* USER CODE END Error_Handler_Debug */
|
||||
/* USER CODE END Error_Handler_Debug */
|
||||
}
|
||||
|
||||
#ifdef USE_FULL_ASSERT
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
../Core/Src/main.c:101:5:main 1
|
||||
../Core/Src/main.c:183:6:SystemClock_Config 3
|
||||
../Core/Src/main.c:227:13:MX_USART2_UART_Init 2
|
||||
../Core/Src/main.c:258:13:MX_GPIO_Init 1
|
||||
../Core/Src/main.c:306:6:StartMainTask 7
|
||||
../Core/Src/main.c:350:6:startDoorHandleTask 8
|
||||
../Core/Src/main.c:398:6:HAL_TIM_PeriodElapsedCallback 2
|
||||
../Core/Src/main.c:414:6:Error_Handler 1
|
||||
../Core/Src/main.c:107:5:main 1
|
||||
../Core/Src/main.c:189:6:SystemClock_Config 3
|
||||
../Core/Src/main.c:236:13:MX_USART2_UART_Init 2
|
||||
../Core/Src/main.c:269:13:MX_GPIO_Init 1
|
||||
../Core/Src/main.c:318:6:StartMainTask 8
|
||||
../Core/Src/main.c:366:6:startDoorHandleTask 8
|
||||
../Core/Src/main.c:415:6:HAL_TIM_PeriodElapsedCallback 2
|
||||
../Core/Src/main.c:432:6:Error_Handler 1
|
||||
|
|
Binary file not shown.
|
@ -1,8 +1,8 @@
|
|||
../Core/Src/main.c:101:5:main 8 static
|
||||
../Core/Src/main.c:183:6:SystemClock_Config 88 static
|
||||
../Core/Src/main.c:227:13:MX_USART2_UART_Init 8 static
|
||||
../Core/Src/main.c:258:13:MX_GPIO_Init 48 static
|
||||
../Core/Src/main.c:306:6:StartMainTask 24 static
|
||||
../Core/Src/main.c:350:6:startDoorHandleTask 16 static
|
||||
../Core/Src/main.c:398:6:HAL_TIM_PeriodElapsedCallback 16 static
|
||||
../Core/Src/main.c:414:6:Error_Handler 4 static,ignoring_inline_asm
|
||||
../Core/Src/main.c:107:5:main 8 static
|
||||
../Core/Src/main.c:189:6:SystemClock_Config 88 static
|
||||
../Core/Src/main.c:236:13:MX_USART2_UART_Init 8 static
|
||||
../Core/Src/main.c:269:13:MX_GPIO_Init 48 static
|
||||
../Core/Src/main.c:318:6:StartMainTask 24 static
|
||||
../Core/Src/main.c:366:6:startDoorHandleTask 16 static
|
||||
../Core/Src/main.c:415:6:HAL_TIM_PeriodElapsedCallback 16 static
|
||||
../Core/Src/main.c:432:6:Error_Handler 4 static,ignoring_inline_asm
|
||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -4531,7 +4531,7 @@ LOAD C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.ext
|
|||
0x0000000008000000 g_pfnVectors
|
||||
0x0000000008000198 . = ALIGN (0x4)
|
||||
|
||||
.text 0x00000000080001a0 0x5488
|
||||
.text 0x00000000080001a0 0x54a8
|
||||
0x00000000080001a0 . = ALIGN (0x4)
|
||||
*(.text)
|
||||
.text 0x00000000080001a0 0x40 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
|
@ -4553,545 +4553,546 @@ LOAD C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.ext
|
|||
.text.MX_GPIO_Init
|
||||
0x0000000008000668 0xf8 ./Core/Src/main.o
|
||||
.text.StartMainTask
|
||||
0x0000000008000760 0xd8 ./Core/Src/main.o
|
||||
0x0000000008000760 0xf4 ./Core/Src/main.o
|
||||
0x0000000008000760 StartMainTask
|
||||
.text.startDoorHandleTask
|
||||
0x0000000008000838 0x100 ./Core/Src/main.o
|
||||
0x0000000008000838 startDoorHandleTask
|
||||
0x0000000008000854 0x100 ./Core/Src/main.o
|
||||
0x0000000008000854 startDoorHandleTask
|
||||
.text.HAL_TIM_PeriodElapsedCallback
|
||||
0x0000000008000938 0x24 ./Core/Src/main.o
|
||||
0x0000000008000938 HAL_TIM_PeriodElapsedCallback
|
||||
0x0000000008000954 0x24 ./Core/Src/main.o
|
||||
0x0000000008000954 HAL_TIM_PeriodElapsedCallback
|
||||
.text.Error_Handler
|
||||
0x000000000800095c 0xa ./Core/Src/main.o
|
||||
0x000000000800095c Error_Handler
|
||||
*fill* 0x0000000008000966 0x2
|
||||
0x0000000008000978 0xa ./Core/Src/main.o
|
||||
0x0000000008000978 Error_Handler
|
||||
*fill* 0x0000000008000982 0x2
|
||||
.text.HAL_MspInit
|
||||
0x0000000008000968 0x58 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
0x0000000008000968 HAL_MspInit
|
||||
0x0000000008000984 0x58 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
0x0000000008000984 HAL_MspInit
|
||||
.text.HAL_UART_MspInit
|
||||
0x00000000080009c0 0x90 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
0x00000000080009c0 HAL_UART_MspInit
|
||||
0x00000000080009dc 0x90 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
0x00000000080009dc HAL_UART_MspInit
|
||||
.text.HAL_InitTick
|
||||
0x0000000008000a50 0xe4 ./Core/Src/stm32f4xx_hal_timebase_tim.o
|
||||
0x0000000008000a50 HAL_InitTick
|
||||
0x0000000008000a6c 0xe4 ./Core/Src/stm32f4xx_hal_timebase_tim.o
|
||||
0x0000000008000a6c HAL_InitTick
|
||||
.text.NMI_Handler
|
||||
0x0000000008000b34 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b34 NMI_Handler
|
||||
0x0000000008000b50 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b50 NMI_Handler
|
||||
.text.HardFault_Handler
|
||||
0x0000000008000b3a 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b3a HardFault_Handler
|
||||
0x0000000008000b56 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b56 HardFault_Handler
|
||||
.text.MemManage_Handler
|
||||
0x0000000008000b40 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b40 MemManage_Handler
|
||||
0x0000000008000b5c 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b5c MemManage_Handler
|
||||
.text.BusFault_Handler
|
||||
0x0000000008000b46 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b46 BusFault_Handler
|
||||
0x0000000008000b62 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b62 BusFault_Handler
|
||||
.text.UsageFault_Handler
|
||||
0x0000000008000b4c 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b4c UsageFault_Handler
|
||||
0x0000000008000b68 0x6 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b68 UsageFault_Handler
|
||||
.text.DebugMon_Handler
|
||||
0x0000000008000b52 0xe ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b52 DebugMon_Handler
|
||||
0x0000000008000b6e 0xe ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b6e DebugMon_Handler
|
||||
.text.TIM1_UP_TIM10_IRQHandler
|
||||
0x0000000008000b60 0x14 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b60 TIM1_UP_TIM10_IRQHandler
|
||||
0x0000000008000b7c 0x14 ./Core/Src/stm32f4xx_it.o
|
||||
0x0000000008000b7c TIM1_UP_TIM10_IRQHandler
|
||||
.text.SystemInit
|
||||
0x0000000008000b74 0x24 ./Core/Src/system_stm32f4xx.o
|
||||
0x0000000008000b74 SystemInit
|
||||
0x0000000008000b90 0x24 ./Core/Src/system_stm32f4xx.o
|
||||
0x0000000008000b90 SystemInit
|
||||
.text.Reset_Handler
|
||||
0x0000000008000b98 0x50 ./Core/Startup/startup_stm32f411retx.o
|
||||
0x0000000008000b98 Reset_Handler
|
||||
0x0000000008000bb4 0x50 ./Core/Startup/startup_stm32f411retx.o
|
||||
0x0000000008000bb4 Reset_Handler
|
||||
.text.Default_Handler
|
||||
0x0000000008000be8 0x2 ./Core/Startup/startup_stm32f411retx.o
|
||||
0x0000000008000be8 RTC_Alarm_IRQHandler
|
||||
0x0000000008000be8 EXTI2_IRQHandler
|
||||
0x0000000008000be8 SPI4_IRQHandler
|
||||
0x0000000008000be8 TIM1_CC_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream5_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream5_IRQHandler
|
||||
0x0000000008000be8 PVD_IRQHandler
|
||||
0x0000000008000be8 SDIO_IRQHandler
|
||||
0x0000000008000be8 TAMP_STAMP_IRQHandler
|
||||
0x0000000008000be8 EXTI3_IRQHandler
|
||||
0x0000000008000be8 I2C3_ER_IRQHandler
|
||||
0x0000000008000be8 EXTI0_IRQHandler
|
||||
0x0000000008000be8 I2C2_EV_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream2_IRQHandler
|
||||
0x0000000008000be8 FPU_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream2_IRQHandler
|
||||
0x0000000008000be8 SPI1_IRQHandler
|
||||
0x0000000008000be8 TIM1_BRK_TIM9_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream3_IRQHandler
|
||||
0x0000000008000be8 USART6_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream0_IRQHandler
|
||||
0x0000000008000be8 TIM4_IRQHandler
|
||||
0x0000000008000be8 I2C1_EV_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream6_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream1_IRQHandler
|
||||
0x0000000008000be8 TIM3_IRQHandler
|
||||
0x0000000008000be8 RCC_IRQHandler
|
||||
0x0000000008000be8 Default_Handler
|
||||
0x0000000008000be8 EXTI15_10_IRQHandler
|
||||
0x0000000008000be8 ADC_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream7_IRQHandler
|
||||
0x0000000008000be8 SPI5_IRQHandler
|
||||
0x0000000008000be8 TIM5_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream7_IRQHandler
|
||||
0x0000000008000be8 I2C3_EV_IRQHandler
|
||||
0x0000000008000be8 EXTI9_5_IRQHandler
|
||||
0x0000000008000be8 RTC_WKUP_IRQHandler
|
||||
0x0000000008000be8 SPI2_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream0_IRQHandler
|
||||
0x0000000008000be8 EXTI4_IRQHandler
|
||||
0x0000000008000be8 WWDG_IRQHandler
|
||||
0x0000000008000be8 TIM2_IRQHandler
|
||||
0x0000000008000be8 OTG_FS_WKUP_IRQHandler
|
||||
0x0000000008000be8 TIM1_TRG_COM_TIM11_IRQHandler
|
||||
0x0000000008000be8 EXTI1_IRQHandler
|
||||
0x0000000008000be8 USART2_IRQHandler
|
||||
0x0000000008000be8 I2C2_ER_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream1_IRQHandler
|
||||
0x0000000008000be8 FLASH_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream4_IRQHandler
|
||||
0x0000000008000be8 USART1_IRQHandler
|
||||
0x0000000008000be8 OTG_FS_IRQHandler
|
||||
0x0000000008000be8 SPI3_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream4_IRQHandler
|
||||
0x0000000008000be8 I2C1_ER_IRQHandler
|
||||
0x0000000008000be8 DMA2_Stream6_IRQHandler
|
||||
0x0000000008000be8 DMA1_Stream3_IRQHandler
|
||||
*fill* 0x0000000008000bea 0x2
|
||||
0x0000000008000c04 0x2 ./Core/Startup/startup_stm32f411retx.o
|
||||
0x0000000008000c04 RTC_Alarm_IRQHandler
|
||||
0x0000000008000c04 EXTI2_IRQHandler
|
||||
0x0000000008000c04 SPI4_IRQHandler
|
||||
0x0000000008000c04 TIM1_CC_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream5_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream5_IRQHandler
|
||||
0x0000000008000c04 PVD_IRQHandler
|
||||
0x0000000008000c04 SDIO_IRQHandler
|
||||
0x0000000008000c04 TAMP_STAMP_IRQHandler
|
||||
0x0000000008000c04 EXTI3_IRQHandler
|
||||
0x0000000008000c04 I2C3_ER_IRQHandler
|
||||
0x0000000008000c04 EXTI0_IRQHandler
|
||||
0x0000000008000c04 I2C2_EV_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream2_IRQHandler
|
||||
0x0000000008000c04 FPU_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream2_IRQHandler
|
||||
0x0000000008000c04 SPI1_IRQHandler
|
||||
0x0000000008000c04 TIM1_BRK_TIM9_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream3_IRQHandler
|
||||
0x0000000008000c04 USART6_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream0_IRQHandler
|
||||
0x0000000008000c04 TIM4_IRQHandler
|
||||
0x0000000008000c04 I2C1_EV_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream6_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream1_IRQHandler
|
||||
0x0000000008000c04 TIM3_IRQHandler
|
||||
0x0000000008000c04 RCC_IRQHandler
|
||||
0x0000000008000c04 Default_Handler
|
||||
0x0000000008000c04 EXTI15_10_IRQHandler
|
||||
0x0000000008000c04 ADC_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream7_IRQHandler
|
||||
0x0000000008000c04 SPI5_IRQHandler
|
||||
0x0000000008000c04 TIM5_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream7_IRQHandler
|
||||
0x0000000008000c04 I2C3_EV_IRQHandler
|
||||
0x0000000008000c04 EXTI9_5_IRQHandler
|
||||
0x0000000008000c04 RTC_WKUP_IRQHandler
|
||||
0x0000000008000c04 SPI2_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream0_IRQHandler
|
||||
0x0000000008000c04 EXTI4_IRQHandler
|
||||
0x0000000008000c04 WWDG_IRQHandler
|
||||
0x0000000008000c04 TIM2_IRQHandler
|
||||
0x0000000008000c04 OTG_FS_WKUP_IRQHandler
|
||||
0x0000000008000c04 TIM1_TRG_COM_TIM11_IRQHandler
|
||||
0x0000000008000c04 EXTI1_IRQHandler
|
||||
0x0000000008000c04 USART2_IRQHandler
|
||||
0x0000000008000c04 I2C2_ER_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream1_IRQHandler
|
||||
0x0000000008000c04 FLASH_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream4_IRQHandler
|
||||
0x0000000008000c04 USART1_IRQHandler
|
||||
0x0000000008000c04 OTG_FS_IRQHandler
|
||||
0x0000000008000c04 SPI3_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream4_IRQHandler
|
||||
0x0000000008000c04 I2C1_ER_IRQHandler
|
||||
0x0000000008000c04 DMA2_Stream6_IRQHandler
|
||||
0x0000000008000c04 DMA1_Stream3_IRQHandler
|
||||
*fill* 0x0000000008000c06 0x2
|
||||
.text.HAL_Init
|
||||
0x0000000008000bec 0x44 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000bec HAL_Init
|
||||
0x0000000008000c08 0x44 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000c08 HAL_Init
|
||||
.text.HAL_IncTick
|
||||
0x0000000008000c30 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000c30 HAL_IncTick
|
||||
0x0000000008000c4c 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000c4c HAL_IncTick
|
||||
.text.HAL_GetTick
|
||||
0x0000000008000c58 0x18 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000c58 HAL_GetTick
|
||||
0x0000000008000c74 0x18 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
0x0000000008000c74 HAL_GetTick
|
||||
.text.__NVIC_SetPriorityGrouping
|
||||
0x0000000008000c70 0x48 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000c8c 0x48 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.text.__NVIC_GetPriorityGrouping
|
||||
0x0000000008000cb8 0x1c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000cd4 0x1c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.text.__NVIC_EnableIRQ
|
||||
0x0000000008000cd4 0x3c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000cf0 0x3c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.text.__NVIC_SetPriority
|
||||
0x0000000008000d10 0x54 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000d2c 0x54 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.text.NVIC_EncodePriority
|
||||
0x0000000008000d64 0x66 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000d80 0x66 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.text.HAL_NVIC_SetPriorityGrouping
|
||||
0x0000000008000dca 0x16 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000dca HAL_NVIC_SetPriorityGrouping
|
||||
0x0000000008000de6 0x16 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000de6 HAL_NVIC_SetPriorityGrouping
|
||||
.text.HAL_NVIC_SetPriority
|
||||
0x0000000008000de0 0x38 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000de0 HAL_NVIC_SetPriority
|
||||
0x0000000008000dfc 0x38 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000dfc HAL_NVIC_SetPriority
|
||||
.text.HAL_NVIC_EnableIRQ
|
||||
0x0000000008000e18 0x1c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000e18 HAL_NVIC_EnableIRQ
|
||||
0x0000000008000e34 0x1c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
0x0000000008000e34 HAL_NVIC_EnableIRQ
|
||||
.text.HAL_GPIO_Init
|
||||
0x0000000008000e34 0x308 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x0000000008000e34 HAL_GPIO_Init
|
||||
0x0000000008000e50 0x308 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x0000000008000e50 HAL_GPIO_Init
|
||||
.text.HAL_GPIO_ReadPin
|
||||
0x000000000800113c 0x30 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x000000000800113c HAL_GPIO_ReadPin
|
||||
0x0000000008001158 0x30 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x0000000008001158 HAL_GPIO_ReadPin
|
||||
.text.HAL_GPIO_WritePin
|
||||
0x000000000800116c 0x32 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x000000000800116c HAL_GPIO_WritePin
|
||||
*fill* 0x000000000800119e 0x2
|
||||
0x0000000008001188 0x32 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
0x0000000008001188 HAL_GPIO_WritePin
|
||||
*fill* 0x00000000080011ba 0x2
|
||||
.text.HAL_RCC_OscConfig
|
||||
0x00000000080011a0 0x4f0 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x00000000080011a0 HAL_RCC_OscConfig
|
||||
0x00000000080011bc 0x4f0 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x00000000080011bc HAL_RCC_OscConfig
|
||||
.text.HAL_RCC_ClockConfig
|
||||
0x0000000008001690 0x1cc ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001690 HAL_RCC_ClockConfig
|
||||
0x00000000080016ac 0x1cc ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x00000000080016ac HAL_RCC_ClockConfig
|
||||
.text.HAL_RCC_GetSysClockFreq
|
||||
0x000000000800185c 0x20c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x000000000800185c HAL_RCC_GetSysClockFreq
|
||||
0x0000000008001878 0x20c ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001878 HAL_RCC_GetSysClockFreq
|
||||
.text.HAL_RCC_GetHCLKFreq
|
||||
0x0000000008001a68 0x18 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001a68 HAL_RCC_GetHCLKFreq
|
||||
0x0000000008001a84 0x18 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001a84 HAL_RCC_GetHCLKFreq
|
||||
.text.HAL_RCC_GetPCLK1Freq
|
||||
0x0000000008001a80 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001a80 HAL_RCC_GetPCLK1Freq
|
||||
0x0000000008001a9c 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001a9c HAL_RCC_GetPCLK1Freq
|
||||
.text.HAL_RCC_GetPCLK2Freq
|
||||
0x0000000008001aa8 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001aa8 HAL_RCC_GetPCLK2Freq
|
||||
0x0000000008001ac4 0x28 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001ac4 HAL_RCC_GetPCLK2Freq
|
||||
.text.HAL_RCC_GetClockConfig
|
||||
0x0000000008001ad0 0x64 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001ad0 HAL_RCC_GetClockConfig
|
||||
0x0000000008001aec 0x64 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
0x0000000008001aec HAL_RCC_GetClockConfig
|
||||
.text.HAL_TIM_Base_Init
|
||||
0x0000000008001b34 0x9e ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001b34 HAL_TIM_Base_Init
|
||||
0x0000000008001b50 0x9e ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001b50 HAL_TIM_Base_Init
|
||||
.text.HAL_TIM_Base_MspInit
|
||||
0x0000000008001bd2 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001bd2 HAL_TIM_Base_MspInit
|
||||
*fill* 0x0000000008001be6 0x2
|
||||
0x0000000008001bee 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001bee HAL_TIM_Base_MspInit
|
||||
*fill* 0x0000000008001c02 0x2
|
||||
.text.HAL_TIM_Base_Start_IT
|
||||
0x0000000008001be8 0xc4 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001be8 HAL_TIM_Base_Start_IT
|
||||
0x0000000008001c04 0xc4 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001c04 HAL_TIM_Base_Start_IT
|
||||
.text.HAL_TIM_IRQHandler
|
||||
0x0000000008001cac 0x210 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001cac HAL_TIM_IRQHandler
|
||||
0x0000000008001cc8 0x210 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001cc8 HAL_TIM_IRQHandler
|
||||
.text.HAL_TIM_OC_DelayElapsedCallback
|
||||
0x0000000008001ebc 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001ebc HAL_TIM_OC_DelayElapsedCallback
|
||||
0x0000000008001ed8 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001ed8 HAL_TIM_OC_DelayElapsedCallback
|
||||
.text.HAL_TIM_IC_CaptureCallback
|
||||
0x0000000008001ed0 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001ed0 HAL_TIM_IC_CaptureCallback
|
||||
0x0000000008001eec 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001eec HAL_TIM_IC_CaptureCallback
|
||||
.text.HAL_TIM_PWM_PulseFinishedCallback
|
||||
0x0000000008001ee4 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001ee4 HAL_TIM_PWM_PulseFinishedCallback
|
||||
0x0000000008001f00 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001f00 HAL_TIM_PWM_PulseFinishedCallback
|
||||
.text.HAL_TIM_TriggerCallback
|
||||
0x0000000008001ef8 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001ef8 HAL_TIM_TriggerCallback
|
||||
0x0000000008001f14 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001f14 HAL_TIM_TriggerCallback
|
||||
.text.TIM_Base_SetConfig
|
||||
0x0000000008001f0c 0x100 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001f0c TIM_Base_SetConfig
|
||||
0x0000000008001f28 0x100 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
0x0000000008001f28 TIM_Base_SetConfig
|
||||
.text.HAL_TIMEx_CommutCallback
|
||||
0x000000000800200c 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
0x000000000800200c HAL_TIMEx_CommutCallback
|
||||
0x0000000008002028 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
0x0000000008002028 HAL_TIMEx_CommutCallback
|
||||
.text.HAL_TIMEx_BreakCallback
|
||||
0x0000000008002020 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
0x0000000008002020 HAL_TIMEx_BreakCallback
|
||||
0x000000000800203c 0x14 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
0x000000000800203c HAL_TIMEx_BreakCallback
|
||||
.text.HAL_UART_Init
|
||||
0x0000000008002034 0x9a ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x0000000008002034 HAL_UART_Init
|
||||
0x0000000008002050 0x9a ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x0000000008002050 HAL_UART_Init
|
||||
.text.HAL_UART_Transmit
|
||||
0x00000000080020ce 0x124 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x00000000080020ce HAL_UART_Transmit
|
||||
0x00000000080020ea 0x124 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x00000000080020ea HAL_UART_Transmit
|
||||
.text.HAL_UART_Receive
|
||||
0x00000000080021f2 0x144 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x00000000080021f2 HAL_UART_Receive
|
||||
0x000000000800220e 0x144 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x000000000800220e HAL_UART_Receive
|
||||
.text.UART_WaitOnFlagUntilTimeout
|
||||
0x0000000008002336 0xdc ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
*fill* 0x0000000008002412 0x2
|
||||
0x0000000008002352 0xdc ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
*fill* 0x000000000800242e 0x2
|
||||
.text.UART_SetConfig
|
||||
0x0000000008002414 0x4e8 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
0x0000000008002430 0x4e8 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
.text.__NVIC_SetPriority
|
||||
0x00000000080028fc 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002918 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
.text.SysTick_Handler
|
||||
0x0000000008002950 0x20 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002950 SysTick_Handler
|
||||
0x000000000800296c 0x20 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x000000000800296c SysTick_Handler
|
||||
.text.SVC_Setup
|
||||
0x0000000008002970 0x12 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
*fill* 0x0000000008002982 0x2
|
||||
0x000000000800298c 0x12 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
*fill* 0x000000000800299e 0x2
|
||||
.text.osKernelInitialize
|
||||
0x0000000008002984 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002984 osKernelInitialize
|
||||
0x00000000080029a0 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x00000000080029a0 osKernelInitialize
|
||||
.text.osKernelStart
|
||||
0x00000000080029cc 0x4c ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x00000000080029cc osKernelStart
|
||||
0x00000000080029e8 0x4c ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x00000000080029e8 osKernelStart
|
||||
.text.osThreadNew
|
||||
0x0000000008002a18 0x124 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002a18 osThreadNew
|
||||
0x0000000008002a34 0x124 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002a34 osThreadNew
|
||||
.text.vApplicationGetIdleTaskMemory
|
||||
0x0000000008002b3c 0x34 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002b3c vApplicationGetIdleTaskMemory
|
||||
0x0000000008002b58 0x34 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002b58 vApplicationGetIdleTaskMemory
|
||||
.text.vApplicationGetTimerTaskMemory
|
||||
0x0000000008002b70 0x34 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002b70 vApplicationGetTimerTaskMemory
|
||||
0x0000000008002b8c 0x34 ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
0x0000000008002b8c vApplicationGetTimerTaskMemory
|
||||
.text.vListInitialise
|
||||
0x0000000008002ba4 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002ba4 vListInitialise
|
||||
0x0000000008002bc0 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002bc0 vListInitialise
|
||||
.text.vListInitialiseItem
|
||||
0x0000000008002be4 0x1a ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002be4 vListInitialiseItem
|
||||
0x0000000008002c00 0x1a ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002c00 vListInitialiseItem
|
||||
.text.vListInsertEnd
|
||||
0x0000000008002bfe 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002bfe vListInsertEnd
|
||||
0x0000000008002c1a 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002c1a vListInsertEnd
|
||||
.text.vListInsert
|
||||
0x0000000008002c46 0x72 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002c46 vListInsert
|
||||
0x0000000008002c62 0x72 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002c62 vListInsert
|
||||
.text.uxListRemove
|
||||
0x0000000008002cb8 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002cb8 uxListRemove
|
||||
0x0000000008002cd4 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
0x0000000008002cd4 uxListRemove
|
||||
.text.xQueueGenericReset
|
||||
0x0000000008002d0c 0xd0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002d0c xQueueGenericReset
|
||||
0x0000000008002d28 0xd0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002d28 xQueueGenericReset
|
||||
.text.xQueueGenericCreateStatic
|
||||
0x0000000008002ddc 0xf0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002ddc xQueueGenericCreateStatic
|
||||
0x0000000008002df8 0xf0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002df8 xQueueGenericCreateStatic
|
||||
.text.prvInitialiseNewQueue
|
||||
0x0000000008002ecc 0x46 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
*fill* 0x0000000008002f12 0x2
|
||||
0x0000000008002ee8 0x46 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
*fill* 0x0000000008002f2e 0x2
|
||||
.text.xQueueGenericSend
|
||||
0x0000000008002f14 0x1fc ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002f14 xQueueGenericSend
|
||||
0x0000000008002f30 0x1fc ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008002f30 xQueueGenericSend
|
||||
.text.xQueueGenericSendFromISR
|
||||
0x0000000008003110 0x136 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003110 xQueueGenericSendFromISR
|
||||
*fill* 0x0000000008003246 0x2
|
||||
0x000000000800312c 0x136 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x000000000800312c xQueueGenericSendFromISR
|
||||
*fill* 0x0000000008003262 0x2
|
||||
.text.xQueueReceive
|
||||
0x0000000008003248 0x1c0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003248 xQueueReceive
|
||||
0x0000000008003264 0x1c0 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003264 xQueueReceive
|
||||
.text.prvCopyDataToQueue
|
||||
0x0000000008003408 0xd4 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003424 0xd4 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.text.prvCopyDataFromQueue
|
||||
0x00000000080034dc 0x4c ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x00000000080034f8 0x4c ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.text.prvUnlockQueue
|
||||
0x0000000008003528 0xa4 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003544 0xa4 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.text.prvIsQueueEmpty
|
||||
0x00000000080035cc 0x2c ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x00000000080035e8 0x2c ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.text.prvIsQueueFull
|
||||
0x00000000080035f8 0x30 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003614 0x30 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.text.vQueueAddToRegistry
|
||||
0x0000000008003628 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003628 vQueueAddToRegistry
|
||||
0x0000000008003644 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003644 vQueueAddToRegistry
|
||||
.text.vQueueWaitForMessageRestricted
|
||||
0x000000000800367c 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x000000000800367c vQueueWaitForMessageRestricted
|
||||
0x0000000008003698 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
0x0000000008003698 vQueueWaitForMessageRestricted
|
||||
.text.xTaskCreateStatic
|
||||
0x00000000080036e4 0xba ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080036e4 xTaskCreateStatic
|
||||
0x0000000008003700 0xba ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003700 xTaskCreateStatic
|
||||
.text.xTaskCreate
|
||||
0x000000000800379e 0x8a ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x000000000800379e xTaskCreate
|
||||
0x00000000080037ba 0x8a ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080037ba xTaskCreate
|
||||
.text.prvInitialiseNewTask
|
||||
0x0000000008003828 0x14c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003844 0x14c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.prvAddNewTaskToReadyList
|
||||
0x0000000008003974 0xe0 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003990 0xe0 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.vTaskDelay
|
||||
0x0000000008003a54 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003a54 vTaskDelay
|
||||
0x0000000008003a70 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003a70 vTaskDelay
|
||||
.text.vTaskStartScheduler
|
||||
0x0000000008003abc 0xe0 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003abc vTaskStartScheduler
|
||||
0x0000000008003ad8 0xe0 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003ad8 vTaskStartScheduler
|
||||
.text.vTaskSuspendAll
|
||||
0x0000000008003b9c 0x1c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003b9c vTaskSuspendAll
|
||||
0x0000000008003bb8 0x1c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003bb8 vTaskSuspendAll
|
||||
.text.xTaskResumeAll
|
||||
0x0000000008003bb8 0x13c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003bb8 xTaskResumeAll
|
||||
0x0000000008003bd4 0x13c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003bd4 xTaskResumeAll
|
||||
.text.xTaskGetTickCount
|
||||
0x0000000008003cf4 0x20 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003cf4 xTaskGetTickCount
|
||||
0x0000000008003d10 0x20 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003d10 xTaskGetTickCount
|
||||
.text.xTaskIncrementTick
|
||||
0x0000000008003d14 0x174 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003d14 xTaskIncrementTick
|
||||
0x0000000008003d30 0x174 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003d30 xTaskIncrementTick
|
||||
.text.vTaskSwitchContext
|
||||
0x0000000008003e88 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003e88 vTaskSwitchContext
|
||||
0x0000000008003ea4 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003ea4 vTaskSwitchContext
|
||||
.text.vTaskPlaceOnEventList
|
||||
0x0000000008003f50 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003f50 vTaskPlaceOnEventList
|
||||
0x0000000008003f6c 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003f6c vTaskPlaceOnEventList
|
||||
.text.vTaskPlaceOnEventListRestricted
|
||||
0x0000000008003f98 0x58 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003f98 vTaskPlaceOnEventListRestricted
|
||||
0x0000000008003fb4 0x58 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003fb4 vTaskPlaceOnEventListRestricted
|
||||
.text.xTaskRemoveFromEventList
|
||||
0x0000000008003ff0 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008003ff0 xTaskRemoveFromEventList
|
||||
0x000000000800400c 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x000000000800400c xTaskRemoveFromEventList
|
||||
.text.vTaskInternalSetTimeOutState
|
||||
0x00000000080040b8 0x2c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080040b8 vTaskInternalSetTimeOutState
|
||||
0x00000000080040d4 0x2c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080040d4 vTaskInternalSetTimeOutState
|
||||
.text.xTaskCheckForTimeOut
|
||||
0x00000000080040e4 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080040e4 xTaskCheckForTimeOut
|
||||
0x0000000008004100 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008004100 xTaskCheckForTimeOut
|
||||
.text.vTaskMissedYield
|
||||
0x00000000080041a8 0x18 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080041a8 vTaskMissedYield
|
||||
0x00000000080041c4 0x18 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080041c4 vTaskMissedYield
|
||||
.text.prvIdleTask
|
||||
0x00000000080041c0 0x30 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080041dc 0x30 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.prvInitialiseTaskLists
|
||||
0x00000000080041f0 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x000000000800420c 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.prvCheckTasksWaitingTermination
|
||||
0x0000000008004270 0x5c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x000000000800428c 0x5c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.prvDeleteTCB
|
||||
0x00000000080042cc 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080042e8 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.prvResetNextTaskUnblockTime
|
||||
0x0000000008004334 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008004350 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.xTaskGetSchedulerState
|
||||
0x0000000008004374 0x3c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008004374 xTaskGetSchedulerState
|
||||
0x0000000008004390 0x3c ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x0000000008004390 xTaskGetSchedulerState
|
||||
.text.xTaskPriorityDisinherit
|
||||
0x00000000080043b0 0xdc ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080043b0 xTaskPriorityDisinherit
|
||||
0x00000000080043cc 0xdc ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080043cc xTaskPriorityDisinherit
|
||||
.text.prvAddCurrentTaskToDelayedList
|
||||
0x000000000800448c 0xa8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
0x00000000080044a8 0xa8 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.text.xTimerCreateTimerTask
|
||||
0x0000000008004534 0x90 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004534 xTimerCreateTimerTask
|
||||
0x0000000008004550 0x90 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004550 xTimerCreateTimerTask
|
||||
.text.xTimerGenericCommand
|
||||
0x00000000080045c4 0x9c ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x00000000080045c4 xTimerGenericCommand
|
||||
0x00000000080045e0 0x9c ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x00000000080045e0 xTimerGenericCommand
|
||||
.text.prvProcessExpiredTimer
|
||||
0x0000000008004660 0x98 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x000000000800467c 0x98 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvTimerTask
|
||||
0x00000000080046f8 0x24 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004714 0x24 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvProcessTimerOrBlockTask
|
||||
0x000000000800471c 0x9c ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004738 0x9c ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvGetNextExpireTime
|
||||
0x00000000080047b8 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x00000000080047d4 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvSampleTimeNow
|
||||
0x0000000008004800 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x000000000800481c 0x40 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvInsertTimerInActiveList
|
||||
0x0000000008004840 0x84 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x000000000800485c 0x84 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvProcessReceivedCommands
|
||||
0x00000000080048c4 0x1c4 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x00000000080048e0 0x1c4 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvSwitchTimerLists
|
||||
0x0000000008004a88 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004aa4 0xc8 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.prvCheckForValidListAndQueue
|
||||
0x0000000008004b50 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
0x0000000008004b6c 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.text.pxPortInitialiseStack
|
||||
0x0000000008004bd0 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004bd0 pxPortInitialiseStack
|
||||
0x0000000008004bec 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004bec pxPortInitialiseStack
|
||||
.text.prvTaskExitError
|
||||
0x0000000008004c38 0x58 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004c54 0x58 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
*fill* 0x0000000008004cac 0x4
|
||||
.text.SVC_Handler
|
||||
0x0000000008004c90 0x28 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004c90 SVC_Handler
|
||||
0x0000000008004cb0 0x28 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004cb0 SVC_Handler
|
||||
.text.prvPortStartFirstTask
|
||||
0x0000000008004cb8 0x28 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004cd8 0x28 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
.text.xPortStartScheduler
|
||||
0x0000000008004ce0 0x144 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004ce0 xPortStartScheduler
|
||||
0x0000000008004d00 0x144 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004d00 xPortStartScheduler
|
||||
.text.vPortEnterCritical
|
||||
0x0000000008004e24 0x60 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004e24 vPortEnterCritical
|
||||
0x0000000008004e44 0x60 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004e44 vPortEnterCritical
|
||||
.text.vPortExitCritical
|
||||
0x0000000008004e84 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004e84 vPortExitCritical
|
||||
*fill* 0x0000000008004ed8 0x8
|
||||
0x0000000008004ea4 0x54 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004ea4 vPortExitCritical
|
||||
*fill* 0x0000000008004ef8 0x8
|
||||
.text.PendSV_Handler
|
||||
0x0000000008004ee0 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004ee0 PendSV_Handler
|
||||
0x0000000008004f00 0x68 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004f00 PendSV_Handler
|
||||
.text.xPortSysTickHandler
|
||||
0x0000000008004f48 0x44 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004f48 xPortSysTickHandler
|
||||
0x0000000008004f68 0x44 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004f68 xPortSysTickHandler
|
||||
.text.vPortSetupTimerInterrupt
|
||||
0x0000000008004f8c 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004f8c vPortSetupTimerInterrupt
|
||||
0x0000000008004fac 0x48 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004fac vPortSetupTimerInterrupt
|
||||
.text.vPortEnableVFP
|
||||
0x0000000008004fd4 0x14 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004ff4 0x14 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
.text.vPortValidateInterruptPriority
|
||||
0x0000000008004fe8 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008004fe8 vPortValidateInterruptPriority
|
||||
0x0000000008005008 0x80 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
0x0000000008005008 vPortValidateInterruptPriority
|
||||
.text.pvPortMalloc
|
||||
0x0000000008005068 0x198 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
0x0000000008005068 pvPortMalloc
|
||||
0x0000000008005088 0x198 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
0x0000000008005088 pvPortMalloc
|
||||
.text.vPortFree
|
||||
0x0000000008005200 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
0x0000000008005200 vPortFree
|
||||
0x0000000008005220 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
0x0000000008005220 vPortFree
|
||||
.text.prvHeapInit
|
||||
0x00000000080052c4 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
0x00000000080052e4 0xc4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
.text.prvInsertBlockIntoFreeList
|
||||
0x0000000008005388 0xb4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
.text.memset 0x000000000800543c 0x10 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-memset.o)
|
||||
0x000000000800543c memset
|
||||
0x00000000080053a8 0xb4 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
.text.memset 0x000000000800545c 0x10 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-memset.o)
|
||||
0x000000000800545c memset
|
||||
.text._reclaim_reent
|
||||
0x000000000800544c 0xac C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-reent.o)
|
||||
0x000000000800544c _reclaim_reent
|
||||
0x000000000800546c 0xac C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-reent.o)
|
||||
0x000000000800546c _reclaim_reent
|
||||
.text.__libc_init_array
|
||||
0x00000000080054f8 0x48 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-init.o)
|
||||
0x00000000080054f8 __libc_init_array
|
||||
0x0000000008005518 0x48 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-init.o)
|
||||
0x0000000008005518 __libc_init_array
|
||||
.text.__retarget_lock_acquire_recursive
|
||||
0x0000000008005540 0x2 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-lock.o)
|
||||
0x0000000008005540 __retarget_lock_acquire_recursive
|
||||
0x0000000008005560 0x2 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-lock.o)
|
||||
0x0000000008005560 __retarget_lock_acquire_recursive
|
||||
.text.__retarget_lock_release_recursive
|
||||
0x0000000008005542 0x2 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-lock.o)
|
||||
0x0000000008005542 __retarget_lock_release_recursive
|
||||
.text.memcpy 0x0000000008005544 0x1c C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-memcpy-stub.o)
|
||||
0x0000000008005544 memcpy
|
||||
.text._free_r 0x0000000008005560 0x98 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-freer.o)
|
||||
0x0000000008005560 _free_r
|
||||
0x0000000008005562 0x2 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-lock.o)
|
||||
0x0000000008005562 __retarget_lock_release_recursive
|
||||
.text.memcpy 0x0000000008005564 0x1c C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-memcpy-stub.o)
|
||||
0x0000000008005564 memcpy
|
||||
.text._free_r 0x0000000008005580 0x98 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-freer.o)
|
||||
0x0000000008005580 _free_r
|
||||
.text.__malloc_lock
|
||||
0x00000000080055f8 0xc C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-mlock.o)
|
||||
0x00000000080055f8 __malloc_lock
|
||||
0x0000000008005618 0xc C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-mlock.o)
|
||||
0x0000000008005618 __malloc_lock
|
||||
.text.__malloc_unlock
|
||||
0x0000000008005604 0xc C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-mlock.o)
|
||||
0x0000000008005604 __malloc_unlock
|
||||
0x0000000008005624 0xc C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+fp/hard\libc_nano.a(libc_a-mlock.o)
|
||||
0x0000000008005624 __malloc_unlock
|
||||
*(.glue_7)
|
||||
.glue_7 0x0000000008005610 0x0 linker stubs
|
||||
.glue_7 0x0000000008005630 0x0 linker stubs
|
||||
*(.glue_7t)
|
||||
.glue_7t 0x0000000008005610 0x0 linker stubs
|
||||
.glue_7t 0x0000000008005630 0x0 linker stubs
|
||||
*(.eh_frame)
|
||||
.eh_frame 0x0000000008005610 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
.eh_frame 0x0000000008005630 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
*(.init)
|
||||
.init 0x0000000008005610 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crti.o
|
||||
0x0000000008005610 _init
|
||||
.init 0x0000000008005614 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtn.o
|
||||
.init 0x0000000008005630 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crti.o
|
||||
0x0000000008005630 _init
|
||||
.init 0x0000000008005634 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtn.o
|
||||
*(.fini)
|
||||
.fini 0x000000000800561c 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crti.o
|
||||
0x000000000800561c _fini
|
||||
.fini 0x0000000008005620 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtn.o
|
||||
0x0000000008005628 . = ALIGN (0x4)
|
||||
0x0000000008005628 _etext = .
|
||||
.fini 0x000000000800563c 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crti.o
|
||||
0x000000000800563c _fini
|
||||
.fini 0x0000000008005640 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtn.o
|
||||
0x0000000008005648 . = ALIGN (0x4)
|
||||
0x0000000008005648 _etext = .
|
||||
|
||||
.vfp11_veneer 0x0000000008005628 0x0
|
||||
.vfp11_veneer 0x0000000008005628 0x0 linker stubs
|
||||
.vfp11_veneer 0x0000000008005648 0x0
|
||||
.vfp11_veneer 0x0000000008005648 0x0 linker stubs
|
||||
|
||||
.v4_bx 0x0000000008005628 0x0
|
||||
.v4_bx 0x0000000008005628 0x0 linker stubs
|
||||
.v4_bx 0x0000000008005648 0x0
|
||||
.v4_bx 0x0000000008005648 0x0 linker stubs
|
||||
|
||||
.iplt 0x0000000008005628 0x0
|
||||
.iplt 0x0000000008005628 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
.iplt 0x0000000008005648 0x0
|
||||
.iplt 0x0000000008005648 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
|
||||
.rodata 0x0000000008005628 0x90
|
||||
0x0000000008005628 . = ALIGN (0x4)
|
||||
.rodata 0x0000000008005648 0x90
|
||||
0x0000000008005648 . = ALIGN (0x4)
|
||||
*(.rodata)
|
||||
.rodata 0x0000000008005628 0x18 ./Core/Src/main.o
|
||||
.rodata 0x0000000008005640 0x5 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
*fill* 0x0000000008005645 0x3
|
||||
.rodata 0x0000000008005648 0xd ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.rodata 0x0000000008005648 0x18 ./Core/Src/main.o
|
||||
.rodata 0x0000000008005660 0x5 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
*fill* 0x0000000008005665 0x3
|
||||
.rodata 0x0000000008005668 0xd ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
*(.rodata*)
|
||||
*fill* 0x0000000008005655 0x3
|
||||
*fill* 0x0000000008005675 0x3
|
||||
.rodata.mainTask_attributes
|
||||
0x0000000008005658 0x24 ./Core/Src/main.o
|
||||
0x0000000008005658 mainTask_attributes
|
||||
0x0000000008005678 0x24 ./Core/Src/main.o
|
||||
0x0000000008005678 mainTask_attributes
|
||||
.rodata.doorHandler_attributes
|
||||
0x000000000800567c 0x24 ./Core/Src/main.o
|
||||
0x000000000800567c doorHandler_attributes
|
||||
0x000000000800569c 0x24 ./Core/Src/main.o
|
||||
0x000000000800569c doorHandler_attributes
|
||||
.rodata.AHBPrescTable
|
||||
0x00000000080056a0 0x10 ./Core/Src/system_stm32f4xx.o
|
||||
0x00000000080056a0 AHBPrescTable
|
||||
0x00000000080056c0 0x10 ./Core/Src/system_stm32f4xx.o
|
||||
0x00000000080056c0 AHBPrescTable
|
||||
.rodata.APBPrescTable
|
||||
0x00000000080056b0 0x8 ./Core/Src/system_stm32f4xx.o
|
||||
0x00000000080056b0 APBPrescTable
|
||||
0x00000000080056b8 . = ALIGN (0x4)
|
||||
0x00000000080056d0 0x8 ./Core/Src/system_stm32f4xx.o
|
||||
0x00000000080056d0 APBPrescTable
|
||||
0x00000000080056d8 . = ALIGN (0x4)
|
||||
|
||||
.ARM.extab 0x00000000080056b8 0x0
|
||||
0x00000000080056b8 . = ALIGN (0x4)
|
||||
.ARM.extab 0x00000000080056d8 0x0
|
||||
0x00000000080056d8 . = ALIGN (0x4)
|
||||
*(.ARM.extab* .gnu.linkonce.armextab.*)
|
||||
0x00000000080056b8 . = ALIGN (0x4)
|
||||
0x00000000080056d8 . = ALIGN (0x4)
|
||||
|
||||
.ARM 0x00000000080056b8 0x8
|
||||
0x00000000080056b8 . = ALIGN (0x4)
|
||||
0x00000000080056b8 __exidx_start = .
|
||||
.ARM 0x00000000080056d8 0x8
|
||||
0x00000000080056d8 . = ALIGN (0x4)
|
||||
0x00000000080056d8 __exidx_start = .
|
||||
*(.ARM.exidx*)
|
||||
.ARM.exidx 0x00000000080056b8 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard\libgcc.a(_udivmoddi4.o)
|
||||
0x00000000080056c0 __exidx_end = .
|
||||
0x00000000080056c0 . = ALIGN (0x4)
|
||||
.ARM.exidx 0x00000000080056d8 0x8 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard\libgcc.a(_udivmoddi4.o)
|
||||
0x00000000080056e0 __exidx_end = .
|
||||
0x00000000080056e0 . = ALIGN (0x4)
|
||||
|
||||
.rel.dyn 0x00000000080056c0 0x0
|
||||
.rel.iplt 0x00000000080056c0 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
.rel.dyn 0x00000000080056e0 0x0
|
||||
.rel.iplt 0x00000000080056e0 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
|
||||
.preinit_array 0x00000000080056c0 0x0
|
||||
0x00000000080056c0 . = ALIGN (0x4)
|
||||
0x00000000080056c0 PROVIDE (__preinit_array_start = .)
|
||||
.preinit_array 0x00000000080056e0 0x0
|
||||
0x00000000080056e0 . = ALIGN (0x4)
|
||||
0x00000000080056e0 PROVIDE (__preinit_array_start = .)
|
||||
*(.preinit_array*)
|
||||
0x00000000080056c0 PROVIDE (__preinit_array_end = .)
|
||||
0x00000000080056c0 . = ALIGN (0x4)
|
||||
0x00000000080056e0 PROVIDE (__preinit_array_end = .)
|
||||
0x00000000080056e0 . = ALIGN (0x4)
|
||||
|
||||
.init_array 0x00000000080056c0 0x4
|
||||
0x00000000080056c0 . = ALIGN (0x4)
|
||||
0x00000000080056c0 PROVIDE (__init_array_start = .)
|
||||
.init_array 0x00000000080056e0 0x4
|
||||
0x00000000080056e0 . = ALIGN (0x4)
|
||||
0x00000000080056e0 PROVIDE (__init_array_start = .)
|
||||
*(SORT_BY_NAME(.init_array.*))
|
||||
*(.init_array*)
|
||||
.init_array 0x00000000080056c0 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
0x00000000080056c4 PROVIDE (__init_array_end = .)
|
||||
0x00000000080056c4 . = ALIGN (0x4)
|
||||
.init_array 0x00000000080056e0 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
0x00000000080056e4 PROVIDE (__init_array_end = .)
|
||||
0x00000000080056e4 . = ALIGN (0x4)
|
||||
|
||||
.fini_array 0x00000000080056c4 0x4
|
||||
0x00000000080056c4 . = ALIGN (0x4)
|
||||
.fini_array 0x00000000080056e4 0x4
|
||||
0x00000000080056e4 . = ALIGN (0x4)
|
||||
[!provide] PROVIDE (__fini_array_start = .)
|
||||
*(SORT_BY_NAME(.fini_array.*))
|
||||
*(.fini_array*)
|
||||
.fini_array 0x00000000080056c4 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
.fini_array 0x00000000080056e4 0x4 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
[!provide] PROVIDE (__fini_array_end = .)
|
||||
0x00000000080056c8 . = ALIGN (0x4)
|
||||
0x00000000080056c8 _sidata = LOADADDR (.data)
|
||||
0x00000000080056e8 . = ALIGN (0x4)
|
||||
0x00000000080056e8 _sidata = LOADADDR (.data)
|
||||
|
||||
.data 0x0000000020000000 0x60 load address 0x00000000080056c8
|
||||
.data 0x0000000020000000 0x60 load address 0x00000000080056e8
|
||||
0x0000000020000000 . = ALIGN (0x4)
|
||||
0x0000000020000000 _sdata = .
|
||||
*(.data)
|
||||
|
@ -5119,11 +5120,11 @@ LOAD C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.ext
|
|||
0x0000000020000060 . = ALIGN (0x4)
|
||||
0x0000000020000060 _edata = .
|
||||
|
||||
.igot.plt 0x0000000020000060 0x0 load address 0x0000000008005728
|
||||
.igot.plt 0x0000000020000060 0x0 load address 0x0000000008005748
|
||||
.igot.plt 0x0000000020000060 0x0 C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.0.202305231506/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/thumb/v7e-m+fp/hard/crtbegin.o
|
||||
0x0000000020000060 . = ALIGN (0x4)
|
||||
|
||||
.bss 0x0000000020000060 0x4bf4 load address 0x0000000008005728
|
||||
.bss 0x0000000020000060 0x4bf4 load address 0x0000000008005748
|
||||
0x0000000020000060 _sbss = .
|
||||
0x0000000020000060 __bss_start__ = _sbss
|
||||
*(.bss)
|
||||
|
@ -5274,7 +5275,7 @@ LOAD C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.ext
|
|||
0x0000000020004c54 __bss_end__ = _ebss
|
||||
|
||||
._user_heap_stack
|
||||
0x0000000020004c54 0x3004 load address 0x0000000008005728
|
||||
0x0000000020004c54 0x3004 load address 0x0000000008005748
|
||||
0x0000000020004c58 . = ALIGN (0x8)
|
||||
*fill* 0x0000000020004c54 0x4
|
||||
[!provide] PROVIDE (end = .)
|
||||
|
@ -5569,27 +5570,27 @@ LOAD C:/ST/STM32CubeIDE_1.13.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.ext
|
|||
.debug_macro 0x0000000000003164 0x233 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
.debug_macro 0x0000000000003397 0x1c0 ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
|
||||
.debug_line 0x0000000000000000 0x157dd
|
||||
.debug_line 0x0000000000000000 0xc25 ./Core/Src/main.o
|
||||
.debug_line 0x0000000000000c25 0x795 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
.debug_line 0x00000000000013ba 0x7b4 ./Core/Src/stm32f4xx_hal_timebase_tim.o
|
||||
.debug_line 0x0000000000001b6e 0x7e3 ./Core/Src/stm32f4xx_it.o
|
||||
.debug_line 0x0000000000002351 0x7c8 ./Core/Src/system_stm32f4xx.o
|
||||
.debug_line 0x0000000000002b19 0x7a ./Core/Startup/startup_stm32f411retx.o
|
||||
.debug_line 0x0000000000002b93 0xa2e ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
.debug_line 0x00000000000035c1 0xcdd ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.debug_line 0x000000000000429e 0xb66 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
.debug_line 0x0000000000004e04 0xda7 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
.debug_line 0x0000000000005bab 0x34f4 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
.debug_line 0x000000000000909f 0x19c6 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
.debug_line 0x000000000000aa65 0x2ad0 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
.debug_line 0x000000000000d535 0x244f ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
.debug_line 0x000000000000f984 0x797 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
.debug_line 0x000000000001011b 0x1761 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.debug_line 0x000000000001187c 0x1e51 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.debug_line 0x00000000000136cd 0xdfb ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.debug_line 0x00000000000144c8 0x957 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
.debug_line 0x0000000000014e1f 0x9be ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
.debug_line 0x0000000000000000 0x157ed
|
||||
.debug_line 0x0000000000000000 0xc35 ./Core/Src/main.o
|
||||
.debug_line 0x0000000000000c35 0x795 ./Core/Src/stm32f4xx_hal_msp.o
|
||||
.debug_line 0x00000000000013ca 0x7b4 ./Core/Src/stm32f4xx_hal_timebase_tim.o
|
||||
.debug_line 0x0000000000001b7e 0x7e3 ./Core/Src/stm32f4xx_it.o
|
||||
.debug_line 0x0000000000002361 0x7c8 ./Core/Src/system_stm32f4xx.o
|
||||
.debug_line 0x0000000000002b29 0x7a ./Core/Startup/startup_stm32f411retx.o
|
||||
.debug_line 0x0000000000002ba3 0xa2e ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.o
|
||||
.debug_line 0x00000000000035d1 0xcdd ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.o
|
||||
.debug_line 0x00000000000042ae 0xb66 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.o
|
||||
.debug_line 0x0000000000004e14 0xda7 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.o
|
||||
.debug_line 0x0000000000005bbb 0x34f4 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.o
|
||||
.debug_line 0x00000000000090af 0x19c6 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.o
|
||||
.debug_line 0x000000000000aa75 0x2ad0 ./Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.o
|
||||
.debug_line 0x000000000000d545 0x244f ./Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.o
|
||||
.debug_line 0x000000000000f994 0x797 ./Middlewares/Third_Party/FreeRTOS/Source/list.o
|
||||
.debug_line 0x000000000001012b 0x1761 ./Middlewares/Third_Party/FreeRTOS/Source/queue.o
|
||||
.debug_line 0x000000000001188c 0x1e51 ./Middlewares/Third_Party/FreeRTOS/Source/tasks.o
|
||||
.debug_line 0x00000000000136dd 0xdfb ./Middlewares/Third_Party/FreeRTOS/Source/timers.o
|
||||
.debug_line 0x00000000000144d8 0x957 ./Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o
|
||||
.debug_line 0x0000000000014e2f 0x9be ./Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.o
|
||||
|
||||
.debug_str 0x0000000000000000 0x9856e
|
||||
.debug_str 0x0000000000000000 0x8fada ./Core/Src/main.o
|
||||
|
|
|
@ -177,7 +177,8 @@ RCC.VCOOutputFreq_Value=336000000
|
|||
RCC.VcooutputI2S=96000000
|
||||
SH.GPXTI13.0=GPIO_EXTI13
|
||||
SH.GPXTI13.ConfNb=1
|
||||
USART2.IPParameters=VirtualMode,WordLength
|
||||
USART2.BaudRate=9600
|
||||
USART2.IPParameters=VirtualMode,WordLength,BaudRate
|
||||
USART2.VirtualMode=VM_ASYNC
|
||||
USART2.WordLength=WORDLENGTH_8B
|
||||
VP_FREERTOS_VS_CMSIS_V2.Mode=CMSIS_V2
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 148 KiB |
|
@ -0,0 +1,15 @@
|
|||
import cv2
|
||||
|
||||
cam = cv2.VideoCapture(0)
|
||||
|
||||
while True:
|
||||
check, frame = cam.read()
|
||||
|
||||
cv2.imshow('video', frame)
|
||||
|
||||
key = cv2.waitKey(1)
|
||||
if key == 27:
|
||||
break
|
||||
|
||||
cam.release()
|
||||
cv2.destroyAllWindows()
|
|
@ -0,0 +1,102 @@
|
|||
import face_recognition as face
|
||||
import numpy as np
|
||||
import cv2
|
||||
|
||||
#ORIGINAL_CODE_CREDIT: https://github.com/ageitgey/face_recognition/blob/master/examples/facerec_from_webcam_faster.py
|
||||
|
||||
#ดึงวิดีโอตัวอย่างเข้ามา, ถ้าต้องการใช้webcamให้ใส่เป็น
|
||||
video_capture = cv2.VideoCapture(0)
|
||||
|
||||
#ใบหน้าคนที่ต้องการรู้จำเป็นreference #คนที่1
|
||||
boom_image = face.load_image_file("boom.jpg")
|
||||
boom_face_encoding = face.face_encodings(boom_image)[0]
|
||||
|
||||
tat_image = face.load_image_file("tat.jpg")
|
||||
tat_face_encoding = face.face_encodings(tat_image)[0]
|
||||
|
||||
'''
|
||||
#ใบหน้าคนที่ต้องการรู้จำเป็นreference #คนที่2
|
||||
oat_image = face.load_image_file("oat.jpg")
|
||||
oat_face_encoding = face.face_encodings(oat_image)[0]
|
||||
'''
|
||||
|
||||
|
||||
#ประกาศตัวแปร
|
||||
face_locations = []
|
||||
face_encodings = []
|
||||
face_names = []
|
||||
face_percent = []
|
||||
#ตัวแปรนี้ใช้สำหรับคิดเฟรมเว้นเฟรมเพื่อเพิ่มfps
|
||||
process_this_frame = True
|
||||
|
||||
known_face_encodings = [boom_face_encoding, tat_face_encoding]
|
||||
known_face_names = ["BOOM", "TAT"]
|
||||
|
||||
#loopคำนวณแต่ละเฟรมของวิดีโอ
|
||||
while True:
|
||||
#อ่านค่าแต่ละเฟรมจากวิดีโอ
|
||||
ret, frame = video_capture.read()
|
||||
if ret:
|
||||
#ลดขนาดสองเท่าเพื่อเพิ่มfps
|
||||
small_frame = cv2.resize(frame, (0,0), fx=0.5,fy=0.5)
|
||||
#เปลี่ยน bgrเป็น rgb
|
||||
#rgb_small_frame = small_frame[:,:,::-1]
|
||||
rgb_small_frame = np.ascontiguousarray(small_frame[:, :, ::-1])
|
||||
|
||||
face_names = []
|
||||
face_percent = []
|
||||
|
||||
if process_this_frame:
|
||||
#ค้นหาตำแหน่งใบหน้าในเฟรม
|
||||
face_locations = face.face_locations(rgb_small_frame)
|
||||
#นำใบหน้ามาหาfeaturesต่างๆที่เป็นเอกลักษณ์
|
||||
face_encodings = face.face_encodings(rgb_small_frame, face_locations)
|
||||
|
||||
#เทียบแต่ละใบหน้า
|
||||
for face_encoding in face_encodings:
|
||||
face_distances = face.face_distance(known_face_encodings, face_encoding)
|
||||
best = np.argmin(face_distances)
|
||||
face_percent_value = 1-face_distances[best]
|
||||
|
||||
#กรองใบหน้าที่ความมั่นใจ50% ปล.สามารถลองเปลี่ยนได้
|
||||
if face_percent_value >= 0.4:
|
||||
name = known_face_names[best]
|
||||
percent = round(face_percent_value*100,2)
|
||||
face_percent.append(percent)
|
||||
else:
|
||||
name = "UNKNOWN"
|
||||
face_percent.append(0)
|
||||
face_names.append(name)
|
||||
|
||||
#วาดกล่องและtextเมื่อแสดงผลออกมาออกมา
|
||||
for (top,right,bottom, left), name, percent in zip(face_locations, face_names, face_percent):
|
||||
top*= 2
|
||||
right*= 2
|
||||
bottom*= 2
|
||||
left*= 2
|
||||
|
||||
if name == "UNKNOWN":
|
||||
color = [46,2,209]
|
||||
else:
|
||||
color = [255,102,51]
|
||||
|
||||
cv2.rectangle(frame, (left,top), (right,bottom), color, 2)
|
||||
cv2.rectangle(frame, (left-1, top -30), (right+1,top), color, cv2.FILLED)
|
||||
cv2.rectangle(frame, (left-1, bottom), (right+1,bottom+30), color, cv2.FILLED)
|
||||
font = cv2.FONT_HERSHEY_DUPLEX
|
||||
cv2.putText(frame, name, (left+6, top-6), font, 0.6, (255,255,255), 1)
|
||||
cv2.putText(frame, "MATCH: "+str(percent)+"%", (left+6, bottom+23), font, 0.6, (255,255,255), 1)
|
||||
|
||||
|
||||
#สลับค่าเป็นค่าตรงข้ามเพื่อให้คิดเฟรมเว้นเฟรม
|
||||
process_this_frame = not process_this_frame
|
||||
|
||||
#แสดงผลลัพท์ออกมา
|
||||
cv2.imshow("Video", frame)
|
||||
if cv2.waitKey(1) & 0xFF == ord('q'):
|
||||
break
|
||||
|
||||
|
||||
#ล้างค่าต่างๆเมื่อปิดโปรแกรม
|
||||
video_capture.release()
|
||||
cv2.destroyAllWindows()
|
|
@ -0,0 +1,105 @@
|
|||
import face_recognition
|
||||
import cv2
|
||||
import numpy as np
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
# This is a demo of running face recognition on live video from your webcam. It's a little more complicated than the
|
||||
# other example, but it includes some basic performance tweaks to make things run a lot faster:
|
||||
# 1. Process each video frame at 1/4 resolution (though still display it at full resolution)
|
||||
# 2. Only detect faces in every other frame of video.
|
||||
|
||||
# PLEASE NOTE: This example requires OpenCV (the `cv2` library) to be installed only to read from your webcam.
|
||||
# OpenCV is *not* required to use the face_recognition library. It's only required if you want to run this
|
||||
# specific demo. If you have trouble installing it, try any of the other demos that don't require it instead.
|
||||
|
||||
# Get a reference to webcam #0 (the default one)
|
||||
video_capture = cv2.VideoCapture(0)
|
||||
|
||||
# Load a sample picture and learn how to recognize it.
|
||||
PUN_image = face_recognition.load_image_file("PUN.jpg")
|
||||
PUN_face_encoding = face_recognition.face_encodings(PUN_image)[0]
|
||||
|
||||
# Load a second sample picture and learn how to recognize it.
|
||||
TAT_image = face_recognition.load_image_file("tat.jpg")
|
||||
TAT_face_encoding = face_recognition.face_encodings(TAT_image)[0]
|
||||
|
||||
# Create arrays of known face encodings and their names
|
||||
known_face_encodings = [
|
||||
PUN_face_encoding,
|
||||
TAT_face_encoding
|
||||
]
|
||||
known_face_names = [
|
||||
"PUN",
|
||||
"TAT"
|
||||
]
|
||||
|
||||
# Initialize some variables
|
||||
face_locations = []
|
||||
face_encodings = []
|
||||
face_names = []
|
||||
process_this_frame = True
|
||||
|
||||
while True:
|
||||
# Grab a single frame of video
|
||||
ret, frame = video_capture.read()
|
||||
|
||||
# Only process every other frame of video to save time
|
||||
if process_this_frame:
|
||||
# Resize frame of video to 1/4 size for faster face recognition processing
|
||||
small_frame = cv2.resize(frame, (0, 0), fx=0.25, fy=0.25)
|
||||
|
||||
# Convert the image from BGR color (which OpenCV uses) to RGB color (which face_recognition uses)
|
||||
rgb_small_frame = np.ascontiguousarray(small_frame[:, :, ::-1])
|
||||
|
||||
# Find all the faces and face encodings in the current frame of video
|
||||
face_locations = face_recognition.face_locations(rgb_small_frame)
|
||||
face_encodings = face_recognition.face_encodings(rgb_small_frame, face_locations)
|
||||
|
||||
face_names = []
|
||||
for face_encoding in face_encodings:
|
||||
# See if the face is a match for the known face(s)
|
||||
matches = face_recognition.compare_faces(known_face_encodings, face_encoding)
|
||||
name = "Unknown"
|
||||
|
||||
# # If a match was found in known_face_encodings, just use the first one.
|
||||
# if True in matches:
|
||||
# first_match_index = matches.index(True)
|
||||
# name = known_face_names[first_match_index]
|
||||
|
||||
# Or instead, use the known face with the smallest distance to the new face
|
||||
face_distances = face_recognition.face_distance(known_face_encodings, face_encoding)
|
||||
best_match_index = np.argmin(face_distances)
|
||||
if matches[best_match_index]:
|
||||
name = known_face_names[best_match_index]
|
||||
|
||||
face_names.append(name)
|
||||
|
||||
process_this_frame = not process_this_frame
|
||||
|
||||
|
||||
# Display the results
|
||||
for (top, right, bottom, left), name in zip(face_locations, face_names):
|
||||
# Scale back up face locations since the frame we detected in was scaled to 1/4 size
|
||||
top *= 4
|
||||
right *= 4
|
||||
bottom *= 4
|
||||
left *= 4
|
||||
|
||||
# Draw a box around the face
|
||||
cv2.rectangle(frame, (left, top), (right, bottom), (0, 0, 255), 2)
|
||||
|
||||
# Draw a label with a name below the face
|
||||
cv2.rectangle(frame, (left, bottom - 35), (right, bottom), (0, 0, 255), cv2.FILLED)
|
||||
font = cv2.FONT_HERSHEY_DUPLEX
|
||||
cv2.putText(frame, name, (left + 6, bottom - 6), font, 1.0, (255, 255, 255), 1)
|
||||
|
||||
# Display the resulting image
|
||||
cv2.imshow('Video', frame)
|
||||
|
||||
# Hit 'q' on the keyboard to quit!
|
||||
if cv2.waitKey(1) & 0xFF == ord('q'):
|
||||
break
|
||||
|
||||
# Release handle to the webcam
|
||||
video_capture.release()
|
||||
cv2.destroyAllWindows()
|
Binary file not shown.
After Width: | Height: | Size: 124 KiB |
Loading…
Reference in New Issue