18 Commits

Author SHA1 Message Date
Razvalyaev
c61c438b8c uart для платы вэп + структурирован чуть проект и описан бутлоадер
Но надо еще его дорабатывать

+ заготовка для протокола приема (не работает скорее всего, просто из чатгпт вставил)
2025-09-19 13:38:29 +03:00
Razvalyaev
0e834dfe3d структуризирован бутлоадер. работает
надо по протоколу подумать еще, доработать его и описать
2025-09-15 14:48:13 +03:00
Razvalyaev
fbd36705f1 работает но не стабильно 2025-09-12 12:22:17 +03:00
Razvalyaev
320cce09ec сделано (проверено на can):
отправка ошибок бутлоадера по uart/can
проверка crc принятой страницы
проверка на бесконечное попадание в hardfault

в целом структура бута все еще в процессе разработки
2025-09-11 16:57:20 +03:00
Razvalyaev
05e069441c Что-то работает, но много чего еще надо сделать 2025-09-10 16:53:31 +03:00
Razvalyaev
d82a525a82 boot test init
в добавок сделано считывание частоты и скважности сети. можно по скважности определить какая фаза оборвана (в теории)

+ нормальный гитигнор
2025-09-08 12:55:30 +03:00
c46dde7c5c Прием посылок CAN. Расчет скважностей по TIM4 2025-08-28 12:44:48 +03:00
f2b52210e9 добавил freeze iwdg для debug 2025-08-25 16:48:19 +03:00
9ff61f7825 игнор проектных настроек 2025-08-25 16:46:14 +03:00
ed3ac12f75 перенес IWDG что бы инициализировался раньше 2025-08-25 16:28:23 +03:00
Razvalyaev
d9c19bf743 Исправлен id по can: был std, теперь ext (бит IDE в msgHeaderSend)
Сделано моргание диодом только по успешной отправке по CAN
2025-08-25 16:03:37 +03:00
327f65e16b add to gitingore 2025-08-22 18:43:55 +03:00
0699aee653 nothing 2025-08-22 18:36:06 +03:00
c2b7720886 add gitignore 2025-08-22 18:34:01 +03:00
072f042fe3 невыжные файлы 2025-08-22 18:33:03 +03:00
b9db537db1 потерял функцию millisecond подписал комментарии к функциям 2025-08-22 18:32:37 +03:00
a7d6faca8b смена кодировки 2025-08-22 18:25:51 +03:00
d6c3e5d7be перенес все файлы Димы в пересобраный проект 2025-08-22 17:31:23 +03:00
107 changed files with 4863 additions and 13797 deletions

143
.gitignore vendored Normal file
View File

@@ -0,0 +1,143 @@
# ---> uVision
# git ignore file for Keil µVision Project
# µVision 5 and µVision 4 Project screen layout file
*.uvguix.*
*.uvgui.*
*.uvoptx.*
# Listing Files
*.i
*.lst
*.m51
*.m66
*.map
# Object Files
*.axf
*.b[0-2][0-9]
*.b3[0-1]
*.bak
*.build_log.htm
*.crf
*.d
*.dep
*.elf
*.htm
*.iex
*.lnp
*.o
*.obj
*.sbr
# Firmware Files
*.bin
*.h86
*.hex
# Build Files
.bat
# Debugger Files
.ini
# JLink Files
JLinkLog.txt
# Other Files
# ---> Qt
# C++ objects and libs
*.slo
*.lo
*.o
*.a
*.la
*.lai
*.so
*.so.*
*.dll
*.dylib
# Qt-es
object_script.*.Release
object_script.*.Debug
*_plugin_import.cpp
/.qmake.cache
/.qmake.stash
*.pro.user
*.pro.user.*
*.qbs.user
*.qbs.user.*
*.moc
moc_*.cpp
moc_*.h
qrc_*.cpp
ui_*.h
*.qmlc
*.jsc
Makefile*
*build-*
*.qm
*.prl
# Qt unit tests
target_wrapper.*
# QtCreator
*.autosave
# QtCreator Qml
*.qmlproject.user
*.qmlproject.user.*
# QtCreator CMake
CMakeLists.txt.user*
# QtCreator 4.8< compilation database
compile_commands.json
# QtCreator local machine specific files for imported projects
*creator.user*
*_qmlcache.qrc
# ---> MATLAB
# Windows default autosave extension
*.asv
# OSX / *nix default autosave extension
*.m~
# Compiled MEX binaries (all platforms)
*.mex*
# Packaged app and toolbox files
*.mlappinstall
*.mltbx
# Generated helpsearch folders
helpsearch*/
# Simulink code generation folders
slprj/
sccprj/
# Matlab code generation folders
codegen/
# Simulink autosave extension
*.autosave
# Simulink cache files
*.slxc
# Octave session info
octave-workspace
/MDK-ARM/uksvep_2_2_v1/
/MDK-ARM/JLinkSettings.ini

View File

@@ -0,0 +1,20 @@
#ifndef __BOOT_CAN_H
#define __BOOT_CAN_H
#include "bootloader.h"
extern CAN_HandleTypeDef hcan_boot;
extern CAN_TxHeaderTypeDef TxHeaderBoot;
extern CAN_RxHeaderTypeDef RxHeaderBoot;
extern uint32_t TxMailBoxBoot;
extern uint8_t TXDataBoot[8];
/* Инициализация CAN */
void MX_BOOT_CAN_Init(void);
/* Приём команды по CAN по протоколу */
BootloaderCommand_t Bootloader_CAN_Receive(Bootloader_t *bl);
/* Приём CAN: страница + CRC */
void Bootloader_CAN_Receive_Page(Bootloader_t *bl);
#endif //__BOOT_CAN_H

View File

@@ -0,0 +1,14 @@
#ifndef __BOOT_FLASH_H
#define __BOOT_FLASH_H
#include "bootloader.h"
// FOR APP FLASHING
HAL_StatusTypeDef FLASH_Erase_App(void);
HAL_StatusTypeDef FLASH_Write_Page(uint32_t *Address, uint8_t *Data, int Data_size);
// SERVICE
HAL_StatusTypeDef FLASH_Write_Word(uint32_t Address, uint64_t Data);
#endif //__BOOT_FLASH_H

View File

@@ -0,0 +1,14 @@
#ifndef __BOOT_GPIO_H
#define __BOOT_GPIO_H
#include "bootloader.h"
#define LED_BOOT_ON() CLEAR_BIT(LED_BOOT_GPIO_Port->ODR, LED_BOOT_Pin)
#define LED_BOOT_OFF() SET_BIT(LED_BOOT_GPIO_Port->ODR, LED_BOOT_Pin)
#define LED_BOOT_TOOGLE() LED_BOOT_GPIO_Port->ODR ^= LED_BOOT_Pin
void MX_BOOT_GPIO_Init(void);
#endif //__BOOT_GPIO_H

View File

@@ -0,0 +1,26 @@
#ifndef __BOOT_JUMP_H
#define __BOOT_JUMP_H
#include "bootloader.h"
/* Инициализация приложения */
void App_Init(void);
/* Переход в бутлоадер */
void JumpToBootloader(void);
/* Переход к основному приложению */
void JumpToApplocation(void);
/* Сброс ключа BOOT в Flash */
void ResetKey(void);
/* Установка ключа BOOT в Flash */
void SetKey(void);
/* Чтение ключа BOOT из Flash */
uint32_t ReadKey(void);
/* Стирание ключа BOOT в Flash */
void EraseKey(void);
/* Проверка валидности прошивки перед переходом к приложению */
HAL_StatusTypeDef Verify_Firmware(void);
#endif //__BOOT_JUMP_H

View File

@@ -0,0 +1,73 @@
#ifndef __BOOT_SETUP_H
#define __BOOT_SETUP_H
#include "stm32f1xx_hal.h"
// ======================== BOOTLOADER CONFIG ========================
// ---------- MAIN APPLICATION defines ----------
// Адрес и страницы Flash для основного приложения
// MAIN_APP_START_ADR начало кода основного приложения
#define MAIN_APP_START_ADR (uint32_t)0x0800C000UL
#define MAIN_APP_PAGE 21 // страница, с которой начинается приложение
#define MAIN_APP_NUM_OF_PAGE 250-MAIN_APP_PAGE // количество страниц, отведённых под приложение
// ---------- KEY defines ----------
// Адрес и страница Flash для хранения ключа бутлоадера
// Ключ используется для проверки, записано ли приложение корректно
#define BOOTLOADER_KEY_ADR (uint32_t)0x08009800UL // физический адрес ключа
#define BOOTLOADER_KEY_PAGE 20 // страница флеш, на которой хранится ключ
// ---------- RECEIVE defines ----------
// Настройки приёма прошивки
#define FW_RECEIVE_TIMEOUT_MS 500 // таймаут приёма одного байта прошивки (мс)
#define PAGE_SIZE 2048 // размер блока (страницы) прошивки для приёма и записи в Flash
// должен быть таким, чтобы размер страниц Flash был кратен ему
// ---------- LED defines ----------
#define LED_BOOT_Pin GPIO_PIN_5
#define LED_BOOT_GPIO_Port GPIOB
// ======================== RCC (CLOCK) defines ========================
// Макросы для включения тактирования периферии бутлоадера
#define __RCC_LED_BOOT_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() // тактирование UART
#define __RCC_UART_BOOT_CLK_ENABLE() __HAL_RCC_UART4_CLK_ENABLE() // тактирование UART
#define __RCC_UART_PORT_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() // тактирование порта UART
#define __RCC_CAN_BOOT_CLK_ENABLE() __HAL_RCC_CAN1_CLK_ENABLE() // тактирование CAN
#define __RCC_CAN_PORT_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() // тактирование порта CAN
// ======================== UART defines ========================
// Аппаратный UART и скорость передачи
#define UART_BOOT UART4
#define UART_SPEED 115200
// Порт и пины UART
#define UART_PORT GPIOC
#define UART_PIN_TX GPIO_PIN_10
#define UART_PIN_RX GPIO_PIN_11
// ======================== CAN defines ========================
// Аппаратный CAN и режим работы
#define CAN_BOOT CAN1
#define CAN_MODE CAN_MODE_NORMAL
// Настройка скорости CAN при 8 MHz
// ------------|-----------|-----------|-----------
// CAN speed | Prescaler | BS1 | BS2
// ------------|-----------|-----------|-----------
// 125 kbps | 4 | 13TQ | 2TQ
// 250 kbps | 2 | 13TQ | 2TQ
// 500 kbps | 1 | 13TQ | 2TQ
#define CAN_SPEED_PRESCALER 4
#define CAN_SPEED_BS1 CAN_BS1_13TQ
#define CAN_SPEED_BS2 CAN_BS2_2TQ
// Порт и пины CAN
#define CAN_PORT GPIOA
#define CAN_PIN_RX GPIO_PIN_11
#define CAN_PIN_TX GPIO_PIN_12
#endif //__BOOT_SETUP_H

View File

@@ -0,0 +1,15 @@
#ifndef __BOOT_UART_H
#define __BOOT_UART_H
#include "bootloader.h"
extern UART_HandleTypeDef huart_boot;
/* Инициализация UART */
void MX_BOOT_UART_Init(void);
/* Приём команды по UART по протоколу */
BootloaderCommand_t Bootloader_UART_Receive(Bootloader_t *bl);
/* Приём UART: страница + CRC */
void Bootloader_UART_Receive_Page(Bootloader_t *bl);
#endif //__BOOT_UART_H

View File

@@ -0,0 +1,150 @@
#ifndef __BOOTLOADER_H
#define __BOOTLOADER_H
#include "boot_project_setup.h"
#include "string.h"
/* --- Настройка: подставьте значения для вашей MCU --- */
/* Адрес начала приложения (используется в вашем коде) */
#ifndef MAIN_APP_START_ADR
#error "MAIN_APP_START_ADR must be defined"
#endif
/* Flash boundaries: подставьте реальные границы флеш-памяти вашего MCU */
#ifndef FLASH_START_ADR
#define FLASH_START_ADR MAIN_APP_START_ADR
#endif
#ifndef FLASH_END_ADR
#define FLASH_END_ADR FLASH_BASE + (*((uint16_t*)FLASHSIZE_BASE) * 1024U)
#endif
/* SRAM boundaries: подставьте реальные адреса SRAM вашей MCU */
#ifndef SRAM_START_ADR
#define SRAM_START_ADR 0x20000000UL
#endif
#ifndef SRAM_END_ADR
#define SRAM_END_ADR 0x2003FFFFUL
#endif
/**
* @brief Значение ключа, указывающее что основное приложение записано
*/
#define BL_KEY_APP_WRITTEN 0xAAAA5555
/** @brief Получить сохранённый код ошибки из BKP */
#define GetErrorCode() BKP->DR1
/** @brief Получить счетчик ошибок из BKP */
#define GetErrorCnt() BKP->DR2
/**
* @brief Сохранение кода ошибки и инкремент счетчика
* @param code Код ошибки
* @details
* Включаем тактирование PWR и BKP (APB1) и разрешаем доступ к BKP domain
* Записываем напрямую в регистры RCC/APB1ENR и PWR->CR
* Записываем код ошибки и счётчик ошибок
*/
#define SaveErrorCode(code) do{ \
RCC->APB1ENR |= (RCC_APB1ENR_PWREN | RCC_APB1ENR_BKPEN); \
PWR->CR |= PWR_CR_DBP; \
GetErrorCode() = code; \
GetErrorCnt() = GetErrorCnt() + 1; \
}while(0u);
/**
* @brief Очистка кода ошибки и счетчика ошибок
*/
#define ClearErrorCode(code) do{ \
RCC->APB1ENR |= (RCC_APB1ENR_PWREN | RCC_APB1ENR_BKPEN); \
PWR->CR |= PWR_CR_DBP; \
GetErrorCode() = 0; \
GetErrorCnt() = 0; \
}while(0u);
/**
* @brief Команды для управления бутлоадером
*/
typedef enum {
NO_CMD = 0x00, ///< Нет комманды
CMD_ERASE = 0x01, ///< Команда на стирание прошивки
CMD_START_RECEIVE, ///< Команда на старт приема прошивки
CMD_WRITE, ///< Команда на запись блока прошивки
CMD_GOTOAPP, ///< Команда на переход в приложение
CMD_RESET, ///< Команда на переход в приложение
CMD_GOTOBOOT, ///< Команда на переход в приложение
CMD_PING = 0xAA, ///< Команда на пинг
}BootloaderCommand_t;
/**
* @brief Состояния конечного автомата бутлоадера
*/
typedef enum {
BL_STATE_INIT = 0, ///< Состояние: инициализация
BL_STATE_JUMP_TO_APP, ///< Состояние: запуск приложения
BL_STATE_IDLE, ///< Состояние: ожидание команд
BL_STATE_ERASE, ///< Состояние: стирание флеша
BL_STATE_RECEIVE_UART, ///< Состояние: прием прошивки по UART
BL_STATE_RECEIVE_CAN, ///< Состояние: прием прошивки по CAN
BL_STATE_WRITE, ///< Состояние: запись данных
BL_STATE_ERROR, ///< Состояние: ошибка
BL_STATE_RESET, ///< Состояние: сброс контролллера
BL_STATE_JUMP_TO_BOOT, ///< Состояние: запуск приложения
} BootloaderState_t;
/**
* @brief Ошибки бутлоадера
*/
typedef union {
uint16_t all; ///< Все ошибки одним числом
struct {
unsigned hardfault_cycle:1; ///< Прерывание HardFault
unsigned memmanage_cycle:1; ///< Прерывание MemManage
unsigned watchdog_reset:1; ///< Watchdog сброс
unsigned unknown_cmd:1; ///< Неизвестная команда
unsigned erase_err:1; ///< Ошибка стирания
unsigned write_err:1; ///< Ошибка записи
unsigned verify_err:1; ///< Ошибка проверки прошивки
unsigned overflow:1; ///< Слишком много данных
unsigned timeout_receive:1; ///< Таймаут приёма
unsigned crc_err:1; ///< Ошибка CRC
} bit;
} BootloaderError_t;
/**
* @brief Дескриптор бутлоадера
*/
typedef struct {
BootloaderState_t state; ///< текущее состояние бутлоадера
BootloaderError_t error; ///< ошибки бутлоадера
uint32_t addr; ///< текущий адрес прошивки
uint8_t fw_size; ///< размер прошивки
uint8_t fw_buffer[PAGE_SIZE]; ///< буфер для приема прошивки (UART/CAN)
uint32_t fw_len; ///< длина принятого пакета
uint32_t fw_crc; ///< контрольная сумма прошивки
UART_HandleTypeDef *huart; ///< хендлер UART
CAN_HandleTypeDef *hcan; ///< хендер CAN
CAN_TxHeaderTypeDef TxHeader; ///< Заголовок CAN сообщения для отправки
BootloaderState_t prev_state; ///< предыдущее состояние бутлоадера
} Bootloader_t;
/* Основная задача бутлоадера */
void Bootloader_Task(Bootloader_t *bl);
/* Настройка тактирования */
void Boot_SystemClock_Config(void);
/* Хендлер ошибки */
void Error_Handler(void);
/* CRC */
uint32_t CRC32_Compute(const uint8_t* data, uint32_t length);
#endif //__BOOTLOADER_H

View File

@@ -0,0 +1,162 @@
#include "boot_can.h"
#include "boot_gpio.h"
CAN_HandleTypeDef hcan_boot;
CAN_TxHeaderTypeDef TxHeaderBoot;
CAN_RxHeaderTypeDef RxHeaderBoot;
uint32_t TxMailBoxBoot = 0;
uint8_t TXDataBoot[8] = {0};
/**
* @brief Инициализация CAN для бутлоадера
*/
void MX_BOOT_CAN_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
CAN_FilterTypeDef sFilterConfig;
/* Включаем тактирование */
__RCC_CAN_BOOT_CLK_ENABLE();
__RCC_CAN_PORT_CLK_ENABLE();
/* Настройка пинов RX/TX */
GPIO_InitStruct.Pin = CAN_PIN_RX;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(CAN_PORT, &GPIO_InitStruct);
GPIO_InitStruct.Pin = CAN_PIN_TX;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
HAL_GPIO_Init(CAN_PORT, &GPIO_InitStruct);
/* Настройка CAN */
hcan_boot.Instance = CAN_BOOT;
hcan_boot.Init.Prescaler = CAN_SPEED_PRESCALER;
hcan_boot.Init.Mode = CAN_MODE;
hcan_boot.Init.SyncJumpWidth = CAN_SJW_1TQ;
hcan_boot.Init.TimeSeg1 = CAN_SPEED_BS1;
hcan_boot.Init.TimeSeg2 = CAN_SPEED_BS2;
hcan_boot.Init.TimeTriggeredMode = DISABLE;
hcan_boot.Init.AutoBusOff = DISABLE;
hcan_boot.Init.AutoWakeUp = DISABLE;
hcan_boot.Init.AutoRetransmission = ENABLE;
hcan_boot.Init.ReceiveFifoLocked = DISABLE;
hcan_boot.Init.TransmitFifoPriority = DISABLE;
if (HAL_CAN_Init(&hcan_boot) != HAL_OK)
{
Error_Handler();
}
/* Настройка фильтра: пропускать все сообщения */
sFilterConfig.FilterBank = 0;
sFilterConfig.FilterMode = CAN_FILTERMODE_IDMASK;
sFilterConfig.FilterScale = CAN_FILTERSCALE_32BIT;
sFilterConfig.FilterIdHigh = 0x0000;
sFilterConfig.FilterIdLow = 0x0000;
sFilterConfig.FilterMaskIdHigh = 0x0000;
sFilterConfig.FilterMaskIdLow = 0x0000;
sFilterConfig.FilterFIFOAssignment = CAN_FILTER_FIFO0;
sFilterConfig.FilterActivation = ENABLE;
if (HAL_CAN_ConfigFilter(&hcan_boot, &sFilterConfig) != HAL_OK)
{
Error_Handler();
}
/* Запускаем CAN */
if (HAL_CAN_Start(&hcan_boot) != HAL_OK)
{
Error_Handler();
}
}
/**
* @brief Приём команды по CAN по протоколу:
* @param bl: указатель на структуру бутлоадера
* @retval BootloaderCommand_t — принятая команда или NO_CMD
*/
BootloaderCommand_t Bootloader_CAN_Receive(Bootloader_t *bl)
{
BootloaderCommand_t cmd = NO_CMD;
uint8_t canData[8];
if (HAL_CAN_GetRxFifoFillLevel(bl->hcan, CAN_RX_FIFO0) > 0)
{
if (HAL_CAN_GetRxMessage(bl->hcan, CAN_RX_FIFO0, &RxHeaderBoot, canData) == HAL_OK)
{
cmd = canData[0]; // предполагаем, что команда в первом байте
}
}
return cmd;
}
/**
* @brief Приём CAN: страница + CRC
* @param bl: указатель на структуру бутлоадера
*/
void Bootloader_CAN_Receive_Page(Bootloader_t *bl)
{
uint16_t bytes_received = 0;
CAN_RxHeaderTypeDef canHeader;
uint8_t canData[8];
uint32_t start_tick = HAL_GetTick();
// Приём страницы прошивки
while(bytes_received < PAGE_SIZE)
{
if(HAL_CAN_GetRxFifoFillLevel(bl->hcan, CAN_RX_FIFO0) > 0)
{
if(HAL_CAN_GetRxMessage(bl->hcan, CAN_RX_FIFO0, &canHeader, canData) == HAL_OK)
{
uint8_t len = canHeader.DLC;
if(bytes_received + len > PAGE_SIZE)
len = PAGE_SIZE - bytes_received;
memcpy(&bl->fw_buffer[bytes_received], canData, len);
bytes_received += len;
start_tick = HAL_GetTick(); // сброс таймаута
LED_BOOT_TOOGLE();
}
}
// проверка таймаута
if(HAL_GetTick() - start_tick >= FW_RECEIVE_TIMEOUT_MS)
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return;
}
}
// Приём CRC (4 байта)
start_tick = HAL_GetTick(); // сброс таймаута
while(1)
{
if(HAL_CAN_GetRxFifoFillLevel(bl->hcan, CAN_RX_FIFO0) > 0)
{
if(HAL_CAN_GetRxMessage(bl->hcan, CAN_RX_FIFO0, &canHeader, canData) == HAL_OK)
{
// CRC в первых 4 байтах пакета
bl->fw_crc = (canData[0] << 24) |
(canData[1] << 16) |
(canData[2] << 8) |
canData[3];
break;
}
}
// Таймаут
if(HAL_GetTick() - start_tick >= FW_RECEIVE_TIMEOUT_MS)
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return;
}
}
bl->fw_len = PAGE_SIZE;
bl->state = BL_STATE_IDLE;
}

View File

@@ -0,0 +1,92 @@
#include "boot_flash.h"
uint32_t word_data;
HAL_StatusTypeDef FLASH_Erase_App(void) //
{
HAL_StatusTypeDef res;
uint32_t PageError = 0x00;
res = HAL_FLASH_Unlock();
if (res != HAL_OK) return res;
FLASH_EraseInitTypeDef EraseInitStruct;
EraseInitStruct.TypeErase = FLASH_TYPEERASE_PAGES;// erase pages
EraseInitStruct.Banks = 1;
EraseInitStruct.PageAddress = MAIN_APP_START_ADR; //address
EraseInitStruct.NbPages = MAIN_APP_NUM_OF_PAGE;// num of erased pages
res = HAL_FLASHEx_Erase(&EraseInitStruct, &PageError);
if (res != HAL_OK) return res;
res = HAL_FLASH_Lock();
return res;
}
HAL_StatusTypeDef FLASH_Write_Page(uint32_t *Address, uint8_t *Data, int Data_size)
{
//GPIOB->ODR^=(0x2000);
// GPIOB->ODR|=0x4000;
HAL_StatusTypeDef res;
int data_cnt = 0;
uint32_t adr;
res = HAL_FLASH_Unlock();
if (res != HAL_OK) return res;
for (adr = *Address; adr < *Address + Data_size; adr = adr+4)
{
word_data = (
Data[data_cnt]|
Data[data_cnt+1]<<8|
Data[data_cnt+2]<<16|
Data[data_cnt+3]<<24);
res = HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, adr, word_data);
if (res != HAL_OK) return res;
data_cnt +=4;
}
*Address += Data_size;
res = HAL_FLASH_Lock();
return res;
}
HAL_StatusTypeDef FLASH_Write_Word(uint32_t Address, uint64_t Data) //Куда записывать
{
HAL_StatusTypeDef res;
res = HAL_FLASH_Unlock();
if (res != HAL_OK) return res;
res = HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, Address, (uint32_t)(Data));
if (res != HAL_OK) return res;
res = HAL_FLASH_Lock();
return res;
}

View File

@@ -0,0 +1,24 @@
#include "boot_gpio.h"
/**
* @brief Инициализация GPIO для бутлоадера
*/
void MX_BOOT_GPIO_Init(void)
{
__RCC_LED_BOOT_CLK_ENABLE();
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = LED_BOOT_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; // Push-Pull выход
GPIO_InitStruct.Pull = GPIO_NOPULL; // Без подтяжки
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; // Низкая скорость
HAL_GPIO_Init(LED_BOOT_GPIO_Port, &GPIO_InitStruct);
for(int cnt = 0; cnt < 5; cnt++)
{
LED_BOOT_ON();
for(int delay = 0; delay < 10000; delay++);
LED_BOOT_OFF();
for(int delay = 0; delay < 10000; delay++);
}
}

View File

@@ -0,0 +1,150 @@
/**
* @file boot_jump.c
* @brief Функции для перехода между бутлоадером и основным приложением,
* управление ключом BOOT и проверка прошивки.
*
* Основные возможности:
* - Настройка вектора прерываний для запуска приложения
* - Управление ключом BOOT в Flash
* - Проверка корректности прошивки перед прыжком
* - Функции прыжка: Bootloader <-> Application
*/
#include "boot_jump.h"
/**
* @brief Инициализация приложения.
* Устанавливает вектор прерываний на начало основного приложения.
*/
void App_Init(void)
{
__disable_irq();
SCB->VTOR = MAIN_APP_START_ADR;
__enable_irq();
}
/**
* @brief Переход в бутлоадер.
* Сбрасывает ключ BOOT и выполняет системный сброс.
*/
void JumpToBootloader(void)
{
// jump to boot
ResetKey(); // сброс ключа (не erase, просто битый ключ)
NVIC_SystemReset(); // сброс и переход в бутлоадер (т.к. нет ключа)
}
/**
* @brief Переход к основному приложению.
* Настраивает стек и переход к ResetHandler приложения.
*/
void JumpToApplocation(void)
{
//Деинициализация HAL
HAL_DeInit();
//Перенос вектора прерываний на начало зашитой программы
__disable_irq();
__set_MSP(*((volatile uint32_t*)MAIN_APP_START_ADR));
__enable_irq();
//Переход к выполнению зашитой программы
__ASM volatile(
"ldr r0, [%0, #4]\n" // r0 = *(MAIN_APP_START_ADR + 4)
"bx r0\n" // переход по адресу в r0
:
: "r"(MAIN_APP_START_ADR)
: "r0"
);
//Note: asm потому что при O0 компилятор делал локальные переменные,
// из-за чего при смене стека он не мог получить адрес для прыжка
}
/**
* @brief Сброс ключа BOOT в Flash.
* Делает ключ «битым», чтобы MCU остался в бутлоадере при следующем перезапуске.
*/
void ResetKey(void)
{
HAL_FLASH_Unlock();
HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, BOOTLOADER_KEY_ADR, 0);
HAL_FLASH_Lock();
}
/**
* @brief Установка ключа BOOT в Flash.
* Указывает, что прошивка записана корректно.
*/
void SetKey(void)
{
HAL_FLASH_Unlock();
HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, BOOTLOADER_KEY_ADR, BL_KEY_APP_WRITTEN);
HAL_FLASH_Lock();
}
/**
* @brief Чтение ключа BOOT из Flash.
* @retval Значение ключа
*/
uint32_t ReadKey(void)
{
return (*(__IO uint32_t*)BOOTLOADER_KEY_ADR);
}
/**
* @brief Стирание ключа BOOT в Flash (одна страница).
*/
void EraseKey(void)
{
FLASH_EraseInitTypeDef EraseInitStruct;
HAL_FLASH_Unlock();
uint32_t PageError = 0x00;
EraseInitStruct.TypeErase = FLASH_TYPEERASE_PAGES;// erase pages
EraseInitStruct.PageAddress = BOOTLOADER_KEY_ADR; //address
EraseInitStruct.NbPages = 0x01;// num of erased pages
HAL_FLASHEx_Erase(&EraseInitStruct, &PageError);
HAL_FLASH_Lock();
}
/**
* @brief Проверка валидности прошивки перед переходом к приложению.
* Проверяет MSP и ResetHandler.
* @retval HAL_OK - прошивка валидна
* HAL_ERROR - прошивка повреждена или некорректна
*/
HAL_StatusTypeDef Verify_Firmware(void)
{
uint32_t msp = *((volatile uint32_t*)(MAIN_APP_START_ADR));
uint32_t reset = *((volatile uint32_t*)(MAIN_APP_START_ADR + 4));
/* 1) Проверка MSP: должен быть указателем в SRAM */
if ((msp < SRAM_START_ADR) || (msp > SRAM_END_ADR))
{
/* Некорректный стек — прошивка невалидна */
return HAL_ERROR;
}
/* 2) Проверка reset handler:
- бит0 должен быть 1 (Thumb)
- адрес без бита0 должен лежать в пределах flash (MAIN_APP_START_ADR .. FLASH_END_ADR)
*/
if ((reset & 0x1) == 0)
{
/* Не Thumb-при-старте — подозрительно */
return HAL_ERROR;
}
uint32_t reset_addr = (reset & (~1U)); /* выравненный адрес */
if ((reset_addr < FLASH_START_ADR) || (reset_addr > FLASH_END_ADR))
{
/* Reset handler вне flash */
return HAL_ERROR;
}
return HAL_OK;
}

View File

@@ -0,0 +1,189 @@
#include "bootloader.h"
Bootloader_t boot = {0};
int main()
{
__disable_irq();
SCB->VTOR = FLASH_BASE;
__enable_irq();
boot.state = BL_STATE_INIT;
while (1)
{
Bootloader_Task(&boot);
}
}
/**
* @brief This function handles System tick timer.
*/
void SysTick_Handler(void)
{
/* USER CODE BEGIN SysTick_IRQn 0 */
/* USER CODE END SysTick_IRQn 0 */
HAL_IncTick();
/* USER CODE BEGIN SysTick_IRQn 1 */
/* USER CODE END SysTick_IRQn 1 */
}
void Boot_SystemClock_Config(void)
{
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
/* Включаем внутренний генератор HSI */
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_OFF; // без PLL
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
/* Настройка шин AHB/APB */
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI; // HSI = 8 MHz
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; // HCLK = 8 MHz
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; // PCLK1 = 8 MHz
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; // PCLK2 = 8 MHz
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK)
{
Error_Handler();
}
}
/******************************************************************************/
/* Cortex-M3 Processor Interruption and Exception Handlers */
/******************************************************************************/
/**
* @brief This function handles Non maskable interrupt.
*/
void NMI_Handler(void)
{
/* USER CODE BEGIN NonMaskableInt_IRQn 0 */
/* USER CODE END NonMaskableInt_IRQn 0 */
/* USER CODE BEGIN NonMaskableInt_IRQn 1 */
while (1)
{
}
/* USER CODE END NonMaskableInt_IRQn 1 */
}
/**
* @brief This function handles Hard fault interrupt.
*/
void HardFault_Handler(void)
{
/* USER CODE BEGIN HardFault_IRQn 0 */
/* Включаем тактирование PWR и BKP (APB1) и разрешаем доступ к BKP domain */
/* Записываем напрямую в регистры RCC/APB1ENR и PWR->CR */
SaveErrorCode(0xDEAD);
NVIC_SystemReset();
/* USER CODE END HardFault_IRQn 0 */
while (1)
{
/* USER CODE BEGIN W1_HardFault_IRQn 0 */
/* USER CODE END W1_HardFault_IRQn 0 */
}
}
/**
* @brief This function handles Memory management fault.
*/
void MemManage_Handler(void)
{
/* USER CODE BEGIN MemoryManagement_IRQn 0 */
SaveErrorCode(0xBEEF);
NVIC_SystemReset();
/* USER CODE END MemoryManagement_IRQn 0 */
while (1)
{
/* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */
/* USER CODE END W1_MemoryManagement_IRQn 0 */
}
}
/**
* @brief This function handles Prefetch fault, memory access fault.
*/
void BusFault_Handler(void)
{
/* USER CODE BEGIN BusFault_IRQn 0 */
/* USER CODE END BusFault_IRQn 0 */
while (1)
{
/* USER CODE BEGIN W1_BusFault_IRQn 0 */
/* USER CODE END W1_BusFault_IRQn 0 */
}
}
/**
* @brief This function handles Undefined instruction or illegal state.
*/
void UsageFault_Handler(void)
{
/* USER CODE BEGIN UsageFault_IRQn 0 */
/* USER CODE END UsageFault_IRQn 0 */
while (1)
{
/* USER CODE BEGIN W1_UsageFault_IRQn 0 */
/* USER CODE END W1_UsageFault_IRQn 0 */
}
}
/**
* @brief This function handles System service call via SWI instruction.
*/
void SVC_Handler(void)
{
/* USER CODE BEGIN SVCall_IRQn 0 */
/* USER CODE END SVCall_IRQn 0 */
/* USER CODE BEGIN SVCall_IRQn 1 */
/* USER CODE END SVCall_IRQn 1 */
}
/**
* @brief This function handles Debug monitor.
*/
void DebugMon_Handler(void)
{
/* USER CODE BEGIN DebugMonitor_IRQn 0 */
/* USER CODE END DebugMonitor_IRQn 0 */
/* USER CODE BEGIN DebugMonitor_IRQn 1 */
/* USER CODE END DebugMonitor_IRQn 1 */
}
/**
* @brief This function handles Pendable request for system service.
*/
void PendSV_Handler(void)
{
/* USER CODE BEGIN PendSV_IRQn 0 */
/* USER CODE END PendSV_IRQn 0 */
/* USER CODE BEGIN PendSV_IRQn 1 */
/* USER CODE END PendSV_IRQn 1 */
}
void Error_Handler(void)
{
NVIC_SystemReset();
}

View File

@@ -0,0 +1,182 @@
#include "boot_uart.h"
#include "boot_gpio.h"
UART_HandleTypeDef huart_boot;
/**
* @brief Инициализация UART для бутлоадера
*/
void MX_BOOT_UART_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
/* Включаем тактирование */
__RCC_UART_BOOT_CLK_ENABLE();
__RCC_UART_PORT_CLK_ENABLE();
/* Настройка GPIO TX/RX */
GPIO_InitStruct.Pin = UART_PIN_TX;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
HAL_GPIO_Init(UART_PORT, &GPIO_InitStruct);
GPIO_InitStruct.Pin = UART_PIN_RX;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(UART_PORT, &GPIO_InitStruct);
/* Настройка UART */
huart_boot.Instance = UART_BOOT;
huart_boot.Init.BaudRate = UART_SPEED;
huart_boot.Init.WordLength = UART_WORDLENGTH_8B;
huart_boot.Init.StopBits = UART_STOPBITS_1;
huart_boot.Init.Parity = UART_PARITY_NONE;
huart_boot.Init.Mode = UART_MODE_TX_RX;
huart_boot.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart_boot.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&huart_boot) != HAL_OK)
{
Error_Handler(); // твоя функция обработки ошибок
}
}
/**
* @brief Приём команды по UART по протоколу:
* [SOH][CMD][LEN_H][LEN_L][DATA ...][CRC32_H..CRC32_L]
* Idle — не блокируется до SOH
* После SOH — блокирующий приём всего пакета
* @param bl: указатель на структуру бутлоадера
* @retval BootloaderCommand_t — принятая команда или NO_CMD
*/
BootloaderCommand_t Bootloader_UART_Receive(Bootloader_t *bl)
{
BootloaderCommand_t cmd;
uint8_t byte = 0;
HAL_StatusTypeDef res;
// -----------------------------
// 1. Ждём SOH в неблокирующем режиме
res = HAL_UART_Receive(bl->huart, &byte, 1, 1); // 1 ms таймаут
if(res != HAL_OK)
return NO_CMD; // пакета нет
if(byte != 0xAA)
return NO_CMD; // игнорируем мусор
// -----------------------------
// 2. Блокирующий приём CMD + LEN_H + LEN_L
uint8_t header[3];
res = HAL_UART_Receive(bl->huart, header, 3, FW_RECEIVE_TIMEOUT_MS);
if(res != HAL_OK)
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return NO_CMD;
}
cmd = (BootloaderCommand_t)header[0];
bl->fw_len = ((uint16_t)header[1] << 8) | header[2];
if(bl->fw_len > PAGE_SIZE)
{
bl->error.bit.overflow = 1;
bl->state = BL_STATE_ERROR;
return NO_CMD;
}
// -----------------------------
// 3. Блокирующий приём DATA
for(uint16_t i = 0; i < bl->fw_len; i++)
{
res = HAL_UART_Receive(bl->huart, &bl->fw_buffer[i], 1, FW_RECEIVE_TIMEOUT_MS);
if(res != HAL_OK)
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return NO_CMD;
}
}
// -----------------------------
// 4. Приём CRC32
uint8_t crc_buf[4];
res = HAL_UART_Receive(bl->huart, crc_buf, 4, FW_RECEIVE_TIMEOUT_MS);
if(res != HAL_OK)
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return NO_CMD;
}
bl->fw_crc = (crc_buf[0]<<24) | (crc_buf[1]<<16) | (crc_buf[2]<<8) | crc_buf[3];
// -----------------------------
// 5. Проверка CRC по всему пакету (CMD + LEN + DATA)
uint32_t crc_calc = CRC32_Compute(header, 3); // CMD + LEN
crc_calc = CRC32_Compute(bl->fw_buffer, bl->fw_len) ^ crc_calc; // DATA
if(crc_calc != bl->fw_crc)
{
bl->error.bit.crc_err = 1;
bl->state = BL_STATE_ERROR;
return NO_CMD;
}
// -----------------------------
// 6. Всё верно — возвращаем команду
return cmd;
}
/**
* @brief Приём UART: страница + CRC
* @param bl: указатель на структуру бутлоадера
*/
void Bootloader_UART_Receive_Page(Bootloader_t *bl)
{
uint16_t bytes_received = 0;
uint8_t crc_buf[4];
HAL_StatusTypeDef res;
uint32_t start_tick = HAL_GetTick(); // старт таймера
// Приём данных страницы
while(bytes_received < PAGE_SIZE)
{
uint8_t byte = 0;
res = HAL_UART_Receive(bl->huart, &byte, 1, FW_RECEIVE_TIMEOUT_MS); // блокирующий приём 100ms
if(res == HAL_OK)
{
bl->fw_buffer[bytes_received++] = byte;
start_tick = HAL_GetTick(); // сброс таймера при успешном приёме
LED_BOOT_TOOGLE();
}
else
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR; // превышен таймаут
return;
}
}
// Приём CRC (4 байта)
for(uint8_t i = 0; i < 4; i++)
{
res = HAL_UART_Receive(bl->huart, &crc_buf[i], 1, FW_RECEIVE_TIMEOUT_MS);
if(res == HAL_OK)
{
start_tick = HAL_GetTick(); // сброс таймера
}
else
{
bl->error.bit.timeout_receive = 1;
bl->state = BL_STATE_ERROR;
return;
}
}
// Сохраняем CRC в структуру
bl->fw_crc = (crc_buf[0] << 24) | (crc_buf[1] << 16) | (crc_buf[2] << 8) | crc_buf[3];
bl->fw_len = bytes_received;
bl->state = BL_STATE_IDLE;
}

View File

@@ -0,0 +1,487 @@
/******************************************************************************
* @file bootloader.c
* @brief Бутлоадер STM32 — реализован как конечный автомат (state machine).
*
* @details
* Логика работы:
* - Структура Bootloader_t содержит текущее состояние и ошибки.
* - После сброса проверяются предыдущие ошибки.
* - Проверяется BOOT KEY, чтобы определить: запускать основное приложение или оставаться в бутлоадере.
* - Основной цикл — state machine:
* INIT — проверка ключа, инициализация периферии
* IDLE — ожидание команд по UART/CAN
* RECEIVE_UART/RECEIVE_CAN — приём страницы прошивки
* WRITE — запись страницы во Flash
* ERASE — стирание приложения
* JUMP_TO_APP — проверка прошивки и переход к приложению
* JUMP_TO_BOOT— возврат в бутлоадер
* RESET — программный сброс
* ERROR — обработка ошибок и уведомление внешнего интерфейса
* - Команды прошивки (BootloaderCommand_t) обрабатываются через Receive_FW_Command().
* - Проверка целостности данных осуществляется через CRC32.
*
* Подключение бутлоадера в основном приложении:
* 0) Подключить boot_jump.h и boot_jump.c для взаимодействия с бутлоадером:
* @code #include "boot_jump.h" @endcode
* 1) В начале main() вызвать App_Init(), чтобы установить VTOR на
* начало приложения:
* @code App_Init(); @endcode
* 2) Для перехода в бутлоадер (например, при ошибке или обновлении):
* @code JumpToBootloader(); @endcode
******************************************************************************/
#include "bootloader.h"
#include "boot_gpio.h"
#include "boot_flash.h"
#include "boot_uart.h"
#include "boot_can.h"
#include "boot_jump.h"
// -----------------------------------------------------------------------------
// Глобальные переменные для HAL-периферии
// -----------------------------------------------------------------------------
HAL_StatusTypeDef res_hal;
uint32_t led_err_lasttick = 0;
// -----------------------------------------------------------------------------
// Локальные (static) функции
// -----------------------------------------------------------------------------
static uint8_t Receive_FW_Command(Bootloader_t *bl);
/**
* @brief Проверка после сброса MCU.
* Определяет причину предыдущего сброса, проверяет ошибки и при необходимости
* выставляет соответствующие биты в структуре ошибок бутлоадера.
*/
void Bootloader_StartCheck(Bootloader_t *bl)
{
uint32_t ErrCodeBoot = 0;
uint32_t ErrCntBoot = 0;
// Проверка watchdog reset (IWDGRSTF или WWDGRSTF в RCC->CSR)
if (__HAL_RCC_GET_FLAG(RCC_FLAG_IWDGRST) || __HAL_RCC_GET_FLAG(RCC_FLAG_WWDGRST))
{
//SaveErrorCode(0x0D0D);
__HAL_RCC_CLEAR_RESET_FLAGS(); // Очистить флаги сброса, чтобы не повторялось
}
// Чтение сохранённого кода ошибки и количества сбоев
ErrCodeBoot = GetErrorCode();
ErrCntBoot = GetErrorCnt();
// Если ошибок было больше 5, фиксируем тип ошибки и уходим в бутлоадер
// Данные ошибки фиксируются только в прерываниях бутлоадера. Hardfault в прерывании приложения не считается
if(ErrCntBoot > 5)
{
ClearErrorCode();
if(ErrCodeBoot == 0xDEAD) // HardFault
{
ResetKey();
bl->error.bit.hardfault_cycle = 1;
bl->state = BL_STATE_ERROR;
}
else if(ErrCodeBoot == 0xBEEF) // MemManage
{
ResetKey();
bl->error.bit.memmanage_cycle = 1;
bl->state = BL_STATE_ERROR;
}
/*else if(ErrCodeBoot == 0x0D0D) пока хз надо ли
{
ResetKey();
bl->error.bit.watchdog_reset = 1; // Добавь бит в структуру BootloaderError_
bl->state = BL_STATE_ERROR;
}*/
}
}
/**
* @brief Инициализация периферии бутлоадера (UART, CAN, системный такт).
* Привязывает дескрипторы HAL к структуре бутлоадера и задаёт
* начальный адрес приложения.
*/
void Bootloader_Init(Bootloader_t *bl)
{
HAL_Init();
Boot_SystemClock_Config();
MX_BOOT_UART_Init();
MX_BOOT_CAN_Init();
// Привязка дескрипторов к структуре бутлоадера
bl->huart = &huart_boot;
bl->hcan = &hcan_boot;
bl->TxHeader.DLC = 8;
bl->TxHeader.StdId = 123;
bl->addr = MAIN_APP_START_ADR; // адрес начала приложения
}
/**
* @brief Основной цикл работы бутлоадера (машина состояний).
* Обрабатывает состояния INIT, IDLE, RECEIVE, WRITE, ERASE, JUMP и ERROR.
*/
void Bootloader_Task(Bootloader_t *bl)
{
int receive_uart_flag;
switch (bl->state)
{
case BL_STATE_INIT:
/*
* Состояние инициализации.
* - включаем индикацию (LED),
* - проверяем ошибки,
* - читаем "ключ" (метку, что приложение уже записано).
* Если ключ установлен -> сразу переход в приложение.
* Иначе -> переходим в режим ожидания команд от хоста (IDLE),
* инициализируем интерфейсы (CAN/UART, CRC и т.д.).
*/
bl->prev_state = bl->state;
MX_BOOT_GPIO_Init();
Bootloader_StartCheck(bl);
if ((ReadKey() == BL_KEY_APP_WRITTEN))
{
bl->state = BL_STATE_JUMP_TO_APP;
}
else
{
bl->state = BL_STATE_IDLE;
Bootloader_Init(bl);
}
break;
case BL_STATE_IDLE:
/*
* Состояние ожидания команд.
* - если ошибка уже зафиксирована -> переход в ERROR,
* - если это первый вход в IDLE -> отправляем "готов" (0x00) по CAN/UART,
* - далее слушаем команды от хоста (erase, write, jump и т.п.).
* Неизвестная команда -> ошибка.
*/
if(bl->error.all)
{
bl->prev_state = bl->state;
bl->state = BL_STATE_ERROR;
break;
}
if((bl->state != bl->prev_state) && (bl->prev_state != BL_STATE_ERROR))
{
TXDataBoot[0] = 0x00;
res_hal = HAL_CAN_AddTxMessage(bl->hcan, &bl->TxHeader, TXDataBoot, &TxMailBoxBoot);
res_hal = HAL_UART_Transmit(bl->huart, TXDataBoot, 1, 100);
}
bl->prev_state = bl->state;
if (Receive_FW_Command(bl) == 0xFF)
{
bl->error.bit.unknown_cmd = 1;
bl->state = BL_STATE_ERROR;
}
break;
case BL_STATE_RESET:
/*
* Состояние сброса.
* Вызывает системный reset через NVIC -> контроллер запускается заново.
*/
NVIC_SystemReset();
break;
case BL_STATE_ERASE:
/*
* Состояние стирания Flash.
* - сбрасываем "ключ" приложения,
* - стираем область памяти под приложение,
* - при успехе возвращаемся в IDLE,
* - при ошибке отмечаем ошибку стирания и уходим в ERROR.
* По завершению гасим LED.
*/
bl->prev_state = bl->state;
EraseKey();
if (FLASH_Erase_App() == HAL_OK)
{
HAL_Delay(50);
bl->state = BL_STATE_IDLE;
}
else
{
bl->error.bit.erase_err = 1;
bl->state = BL_STATE_ERROR;
}
LED_BOOT_OFF();
break;
case BL_STATE_RECEIVE_UART:
case BL_STATE_RECEIVE_CAN:
/*
* Состояние приёма страницы прошивки от хоста.
* - различаем, пришло ли по UART или CAN,
* - отправляем ACK (0x00),
* - читаем блок данных (страницу) в буфер,
* - после приёма проверяем CRC полученного блока,
* - если CRC не совпадает -> очищаем буфер, фиксируем ошибку и уходим в ERROR.
* По завершению приёма гасим LED.
*/
receive_uart_flag = (bl->state == BL_STATE_RECEIVE_UART) ? 1 : 0;
TXDataBoot[0] = 0x00;
bl->prev_state = bl->state;
if(receive_uart_flag)
{
res_hal = HAL_UART_Transmit(bl->huart, TXDataBoot, 1, 100);
Bootloader_UART_Receive_Page(bl);
}
else
{
res_hal = HAL_CAN_AddTxMessage(bl->hcan, &bl->TxHeader, TXDataBoot, &TxMailBoxBoot);
Bootloader_CAN_Receive_Page(bl);
}
uint32_t crc_calculated = CRC32_Compute((uint8_t *)bl->fw_buffer, bl->fw_len);
if(crc_calculated != bl->fw_crc)
{
for(int i = 0; i < bl->fw_len; i++)
{
bl->fw_buffer[i] = 0;
}
bl->error.bit.crc_err = 1;
bl->state = BL_STATE_ERROR;
}
LED_BOOT_OFF();
break;
case BL_STATE_WRITE:
/*
* Состояние записи страницы прошивки во Flash.
* - пытаемся записать буфер в указанную область памяти,
* - если успешно -> возвращаемся в IDLE (ждём следующего блока),
* - если ошибка -> фиксируем ошибку записи и уходим в ERROR.
* После завершения гасим LED.
*/
bl->prev_state = bl->state;
if (FLASH_Write_Page(&bl->addr, bl->fw_buffer, bl->fw_len) == HAL_OK)
{
bl->state = BL_STATE_IDLE;
}
else
{
bl->error.bit.write_err = 1;
bl->state = BL_STATE_ERROR;
}
LED_BOOT_OFF();
break;
case BL_STATE_JUMP_TO_APP:
/*
* Состояние перехода в приложение.
* - выполняем проверку корректности прошивки (Verify_Firmware),
* - если проверка пройдена -> устанавливаем "ключ" приложения,
* чтобы пометить прошивку как валидную,
* - если проверка не пройдена -> ошибка verify и переход в ERROR.
* В случае успеха вызываем JumpToApplication(), передавая управление основному коду.
*/
bl->prev_state = bl->state;
if (Verify_Firmware() == HAL_OK)
{
EraseKey();
SetKey();
}
else
{
bl->error.bit.verify_err = 1;
bl->state = BL_STATE_ERROR;
break;
}
JumpToApplocation();
break;
case BL_STATE_JUMP_TO_BOOT:
/*
* Состояние возврата в bootloader.
*/
bl->prev_state = bl->state;
JumpToBootloader();
break;
case BL_STATE_ERROR:
/*
* Состояние ошибки.
* - при первом входе в ERROR отправляем код ошибки (0xFF + код ошибки),
* - продолжаем слушать команды, чтобы можно было сбросить или стереть Flash,
* - мигаем LED раз в 500 мс для визуальной индикации ошибки.
*/
if(bl->state != bl->prev_state)
{
TXDataBoot[0] = 0xFF;
TXDataBoot[1] = (bl->error.all >> 8) & (0xFF);
TXDataBoot[2] = bl->error.all & (0xFF);
res_hal = HAL_CAN_AddTxMessage(bl->hcan, &bl->TxHeader, TXDataBoot, &TxMailBoxBoot);
res_hal = HAL_UART_Transmit(bl->huart, TXDataBoot, 1, 100);
}
bl->prev_state = bl->state;
if (Receive_FW_Command(bl) == 0xFF)
{
bl->error.bit.unknown_cmd = 1;
bl->state = BL_STATE_ERROR;
}
if(HAL_GetTick() - led_err_lasttick > 500)
{
led_err_lasttick = HAL_GetTick();
LED_BOOT_TOOGLE();
}
break;
default:
/*
* Попадание в неизвестное состояние.
* Считается ошибкой: ставим unknown_cmd и переходим в ERROR.
*/
bl->error.bit.unknown_cmd = 1;
bl->state = BL_STATE_ERROR;
break;
}
}
/**
* @brief Устанавливает новое состояние бутлоадера в зависимости от команды.
* @param bl: указатель на структуру бутлоадера
* @param cmd: команда бутлоадера (BootloaderCommand_t)
* @param uart_flag: 1 — команда пришла по UART, 0 — по CAN
* @retval 0x00 — команда успешно обработана, 0xFF — неизвестная команда
*/
static uint8_t SetBootState(Bootloader_t *bl, BootloaderCommand_t cmd, uint8_t uart_flag)
{
switch(cmd)
{
case CMD_ERASE: // команда: стереть Flash
bl->state = BL_STATE_ERASE;
return 0x00;
case CMD_START_RECEIVE: // команда: принять блок
if(uart_flag)
bl->state = BL_STATE_RECEIVE_UART;
else
bl->state = BL_STATE_RECEIVE_CAN;
return 0x00;
case CMD_WRITE: // команда: записать блок
bl->state = BL_STATE_WRITE;
return 0x00;
case CMD_GOTOAPP: // команда: прыжок в приложение
bl->state = BL_STATE_JUMP_TO_APP;
return 0x00;
case CMD_RESET: // команда: прыжок в приложение
bl->state = BL_STATE_RESET;
return 0x00;
case CMD_GOTOBOOT: // команда: прыжок в бутлоадер
bl->state = BL_STATE_JUMP_TO_BOOT;
case CMD_PING: // команда: пинг, отправка текущего состояния бутлоадера
bl->prev_state = 0; // обнуляем предыдущее состоояние, чтобы снова отправить комманду с текущим состоянием
return 0x00;
default:
return 0xFF; // неизвестная команда
}
}
/**
* @brief Обработка команд прошивки по UART или CAN
* @param bl: указатель на структуру бутлоадера
* @retval 0x00 - команда принята и обработана, 0xFF - ошибка
*/
static uint8_t Receive_FW_Command(Bootloader_t *bl)
{
BootloaderCommand_t cmd = 0;
HAL_StatusTypeDef res = HAL_ERROR;
uint8_t ret_val = 0x00;
// ---------------------------
// Чтение команды по UART
// ---------------------------
cmd = Bootloader_UART_Receive(bl); // таймаут 10 ms
if (cmd != NO_CMD)
{
ret_val = SetBootState(bl, cmd, 1);
}
// ---------------------------
// Чтение команды по CAN
// ---------------------------
cmd = Bootloader_CAN_Receive(bl);
if (cmd != NO_CMD)
{
ret_val = SetBootState(bl, cmd, 0);
}
#ifdef TEST_CAN
TxHeaderBoot.StdId = 0x200; // ID OF MESSAGE
TxHeaderBoot.ExtId = 0; // STANDART FRAME (NOT EXTENTED)
TxHeaderBoot.RTR = CAN_RTR_DATA; // TRANSMIT DATA OR
TxHeaderBoot.IDE = CAN_ID_STD; // STANDART FRAME
TxHeaderBoot.DLC = 8; // DATA SIZE
TxHeaderBoot.TransmitGlobalTime = DISABLE; //THIS MODE IS NOT USED, SO DISABLE
uint8_t asd[8] = "ABCDEFGL";
res_hal = HAL_CAN_AddTxMessage(&hcan_boot, &TxHeaderBoot, asd, &TxMailBoxBoot); // add to mail for transmit
HAL_Delay(1000);
#endif
if((bl->state != BL_STATE_IDLE) && (bl->state != BL_STATE_ERROR))
{
LED_BOOT_ON();
}
return ret_val;
}
/**
* @brief Вычисление CRC32 блока данных.
* @param data: указатель на массив данных
* @param length: длина массива в байтах
* @retval CRC32 вычисленное значение
*/
uint32_t CRC32_Compute(const uint8_t* data, uint32_t length)
{
const uint32_t polynomial = 0x04C11DB7;
uint32_t crc = 0xFFFFFFFF;
for(uint32_t i = 0; i < length; i++)
{
crc ^= ((uint32_t)data[i] << 24);
for(uint8_t j = 0; j < 8; j++)
{
if(crc & 0x80000000)
crc = (crc << 1) ^ polynomial;
else
crc <<= 1;
}
}
return crc ^ 0xFFFFFFFF;
}
/**
* @brief Конфигурация системного тактирования (должна быть переопределена пользователем).
*/
__WEAK void Boot_SystemClock_Config(void)
{
}
/**
* @brief Обработчик ошибок (может быть переопределён пользователем).
*/
__WEAK void Error_Handler(void)
{
while(1);
}

View File

@@ -41,7 +41,9 @@ extern CAN_HandleTypeDef hcan;
void MX_CAN_Init(void);
/* USER CODE BEGIN Prototypes */
int CAN_send(uint16_t data[], int Addr, int Qua);
void Setup_CAN_addr(uint8_t mode);
void CAN_filterConfig(void);
/* USER CODE END Prototypes */
#ifdef __cplusplus

10
Core/Inc/crc16.h Normal file
View File

@@ -0,0 +1,10 @@
#include "stdint.h"
typedef unsigned short WORD;
typedef unsigned char byte;
unsigned int get_crc_ccitt(unsigned int crc, unsigned int *buf, unsigned long size );
unsigned int get_crc_16(unsigned int crc,unsigned int *buf,unsigned long size );
unsigned int get_crc_16b(unsigned int crc,unsigned int *buf,unsigned long size );
int get_crc16(uint16_t *buf, int size );

20
Core/Inc/eeprom.h Normal file
View File

@@ -0,0 +1,20 @@
#ifndef __EEPROM_H
#define __EEPROM_H
#ifdef __cplusplus
extern "C" {
#endif
#include "stm32f1xx_hal.h"
#define FLASH_EEPROM_BASE 0x0801F800
#define FLASH_STARTO 0xBABEFACE
void putIntoEeprom(uint16_t, uint16_t*);
uint16_t watInTheFlash(uint32_t);
#ifdef __cplusplus
}
#endif
#endif /* __EEPROM_H */

30
Core/Inc/lampa.h Normal file
View File

@@ -0,0 +1,30 @@
#ifndef __LAMPA_H
#define __LAMPA_H
/*
* Применяется метод Слой аппаратных абстракции(HAL) так он последний(модный),
* тут описано библиотечные вызовы
*/
#ifdef __cplusplus
extern "C" {
#endif
#include "main.h"
#include "stdbool.h"
#define Delay 1000
#define numUno 1
#define numNul 0
void ReadEnteres(void);
uint16_t ReadJumpers(void);
uint16_t TestJumper(void);
void ReadSeanus(void);
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -101,6 +101,7 @@ void Error_Handler(void);
#define IN_08_GPIO_Port GPIOB
#define IN_07_Pin GPIO_PIN_15
#define IN_07_GPIO_Port GPIOB
#define IN_07_EXTI_IRQn EXTI15_10_IRQn
#define PVT4_Pin GPIO_PIN_6
#define PVT4_GPIO_Port GPIOC
#define PVT3_Pin GPIO_PIN_7
@@ -114,9 +115,83 @@ void Error_Handler(void);
#define LED1_Pin GPIO_PIN_6
#define LED1_GPIO_Port GPIOB
/* USER CODE BEGIN Private defines */
#define Jselect SELEKT_PCH
/////////// USER define /////////
#define Jselect HAL_GPIO_ReadPin(Jselect_GPIO_Port, Jselect_Pin)
#define Jselect_Pin GPIO_PIN_14
#define Jselect_GPIO_Port GPIOC
#define LED_0_OFF HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET) //Set or clear the selected data port bit
#define LED_0_ON HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_RESET) //??? ?????? ?? ??????????
#define LED_0_TGL HAL_GPIO_TogglePin(LED0_GPIO_Port, LED0_Pin)
#define LED_1_OFF HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET) //Set or clear the selected data port bit
#define LED_1_ON HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET) //??? ?????? ?? ??????????
#define LED_1_TGL HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin)
#define LED_2_ON HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET) //Set or clear the selected data port bit
#define LED_2_OFF HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET) //??? ?????? ?? ??????????
#define LED_2_TGL HAL_GPIO_TogglePin(LED2_GPIO_Port, LED2_Pin)
#define LED_3_ON HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_SET) //Set or clear the selected data port bit
#define LED_3_OFF HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET) //??? ?????? ?? ??????????
#define LED_3_TGL HAL_GPIO_TogglePin(LED3_GPIO_Port, LED3_Pin)
#define Pvt1_ON HAL_GPIO_WritePin(PVT1_GPIO_Port, PVT1_Pin, GPIO_PIN_SET) //Set or clear the selected data port bit
#define Pvt1_OFF HAL_GPIO_WritePin(PVT1_GPIO_Port, PVT1_Pin, GPIO_PIN_RESET) //??? ?????? ?? ??????????
#define Pvt1_TGL HAL_GPIO_TogglePin(PVT1_GPIO_Port, PVT1_Pin)
#define Pvt2_ON HAL_GPIO_WritePin(PVT2_GPIO_Port, PVT2_Pin, GPIO_PIN_SET) //set - ????????????? ???, reset - ??????? ???
#define Pvt2_OFF HAL_GPIO_WritePin(PVT2_GPIO_Port, PVT2_Pin, GPIO_PIN_RESET) //????? ??????? ? main.h ??????? ?????? ?????????????
#define Pvt2_TGL HAL_GPIO_TogglePin(PVT2_GPIO_Port, PVT2_Pin)
#define Pvt3_ON HAL_GPIO_WritePin(PVT3_GPIO_Port, PVT3_Pin, GPIO_PIN_SET)
#define Pvt3_OFF HAL_GPIO_WritePin(PVT3_GPIO_Port, PVT3_Pin, GPIO_PIN_RESET)
#define Pvt3_TGL HAL_GPIO_TogglePin(PVT3_GPIO_Port, PVT3_Pin)
#define Pvt4_ON HAL_GPIO_WritePin(PVT4_GPIO_Port, PVT4_Pin, GPIO_PIN_SET)
#define Pvt4_OFF HAL_GPIO_WritePin(PVT4_GPIO_Port, PVT4_Pin, GPIO_PIN_RESET)
#define Pvt4_TGL HAL_GPIO_TogglePin(PVT4_GPIO_Port, PVT4_Pin)
#define IN_01 HAL_GPIO_ReadPin(IN_01_GPIO_Port, IN_01_Pin) // ???????? ??1 (??????? ???????????? ???????????)
#define IN_02 HAL_GPIO_ReadPin(IN_02_GPIO_Port, IN_02_Pin) // ???????? ??2 (??????? ???????????? ?????????)
#define IN_03 HAL_GPIO_ReadPin(IN_03_GPIO_Port, IN_03_Pin) // ???????? ??3 (??????? ??. ??????, ???? ?????????, ????)
#define IN_04 HAL_GPIO_ReadPin(IN_04_GPIO_Port, IN_04_Pin) // ???????? ??4 (??????? ???????? ???? ? ?????????? +)
#define IN_05 HAL_GPIO_ReadPin(IN_05_GPIO_Port, IN_05_Pin) // ???????? ??5 (??????? ???????? ???? ? ?????????? )
#define IN_06 HAL_GPIO_ReadPin(IN_06_GPIO_Port, IN_06_Pin) // ???????? ??6 (??????? ?????????)
#define IN_07 HAL_GPIO_ReadPin(IN_07_GPIO_Port, IN_07_Pin) // ???????? 3? ??????? 380 ?
#define IN_08 HAL_GPIO_ReadPin(IN_08_GPIO_Port, IN_08_Pin) // ????? ??????????
#define IN_09 HAL_GPIO_ReadPin(IN_09_GPIO_Port, IN_09_Pin) // ?????? ??????????
#define IN_10 HAL_GPIO_ReadPin(IN_10_GPIO_Port, IN_10_Pin) // ?????? ? ???? 24 ?
#define IN_11 HAL_GPIO_ReadPin(IN_11_GPIO_Port, IN_11_Pin) // ???????? ??????? ???
#define IN_12 HAL_GPIO_ReadPin(IN_12_GPIO_Port, IN_12_Pin) // ??????
#define IN_13 HAL_GPIO_ReadPin(IN_13_GPIO_Port, IN_13_Pin) // ??????
#define IN_14 HAL_GPIO_ReadPin(IN_14_GPIO_Port, IN_14_Pin) // ???????? ??????? ???
#define J0 HAL_GPIO_ReadPin(J0_GPIO_Port, J0_Pin) //Read the specified input port pin
#define J1 HAL_GPIO_ReadPin(J1_GPIO_Port, J1_Pin)
#define J2 HAL_GPIO_ReadPin(J2_GPIO_Port, J2_Pin)
#define J3 HAL_GPIO_ReadPin(J3_GPIO_Port, J3_Pin)
/////////////////////////////////
int Isit(int num, int i, int z);
typedef struct // ñòðóêòóðà ôëàãîâ
{
uint8_t force_pause:1;
uint32_t pause;
// uint8_t
// uint16_t
}FLAG;
/* USER CODE END Private defines */
#ifdef __cplusplus

25
Core/Inc/message.h Normal file
View File

@@ -0,0 +1,25 @@
#ifndef MESSAGE_H
#define MESSAGE_H
#include "stdint.h"
#include "struc.h"
typedef unsigned char CHAR;
#define Modbus_LEN 0x000080
#define Modbus ((WORDE *)modbus)
#define Params ((WORDE *)params)
extern uint16_t Mode;
extern uint16_t modbus[],params[],archiv[],county[],espero[];
extern LONGE* outputs;
extern uint16_t Maska[][8];
void Save_params(void);
void Load_params(void);
void Default_params(void);
#endif //MESSAGE_H

77
Core/Inc/package.h Normal file
View File

@@ -0,0 +1,77 @@
#ifndef PACKAGE
#define PACKAGE
#define PROTOKOL 3
#define m_FAST 0
#define m_SLOW 1
#define keys 0x0 // адрес повтораемой посылки «keys»
#define Inputs Modbus[0x0]
#define Alarms Modbus[0x1]
#define Errors Modbus[0x2]
#define Alarm_mask Modbus[0x8]
#define Error_mask Modbus[0x9]
#define Jumpers Modbus[0x10]
#define Buttons Modbus[0x11]
#define jumpers modbus[0x10]
#define buttons modbus[0x11]
#define Squazh_U (modbus+0x18)
#define Sleep_time modbus[0x48]
#define Squazh_L (modbus+0x30)
#define Cancount (modbus+0x60) // пауза между посылками CAN
#define CanWait (modbus+0x62) // пауза после прохождениа цикла
#define CanRestart (modbus+0x64) // перезапуск посылки
#define CanRptVez modbus[0x66] // кол-во повторений посылки «keys»
#define CanRptLen modbus[0x67] // длина повтораемой посылки «keys»
#define Brightness modbus[0x68] // аркость сигнальной лампочки
#define Lightness modbus[0x6A] // управление сигнальной лампочки
#define cancyclo 0x78 // его адрес
#define CanCycle (modbus+0x78) // счетчик циклов CAN
#define CanRound (modbus+0x7A) // счетчик еще более полных циклов CAN
#define Protokol modbus[125]
#define LastMode modbus[126]
#define Commands modbus[127]
#define command params[128]
#define bit_command Params[128]
#define cTestLamp bit_command.bit.bit0
#define cDefParam bit_command.bit.bit1
#define cSaveParam bit_command.bit.bit2
#define cLoadParam bit_command.bit.bit3
#define cTermoCal bit_command.bit.bit4
#define cKoefCalc bit_command.bit.bit5
#define cSecretBt bit_command.bit.bit6
#define cCanReset bit_command.bit.bit7
#define cRawMeat bit_command.bit.bit8
#define cCanReset bit_command.bit.bit7
#define cReset bit_command.bit.bitF
/*
#define cTestLamp Modbus[127].bit.bit0
#define cDefParam Modbus[127].bit.bit1
#define cSaveParam Modbus[127].bit.bit2
#define cLoadParam Modbus[127].bit.bit3
#define cTermoCal Modbus[127].bit.bit4
#define cKoefCalc Modbus[127].bit.bit5
#define cSecretBt Modbus[127].bit.bit6
#define cCanReset Modbus[127].bit.bit7
#define cRawMeat Modbus[127].bit.bit8
#define cCanReset Modbus[127].bit.bit7
#define cReset Modbus[127].bit.bitF
*/
#endif //PACKAGE

View File

@@ -58,6 +58,7 @@ void SysTick_Handler(void);
void USB_HP_CAN1_TX_IRQHandler(void);
void USB_LP_CAN1_RX0_IRQHandler(void);
void TIM4_IRQHandler(void);
void EXTI15_10_IRQHandler(void);
void TIM8_UP_IRQHandler(void);
void UART4_IRQHandler(void);
/* USER CODE BEGIN EFP */

153
Core/Inc/struc.h Normal file
View File

@@ -0,0 +1,153 @@
#ifndef __STRUC_H
#define __STRUC_H
#ifdef __cplusplus
extern "C" {
#endif
typedef union
{
struct
{
unsigned char bit0: 1;
unsigned char bit1: 1;
unsigned char bit2: 1;
unsigned char bit3: 1;
unsigned char bit4: 1;
unsigned char bit5: 1;
unsigned char bit6: 1;
unsigned char bit7: 1;
} bit;
struct
{
unsigned char quad_0 :4;
unsigned char quad_1 :4;
} qua;
unsigned char all;
} BAITE;
typedef union
{
struct
{
unsigned short int bit0: 1;
unsigned short int bit1: 1;
unsigned short int bit2: 1;
unsigned short int bit3: 1;
unsigned short int bit4: 1;
unsigned short int bit5: 1;
unsigned short int bit6: 1;
unsigned short int bit7: 1;
unsigned short int bit8: 1;
unsigned short int bit9: 1;
unsigned short int bitA: 1;
unsigned short int bitB: 1;
unsigned short int bitC: 1;
unsigned short int bitD: 1;
unsigned short int bitE: 1;
unsigned short int bitF: 1;
} bit;
struct
{
unsigned short int quad_0 :4;
unsigned short int quad_1 :4;
unsigned short int quad_2 :4;
unsigned short int quad_3 :4;
} qua;
struct
{
unsigned short int byte_0 :8;
unsigned short int byte_1 :8;
} byt;
unsigned short int all;
} WORDE;
typedef union
{
struct
{
unsigned int bit00: 1;
unsigned int bit01: 1;
unsigned int bit02: 1;
unsigned int bit03: 1;
unsigned int bit04: 1;
unsigned int bit05: 1;
unsigned int bit06: 1;
unsigned int bit07: 1;
unsigned int bit08: 1;
unsigned int bit09: 1;
unsigned int bit0A: 1;
unsigned int bit0B: 1;
unsigned int bit0C: 1;
unsigned int bit0D: 1;
unsigned int bit0E: 1;
unsigned int bit0F: 1;
unsigned int bit10: 1;
unsigned int bit11: 1;
unsigned int bit12: 1;
unsigned int bit13: 1;
unsigned int bit14: 1;
unsigned int bit15: 1;
unsigned int bit16: 1;
unsigned int bit17: 1;
unsigned int bit18: 1;
unsigned int bit19: 1;
unsigned int bit1A: 1;
unsigned int bit1B: 1;
unsigned int bit1C: 1;
unsigned int bit1D: 1;
unsigned int bit1E: 1;
unsigned int bit1F: 1;
} bit;
struct
{
unsigned int quad_0 :4;
unsigned int quad_1 :4;
unsigned int quad_2 :4;
unsigned int quad_3 :4;
unsigned int quad_4 :4;
unsigned int quad_5 :4;
unsigned int quad_6 :4;
unsigned int quad_7 :4;
} qua;
struct
{
unsigned int byte_0 :8;
unsigned int byte_1 :8;
unsigned int byte_2 :8;
unsigned int byte_3 :8;
} byt;
struct
{
unsigned int word_0 :16;
unsigned int word_1 :16;
} wrd;
unsigned int all;
} LONGE;
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -32,12 +32,15 @@ extern "C" {
/* USER CODE END Includes */
extern TIM_HandleTypeDef htim2;
extern TIM_HandleTypeDef htim4;
/* USER CODE BEGIN Private defines */
/* USER CODE END Private defines */
void MX_TIM2_Init(void);
void MX_TIM4_Init(void);
/* USER CODE BEGIN Prototypes */

View File

@@ -21,6 +21,27 @@
#include "can.h"
/* USER CODE BEGIN 0 */
#include "message.h"
#include "gpio.h"
#include "boot_jump.h"
void CAN_filterConfig(void);
CAN_TxHeaderTypeDef TxHeader;
CAN_RxHeaderTypeDef RxHeader;
CAN_FilterTypeDef sFilterConfig;
CAN_TxHeaderTypeDef msgHeaderSend;
uint8_t msgDataSend[8];
uint32_t mailBoxNum = 0;
uint8_t TxData[8];
uint8_t RxData[8];
uint32_t TxMailbox;
uint32_t TX_box_ID = 0;
uint32_t RX_box_ID = 0;
uint32_t BC_box_ID = 0;
/* USER CODE END 0 */
@@ -55,6 +76,20 @@ void MX_CAN_Init(void)
}
/* USER CODE BEGIN CAN_Init 2 */
CAN_filterConfig();
// CAN start
if (HAL_CAN_Start(&hcan) != HAL_OK)
{
Error_Handler();
}
// CAN notifications (interrupts)
if (HAL_CAN_ActivateNotification(&hcan, CAN_IT_RX_FIFO0_MSG_PENDING | CAN_IT_TX_MAILBOX_EMPTY) != HAL_OK)
{
Error_Handler();
}
/* USER CODE END CAN_Init 2 */
}
@@ -124,5 +159,151 @@ void HAL_CAN_MspDeInit(CAN_HandleTypeDef* canHandle)
}
/* USER CODE BEGIN 1 */
void CAN_filterConfig(void)
{
sFilterConfig.FilterBank = 0;
sFilterConfig.FilterMode = CAN_FILTERMODE_IDMASK;
sFilterConfig.FilterScale = CAN_FILTERSCALE_32BIT;
sFilterConfig.FilterIdHigh = 0x0000;
sFilterConfig.FilterIdLow = 0x0000;
sFilterConfig.FilterMaskIdHigh = 0x0000;
sFilterConfig.FilterMaskIdLow = 0x0000;
sFilterConfig.FilterFIFOAssignment = CAN_RX_FIFO0;
sFilterConfig.FilterActivation = ENABLE;
sFilterConfig.SlaveStartFilterBank = 14;
if (HAL_CAN_ConfigFilter(&hcan, &sFilterConfig) != HAL_OK)
{
Error_Handler();
} }
void HAL_CAN_RxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan_i)
{
CAN_RxHeaderTypeDef msgHeader;
uint8_t msgData[8];
unsigned int adr,qua;
unsigned short Data[4];
if (HAL_CAN_GetRxMessage(hcan_i, CAN_RX_FIFO0, &msgHeader, msgData) != HAL_OK)
{
/* Reception Error */
Error_Handler();
}
if(msgData[0] == CMD_GOTOBOOT)
{
JumpToBootloader();
}
else if(msgData[0] == CMD_RESET)
{
NVIC_SystemReset();
}
if((msgHeader.ExtId & 0xFF00000) != RX_box_ID)
if((msgHeader.ExtId & 0xFF00000) != BC_box_ID) return;
adr = msgHeader.ExtId & 0xFFFF;
qua = msgHeader.DLC/2;
Data[0] = msgData[0]; Data[0] = (Data[0]<<8) | msgData[1];
Data[1] = msgData[2]; Data[1] = (Data[1]<<8) | msgData[3];
Data[2] = msgData[4]; Data[2] = (Data[2]<<8) | msgData[5];
Data[3] = msgData[6]; Data[3] = (Data[3]<<8) | msgData[7];
if(qua ) if(adr < Modbus_LEN) modbus[adr] = Data[0]; adr++;
if(qua>1) if(adr < Modbus_LEN) modbus[adr] = Data[1]; adr++;
if(qua>2) if(adr < Modbus_LEN) modbus[adr] = Data[2]; adr++;
if(qua>3) if(adr < Modbus_LEN) modbus[adr] = Data[3];
LED_1_TGL;
}
int CAN_send(uint16_t data[], int Addr, int Qua)
{
uint16_t wait = 1000;
static uint8_t att=0;
uint8_t i;
while(wait-- && (HAL_CAN_GetTxMailboxesFreeLevel(&hcan) == 0));
if (HAL_CAN_GetTxMailboxesFreeLevel(&hcan) != 0)
{
msgHeaderSend.IDE = CAN_ID_EXT;
msgHeaderSend.ExtId = TX_box_ID | (Addr & 0xFFFF);
msgHeaderSend.DLC = Qua*2;
msgDataSend[0] = (data[Addr ]>>8) & 0x00ff;
msgDataSend[1] = (data[Addr ] ) & 0x00ff;
msgDataSend[2] = (data[Addr+1]>>8) & 0x00ff;
msgDataSend[3] = (data[Addr+1] ) & 0x00ff;
msgDataSend[4] = (data[Addr+2]>>8) & 0x00ff;
msgDataSend[5] = (data[Addr+2] ) & 0x00ff;
msgDataSend[6] = (data[Addr+3]>>8) & 0x00ff;
msgDataSend[7] = (data[Addr+3] ) & 0x00ff;
HAL_CAN_AddTxMessage(&hcan, &msgHeaderSend, msgDataSend, &mailBoxNum);
att=0;
return 1;
}
else
{
if(att>=3)
{
MX_CAN_Init();
LED_0_OFF;
LED_1_OFF;
for(i=0;i<8;i++)
{
LED_1_TGL; HAL_Delay(30);
LED_1_TGL; HAL_Delay(30);
LED_0_TGL; HAL_Delay(30);
LED_0_TGL; HAL_Delay(30);
} }
else
{
att++;
HAL_CAN_Stop(&hcan);
HAL_CAN_Start(&hcan);
LED_0_OFF;
LED_1_OFF;
for(i=0;i<10;i++)
{
LED_0_TGL;
LED_1_TGL; HAL_Delay(30);
} }
return 0;
} }
void Setup_CAN_addr(uint8_t mode)
{
BC_box_ID = 0x9F<<20;
RX_box_ID = (0x80+mode)<<20;
TX_box_ID = RX_box_ID | (1L<<28);
}
// Успешная отправка - моргание диодом
void HAL_CAN_TxMailbox0CompleteCallback(CAN_HandleTypeDef *hcan)
{
LED_0_TGL;
}
void HAL_CAN_TxMailbox1CompleteCallback(CAN_HandleTypeDef *hcan)
{
LED_0_TGL;
}
void HAL_CAN_TxMailbox2CompleteCallback(CAN_HandleTypeDef *hcan)
{
LED_0_TGL;
}
// Ошибки: выключение диода
void HAL_CAN_ErrorCallback(CAN_HandleTypeDef *hcan)
{
LED_0_OFF;
}
/* USER CODE END 1 */

196
Core/Src/crc16.c Normal file
View File

@@ -0,0 +1,196 @@
#include "crc16.h"
#define MAKE_TABS 0 /* Builds tables below */
#define FAST_CRC 1 /* If fast CRC should be used */
#define ONLY_CRC16 1
#define Poln 0xA001
#if FAST_CRC & !MAKE_TABS
#if !ONLY_CRC16
static WORD crc_ccitt_tab[] = {
0x0000, 0x1021, 0x2042, 0x3063, 0x4084, 0x50a5, 0x60c6, 0x70e7,
0x8108, 0x9129, 0xa14a, 0xb16b, 0xc18c, 0xd1ad, 0xe1ce, 0xf1ef,
0x1231, 0x0210, 0x3273, 0x2252, 0x52b5, 0x4294, 0x72f7, 0x62d6,
0x9339, 0x8318, 0xb37b, 0xa35a, 0xd3bd, 0xc39c, 0xf3ff, 0xe3de,
0x2462, 0x3443, 0x0420, 0x1401, 0x64e6, 0x74c7, 0x44a4, 0x5485,
0xa56a, 0xb54b, 0x8528, 0x9509, 0xe5ee, 0xf5cf, 0xc5ac, 0xd58d,
0x3653, 0x2672, 0x1611, 0x0630, 0x76d7, 0x66f6, 0x5695, 0x46b4,
0xb75b, 0xa77a, 0x9719, 0x8738, 0xf7df, 0xe7fe, 0xd79d, 0xc7bc,
0x48c4, 0x58e5, 0x6886, 0x78a7, 0x0840, 0x1861, 0x2802, 0x3823,
0xc9cc, 0xd9ed, 0xe98e, 0xf9af, 0x8948, 0x9969, 0xa90a, 0xb92b,
0x5af5, 0x4ad4, 0x7ab7, 0x6a96, 0x1a71, 0x0a50, 0x3a33, 0x2a12,
0xdbfd, 0xcbdc, 0xfbbf, 0xeb9e, 0x9b79, 0x8b58, 0xbb3b, 0xab1a,
0x6ca6, 0x7c87, 0x4ce4, 0x5cc5, 0x2c22, 0x3c03, 0x0c60, 0x1c41,
0xedae, 0xfd8f, 0xcdec, 0xddcd, 0xad2a, 0xbd0b, 0x8d68, 0x9d49,
0x7e97, 0x6eb6, 0x5ed5, 0x4ef4, 0x3e13, 0x2e32, 0x1e51, 0x0e70,
0xff9f, 0xefbe, 0xdfdd, 0xcffc, 0xbf1b, 0xaf3a, 0x9f59, 0x8f78,
0x9188, 0x81a9, 0xb1ca, 0xa1eb, 0xd10c, 0xc12d, 0xf14e, 0xe16f,
0x1080, 0x00a1, 0x30c2, 0x20e3, 0x5004, 0x4025, 0x7046, 0x6067,
0x83b9, 0x9398, 0xa3fb, 0xb3da, 0xc33d, 0xd31c, 0xe37f, 0xf35e,
0x02b1, 0x1290, 0x22f3, 0x32d2, 0x4235, 0x5214, 0x6277, 0x7256,
0xb5ea, 0xa5cb, 0x95a8, 0x8589, 0xf56e, 0xe54f, 0xd52c, 0xc50d,
0x34e2, 0x24c3, 0x14a0, 0x0481, 0x7466, 0x6447, 0x5424, 0x4405,
0xa7db, 0xb7fa, 0x8799, 0x97b8, 0xe75f, 0xf77e, 0xc71d, 0xd73c,
0x26d3, 0x36f2, 0x0691, 0x16b0, 0x6657, 0x7676, 0x4615, 0x5634,
0xd94c, 0xc96d, 0xf90e, 0xe92f, 0x99c8, 0x89e9, 0xb98a, 0xa9ab,
0x5844, 0x4865, 0x7806, 0x6827, 0x18c0, 0x08e1, 0x3882, 0x28a3,
0xcb7d, 0xdb5c, 0xeb3f, 0xfb1e, 0x8bf9, 0x9bd8, 0xabbb, 0xbb9a,
0x4a75, 0x5a54, 0x6a37, 0x7a16, 0x0af1, 0x1ad0, 0x2ab3, 0x3a92,
0xfd2e, 0xed0f, 0xdd6c, 0xcd4d, 0xbdaa, 0xad8b, 0x9de8, 0x8dc9,
0x7c26, 0x6c07, 0x5c64, 0x4c45, 0x3ca2, 0x2c83, 0x1ce0, 0x0cc1,
0xef1f, 0xff3e, 0xcf5d, 0xdf7c, 0xaf9b, 0xbfba, 0x8fd9, 0x9ff8,
0x6e17, 0x7e36, 0x4e55, 0x5e74, 0x2e93, 0x3eb2, 0x0ed1, 0x1ef0
};
#endif
WORD crc_16_tab[] = {
0x0000, 0xc0c1, 0xc181, 0x0140, 0xc301, 0x03c0, 0x0280, 0xc241,
0xc601, 0x06c0, 0x0780, 0xc741, 0x0500, 0xc5c1, 0xc481, 0x0440,
0xcc01, 0x0cc0, 0x0d80, 0xcd41, 0x0f00, 0xcfc1, 0xce81, 0x0e40,
0x0a00, 0xcac1, 0xcb81, 0x0b40, 0xc901, 0x09c0, 0x0880, 0xc841,
0xd801, 0x18c0, 0x1980, 0xd941, 0x1b00, 0xdbc1, 0xda81, 0x1a40,
0x1e00, 0xdec1, 0xdf81, 0x1f40, 0xdd01, 0x1dc0, 0x1c80, 0xdc41,
0x1400, 0xd4c1, 0xd581, 0x1540, 0xd701, 0x17c0, 0x1680, 0xd641,
0xd201, 0x12c0, 0x1380, 0xd341, 0x1100, 0xd1c1, 0xd081, 0x1040,
0xf001, 0x30c0, 0x3180, 0xf141, 0x3300, 0xf3c1, 0xf281, 0x3240,
0x3600, 0xf6c1, 0xf781, 0x3740, 0xf501, 0x35c0, 0x3480, 0xf441,
0x3c00, 0xfcc1, 0xfd81, 0x3d40, 0xff01, 0x3fc0, 0x3e80, 0xfe41,
0xfa01, 0x3ac0, 0x3b80, 0xfb41, 0x3900, 0xf9c1, 0xf881, 0x3840,
0x2800, 0xe8c1, 0xe981, 0x2940, 0xeb01, 0x2bc0, 0x2a80, 0xea41,
0xee01, 0x2ec0, 0x2f80, 0xef41, 0x2d00, 0xedc1, 0xec81, 0x2c40,
0xe401, 0x24c0, 0x2580, 0xe541, 0x2700, 0xe7c1, 0xe681, 0x2640,
0x2200, 0xe2c1, 0xe381, 0x2340, 0xe101, 0x21c0, 0x2080, 0xe041,
0xa001, 0x60c0, 0x6180, 0xa141, 0x6300, 0xa3c1, 0xa281, 0x6240,
0x6600, 0xa6c1, 0xa781, 0x6740, 0xa501, 0x65c0, 0x6480, 0xa441,
0x6c00, 0xacc1, 0xad81, 0x6d40, 0xaf01, 0x6fc0, 0x6e80, 0xae41,
0xaa01, 0x6ac0, 0x6b80, 0xab41, 0x6900, 0xa9c1, 0xa881, 0x6840,
0x7800, 0xb8c1, 0xb981, 0x7940, 0xbb01, 0x7bc0, 0x7a80, 0xba41,
0xbe01, 0x7ec0, 0x7f80, 0xbf41, 0x7d00, 0xbdc1, 0xbc81, 0x7c40,
0xb401, 0x74c0, 0x7580, 0xb541, 0x7700, 0xb7c1, 0xb681, 0x7640,
0x7200, 0xb2c1, 0xb381, 0x7340, 0xb101, 0x71c0, 0x7080, 0xb041,
0x5000, 0x90c1, 0x9181, 0x5140, 0x9301, 0x53c0, 0x5280, 0x9241,
0x9601, 0x56c0, 0x5780, 0x9741, 0x5500, 0x95c1, 0x9481, 0x5440,
0x9c01, 0x5cc0, 0x5d80, 0x9d41, 0x5f00, 0x9fc1, 0x9e81, 0x5e40,
0x5a00, 0x9ac1, 0x9b81, 0x5b40, 0x9901, 0x59c0, 0x5880, 0x9841,
0x8801, 0x48c0, 0x4980, 0x8941, 0x4b00, 0x8bc1, 0x8a81, 0x4a40,
0x4e00, 0x8ec1, 0x8f81, 0x4f40, 0x8d01, 0x4dc0, 0x4c80, 0x8c41,
0x4400, 0x84c1, 0x8581, 0x4540, 0x8701, 0x47c0, 0x4680, 0x8641,
0x8201, 0x42c0, 0x4380, 0x8341, 0x4100, 0x81c1, 0x8081, 0x4040
};
#endif
#if !ONLY_CRC16
/* CRC-CCITT is based on the polynomial x^16 + x^12 + x^5 + 1. Bits */
/* are sent MSB to LSB. */
unsigned int get_crc_ccitt(unsigned int crc,unsigned int *buf,unsigned long size )
{
#if !(FAST_CRC & !MAKE_TABS)
register int i;
#endif
while (size--) {
#if FAST_CRC & !MAKE_TABS
crc = (crc << 8) ^ crc_ccitt_tab[ (crc >> 8) ^ *buf++ ];
#else
crc ^= (WORD)(*buf++) << 8;
for (i = 0; i < 8; i++) {
if (crc & 0x8000)
crc = (crc << 1) ^ 0x1021;
else
crc <<= 1;
}
#endif
} return crc;
}
#endif
/* CRC-16 is based on the polynomial x^16 + x^15 + x^2 + 1. Bits are */
/* sent LSB to MSB. */
unsigned int get_crc_16(unsigned int crc,unsigned int *buf,unsigned long size )
{
#if !(FAST_CRC & !MAKE_TABS)
register unsigned int i;
register unsigned int ch;
#endif
while (size--) {
#if FAST_CRC & !MAKE_TABS
crc = (crc >> 8) ^ crc_16_tab[ (crc ^ *buf++) & 0xff ];
crc = crc & 0xffff;
#else
ch = *buf++;
for (i = 0; i < 8; i++) {
if ((crc ^ ch) & 1)
crc = (crc >> 1) ^ 0xa001;
else
crc >>= 1;
ch >>= 1;
}
#endif
} return (crc & 0xffff);
}
unsigned int get_crc_16b(unsigned int crc,unsigned int *buf,unsigned long size )
{
unsigned int x, dword, byte;
unsigned long i;
for (i = 0; i < size; i++)
{
x = i % 2;
dword = buf[i/2];
// dword = *buf;
if (x == 0)
{
byte = ((dword >> 8)&0xFF);
}
if (x == 1)
{
byte = (dword & 0xFF);
}
crc = (crc >> 8) ^ crc_16_tab[ (crc ^ (byte) ) & 0xff ];
crc = crc & 0xffff;
// crc = crc + ((byte) & 0xff);
}
return (crc & 0xffff);
}
int get_crc16(uint16_t *buf, int size )
{
int crc16,i,j;
crc16=0xFFFF;
for(i=0;i<size;i++)
{
crc16=crc16^(buf[i]&0xFF);
for (j=0;j<8;j++)
if(crc16&1) crc16=(crc16>>1)^Poln;
else crc16=crc16>>1;
crc16=crc16^((buf[i]>>8)&0xFF);
for (j=0;j<8;j++)
if(crc16&1) crc16=(crc16>>1)^Poln;
else crc16=crc16>>1;
}
return crc16;
}

49
Core/Src/eeprom.c Normal file
View File

@@ -0,0 +1,49 @@
#include "eeprom.h"
void putIntoEeprom(uint16_t lenght, uint16_t* param)
{
uint32_t adr = FLASH_EEPROM_BASE;
//uint32_t p = FLASH_STARTO;
HAL_StatusTypeDef flash_ok = HAL_ERROR;
while(flash_ok != HAL_OK)
{flash_ok = HAL_FLASH_Unlock();}
FLASH_EraseInitTypeDef erase;
uint32_t pageError = 0x0;
erase.TypeErase = FLASH_TYPEERASE_PAGES;
erase.PageAddress = FLASH_EEPROM_BASE;
erase.NbPages = 0x01;
flash_ok = HAL_FLASHEx_Erase(&erase, &pageError);
flash_ok = HAL_ERROR;
while(flash_ok != HAL_OK)
{flash_ok = HAL_FLASH_Lock();}
flash_ok = HAL_ERROR;
while(flash_ok != HAL_OK)
{flash_ok = HAL_FLASH_Unlock();}
flash_ok = HAL_ERROR;
while(flash_ok != HAL_OK)
{
for(int i=0; i<(lenght); i++)
{
flash_ok = HAL_FLASH_Program(FLASH_TYPEPROGRAM_HALFWORD, adr, *param);
param++;
adr += 0x2;
}
}
flash_ok = HAL_ERROR;
while(flash_ok != HAL_OK)
{flash_ok = HAL_FLASH_Lock();}
}
uint16_t watInTheFlash(uint32_t adress)
{
return (*(uint32_t*) adress);
}

View File

@@ -22,7 +22,7 @@
#include "gpio.h"
/* USER CODE BEGIN 0 */
#include "tim.h"
/* USER CODE END 0 */
/*----------------------------------------------------------------------------*/
@@ -50,7 +50,7 @@ void MX_GPIO_Init(void)
|PVT2_Pin|PVT1_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOB, LED0_Pin|LED1_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOB, LED0_Pin|LED1_Pin, GPIO_PIN_SET);
/*Configure GPIO pins : PCPin PCPin PCPin PCPin
PCPin */
@@ -78,13 +78,19 @@ void MX_GPIO_Init(void)
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pins : PBPin PBPin PBPin PBPin
PBPin PBPin PBPin */
PBPin PBPin */
GPIO_InitStruct.Pin = IN_12_Pin|IN_11_Pin|BOOT1_Pin|IN_10_Pin
|IN_09_Pin|IN_08_Pin|IN_07_Pin;
|IN_09_Pin|IN_08_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = IN_07_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(IN_07_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pin : PA8 */
GPIO_InitStruct.Pin = GPIO_PIN_8;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
@@ -98,8 +104,48 @@ void MX_GPIO_Init(void)
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
/* EXTI interrupt init*/
HAL_NVIC_SetPriority(EXTI15_10_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);
}
/* USER CODE BEGIN 2 */
#define MEASURE_PIN IN_07_Pin
#define MEASURE_PORT IN_07_GPIO_Port
volatile uint32_t last_tick = 0;
volatile uint32_t high_time = 0;
volatile uint32_t period_time = 0;
volatile uint8_t first_edge = 1;
float duty_cycle = 0.0f;
float frequency = 0.0f;
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
if (GPIO_Pin != MEASURE_PIN) return;
static uint16_t last_tick = 0;
static uint16_t low_time = 0;
static uint16_t high_time = 0;
uint16_t now = (uint16_t)__HAL_TIM_GET_COUNTER(&htim2);
uint16_t delta = (now >= last_tick) ? (now - last_tick) : (uint16_t)(0x10000 + now - last_tick);
last_tick = now;
if (HAL_GPIO_ReadPin(MEASURE_PORT, MEASURE_PIN) == GPIO_PIN_SET) {
// RISING → закончился LOW
low_time = delta;
} else {
// FALLING → закончился HIGH
high_time = delta;
uint32_t period = (uint32_t)high_time + (uint32_t)low_time;
if (period > 0) {
frequency = 1e6f / period; // Гц
duty_cycle = (high_time * 100.0f) / period; // %
}
}
}
/* USER CODE END 2 */

104
Core/Src/lampa.c Normal file
View File

@@ -0,0 +1,104 @@
#include "main.h"
#include "gpio.h"
#include "lampa.h"
#include "struc.h"
#include "message.h"
#include "package.h"
void ReadEnteres(void)
{
WORDE input, alarm, error;
input.all=0;
input.bit.bit0 = !IN_06; // Контроль ИП1 (питание управляющего контроллера)
input.bit.bit1 = !IN_05; // Контроль ИП2 (питание периферийных устройств)
input.bit.bit2 = !IN_04; // Контроль ИП3 (питание эл. замков, ламп освещения, УКСИ)
input.bit.bit3 = !IN_03; // Контроль ИП4 (питание датчиков тока и напряжения +)
input.bit.bit4 = !IN_02; // Контроль ИП5 (питание датчиков тока и напряжения )
input.bit.bit5 = !IN_01; // Контроль ИП6 (питание драйверов)
input.bit.bit6 = !IN_07; // Контроль 3х фазного 380 В
input.bit.bit7 = !IN_08; // Заряд накопителя
input.bit.bit8 = !IN_09; // Разряд накопителя
input.bit.bit9 = IN_10; // Авария в сети 24 В, единственный нормально замкнутый сигнал
input.bit.bitA = (Squazh_U[0] > Squazh_L[0]); // Контроль питания ЛСУ
input.bit.bitB = (Squazh_U[1] > Squazh_L[1]); // Контроль питания СВО
input.bit.bitC = (Squazh_U[2] > Squazh_L[2]); // резерв
input.bit.bitD = (Squazh_U[3] > Squazh_L[3]); // Контроль питания СКК
/*
input.bit.bitA = !IN_11; // Контроль питания ЛСУ
input.bit.bitB = !IN_12; // Контроль питания СВО
input.bit.bitC = !IN_13; // резерв
input.bit.bitD = !IN_14; // Контроль питания СКК
*/
Inputs.all = input.all;
// Обычно неисправность это отсутствие сигнала, который есть в маске неисправностей
alarm.all = ~Inputs.all & Alarm_mask.all;
alarm.bit.bit7 = 0; // Заряд накопителя никогда не неисправность
alarm.bit.bit8 = Inputs.bit.bit8; // Разряд накопителя всегда неисправность
alarm.bit.bit9 = Inputs.bit.bit9; // Авария в сети 24 В всегда неисправность
Alarms = alarm;
// Обычно авария это отсутствие сигнала, который есть в маске аварий
error.all = ~Inputs.all & Error_mask.all;
error.bit.bit9 = Inputs.bit.bit9; // Авария в сети 24 В всегда авария
Errors = error;
}
uint16_t ReadJumpers(void)
{
WORDE input;
input.all = 0;
input.bit.bit0 = !J0;
input.bit.bit1 = !J1;
input.bit.bit2 = !J2;
input.bit.bit3 = !J3;
return input.all;
}
uint16_t TestJumper(void)
{
return !Jselect;
}
void ReadSeanus(void)
{
static uint32_t cownt=0;
static uint32_t sum_u[4];
static float flt_u[4];
static uint8_t Ist=1;
uint8_t i;
if(Ist)
{
Ist=0;
for(i=0;i<4;i++)
{
Squazh_U[i]=100;
flt_u[i]=10000.0;
sum_u[i]=0;
} }
sum_u[0] += !IN_11;
sum_u[1] += !IN_12;
sum_u[2] += !IN_13;
sum_u[3] += !IN_14;
if(++cownt>=10000)
{
cownt=0;
for(i=0;i<4;i++)
{
flt_u[i] +=((float)sum_u[i]-flt_u[i])/3+1;
Squazh_U[i]=flt_u[i]/100;
sum_u[i] = 0;
} } }

View File

@@ -26,7 +26,10 @@
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include "package.h"
#include "message.h"
#include "lampa.h"
#include "boot_jump.h"
/* USER CODE END Includes */
/* Private typedef -----------------------------------------------------------*/
@@ -48,6 +51,16 @@
/* USER CODE BEGIN PV */
FLAG flag;
static long Falling_asleep;
uint8_t CanGO=0, timGo=0;
/* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/
@@ -69,7 +82,11 @@ int main(void)
{
/* USER CODE BEGIN 1 */
static int i,j,n,z,mask,qua;
static int cancount[2]={1,2},cancell[2]={0,0},candid[2]={0,0};
static unsigned int masca[8];
static uint16_t precom=0;
App_Init();
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
@@ -85,23 +102,271 @@ int main(void)
SystemClock_Config();
/* USER CODE BEGIN SysInit */
MX_IWDG_Init();
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_CAN_Init();
MX_TIM2_Init();
MX_TIM4_Init();
MX_IWDG_Init();
MX_UART4_Init();
/* USER CODE BEGIN 2 */
HAL_TIM_Base_Start(&htim2);
LED_0_ON;
LED_1_OFF;
LED_2_ON;
LED_3_OFF;
for(i=0;i<10;i++)
{
LED_0_TGL;
LED_1_TGL;
LED_2_TGL;
LED_3_TGL;
HAL_Delay(50);
}
Mode = ReadJumpers()+1;
Setup_CAN_addr(Mode-1);
Load_params();
LastMode = Mode;
Protokol = PROTOKOL;
command=0;
for(i=0;i<0x80;i++)
county[i]=1;
for(i=0;i<8;i++)
masca[i]=0;
for(i=0;i<2;i++)
CanRound[i]=
CanCycle[i]=0;
timGo=1;
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
//=== БЛОК ПРИНУДИТЕЛЬНОЙ ПАУЗЫ ===//
if (flag.force_pause)
{
__disable_irq(); // Отключаем все прерывания
for(int i = 0; i < flag.pause; i++); // Пустой цикл для задержки
__enable_irq(); // Включаем прерывания обратно
}
//=== ОБРАБОТКА CAN-ШИНЫ ===//
if (CanGO) // Флаг разрешения работы с CAN-шиной
{
CanGO = 0; // Сбрасываем флаг
// Увеличиваем счетчики ожидания для всех элементов (ограничение 30000)
for(i = 0; i < 0x80; i++)
if(espero[i] < 30000)
espero[i]++;
// Уменьшаем счетчики задержки для двух CAN-каналов
for(i = 0; i < 2; i++)
if(cancount[i])
cancount[i]--;
else
cancell[i] = 0; // Сброс позиции, если счетчик обнулился
}
//=== ОБРАБОТКА КАНАЛОВ CAN ===//
for(i = 0; i < 2; i++) // Для каждого из двух CAN-каналов
{
if (Cancount[i] && !cancount[i]) // Если есть задержка и счетчик обнулился
{
// Поиск следующего элемента для обработки
while(1)
{
if (cancell[i] >= 0x80) // Если достигли конца диапазона
{
cancell[i] = 0; // Сброс позиции
if (candid[i]) // Если есть кандидат для обработки
{
candid[i] = 0; // Сброс флага кандидата
CanCycle[i]++; // Увеличиваем счетчик циклов
cancount[i] = CanWait[i]; // Устанавливаем задержку
goto Next; // Переход к следующей итерации
}
}
// Проверка маски для определения активных элементов
mask = Maska[i][cancell[i] / 0x10] >> (cancell[i] & 0x0F);
if (!mask) // Если маска пустая
cancell[i] = (cancell[i] + 0x10) & 0xFFF0; // Переход к следующей группе
else
{
// Поиск первого установленного бита в маске
while (!(mask & 1))
{
cancell[i]++;
mask >>= 1;
}
break; // Найден активный элемент
}
}
z = 1; // Флаг нормального состояния
// Проверка превышения времени ожидания
if (espero[cancell[i]] > CanRestart[i])
{
county[cancell[i]] = 1; // Установка флага необходимости отправки
z = 0; // Флаг аварийного состояния
}
// Проверка изменения данных для отправки
if (modbus[cancell[i]] != archiv[cancell[i]])
{
if (cancell[i] == keys) // Если это ключевой элемент
{
// Установка флагов для группы элементов
for(j = 0; j < CanRptLen; j++)
county[cancell[i] + j] = CanRptVez;
}
else
{
county[cancell[i]] = 1; // Установка флага для одиночного элемента
}
}
// Обработка элементов, требующих отправки
if (county[cancell[i]])
{
// Поиск границ группы измененных элементов
for(j = 3; j > 0 && !Isit(cancell[i] + j, i, z); j--);
for(n = j - 3; n < 0 && !Isit(cancell[i] + n, i, 1); n++);
qua = 1 + j - n; // Расчет количества элементов в группе
cancell[i] += n; // Корректировка позиции
// Обработка каждого элемента в группе
for(j = 0; j < qua; j++)
{
n = cancell[i] + j;
archiv[n] = modbus[n]; // Сохранение текущего значения
espero[n] = 0; // Сброс счетчика ожидания
if (county[n]) // Если элемент требует обработки
{
county[n]--; // Уменьшение счетчика
// Если счетчик обнулился и это не циклический элемент
if (!county[n] && n != cancyclo + i)
candid[i] = 1; // Установка флага кандидата
}
// Обновление маски активных элементов
if (!county[n])
masca[n / 0x10] |= (1 << (n & 0x0F));
}
// Отправка данных через CAN-шину
CAN_send(archiv, cancell[i], qua);
cancount[i] = Cancount[i]; // Установка задержки
cancell[i] += qua; // Переход к следующей позиции
// Проверка завершения обработки всех элементов
for(j = 0; j < 8; j++)
if ((masca[j] & Maska[i][j]) != Maska[i][j])
break;
if (j == 8) // Если все элементы обработаны
{
// Сброс соответствующих битов маски
for(j = 0; j < 8; j++)
masca[j] &= ~Maska[i][j];
CanRound[i]++; // Увеличение счетчика раундов
}
// Управление параллельной обработкой каналов
if (Cancount[i] > 1 && !cancount[!i])
cancount[!i] = 1; // Запуск другого канала
}
else
{
cancell[i]++; // Переход к следующему элементу
}
}
}
Next: // Метка для перехода к следующей части цикла
//=== ЧТЕНИЕ ВХОДНЫХ СИГНАЛОВ ===//
ReadEnteres(); // Функция чтения дискретных входов
//=== УПРАВЛЕНИЕ ВЫХОДНЫМИ СИГНАЛАМИ ===//
if (Errors.all | Alarms.all)
Pvt4_OFF; // Выключение сигнала "Система ВЭП в норме"
else
Pvt4_ON; // Включение сигнала "Система ВЭП в норме"
if (Errors.all)
Pvt3_ON; // Включение сигнала "Авария системы ВЭП"
else
Pvt3_OFF; // Выключение сигнала "Авария системы ВЭП"
if (Falling_asleep)
Pvt2_ON; // Включение сигнала управления
else
Pvt2_OFF; // Выключение сигнала управления
//=== ОБРАБОТКА КОМАНД ===//
if (Commands != precom) // Если команды изменились
{
command = (~precom | command) & Commands; // Обновление активных команд
}
precom = Commands; // Сохранение текущих команд для следующей итерации
//=== ОБРАБОТКА СИСТЕМНЫХ КОМАНД ===//
if (cDefParam) // Команда сброса параметров по умолчанию
{
cDefParam = 0;
Default_params(); // Вызов функции сброса параметров
}
if (cSaveParam) // Команда сохранения параметров
{
cSaveParam = 0;
Save_params(); // Вызов функции сохранения параметров
}
if (cLoadParam) // Команда загрузки параметров
{
cLoadParam = 0;
Load_params(); // Вызов функции загрузки параметров
}
if (cCanReset) // Команда сброса CAN-системы
{
cCanReset = 0;
// Сброс всех счетчиков и состояний CAN-системы
for(i = 0; i < 0x80; i++)
county[i] = 1; // Установка флагов отправки для всех элементов
for(i = 0; i < 2; i++)
{
CanCycle[i] = 0; // Сброс счетчиков циклов
CanRound[i] = 0; // Сброс счетчиков раундов
cancount[i] = 0; // Сброс счетчиков задержки
cancell[i] = 0; // Сброс позиций
}
for(i = 0; i < 8; i++)
masca[i] = 0; // Сброс масок
}
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
@@ -150,6 +415,178 @@ void SystemClock_Config(void)
}
/* USER CODE BEGIN 4 */
//////////////// USER FUNC ////////////////////
/**
* @brief Проверяет, активен ли указанный элемент для обработки в CAN-шине
* @param num Номер элемента (0x00-0x7F)
* @param i Номер CAN-канала (0 или 1)
* @param z Флаг дополнительных проверок (1 - включить доп. проверки, 0 - только маска)
* @return 1 - элемент активен, 0 - элемент не активен
*/
int Isit(int num, int i, int z)
{
int res, pls;
//=== ПРОВЕРКА ДИАПАЗОНА ===//
// Если номер элемента вне допустимого диапазона (0x00-0x7F)
if((num < 0) || (num >= 0x80))
return 0; // Элемент не активен
//=== ПРОВЕРКА МАСКИ КАНАЛА ===//
// Определяем битовую маску для данного элемента
// num/0x10 - определяем индекс в массиве масок (0-7)
// num&0x0F - определяем позицию бита в слове (0-15)
res = Maska[i][num / 0x10]; // Получаем маску для группы элементов
res &= (1 << (num & 0x0F)); // Проверяем конкретный бит в маске
//=== ДОПОЛНИТЕЛЬНЫЕ ПРОВЕРКИ (если z != 0) ===//
if(z)
{
// Проверка времени ожидания: если превышена половина времени перезапуска
pls = (espero[num] > CanRestart[i] / 2);
// ИЛИ проверка счетчика отправки (если county[num] != 0)
pls = pls || county[num];
// Комбинированная проверка: должен быть установлен в маске И выполнять условия
res = res && pls;
}
return res; // Возвращаем результат проверки
}
/**
* @brief Функция обработки милисекундных событий системы
* @note Вызывается каждую миллисекунду из SysTick_Handler
*/
void Millisecond()
{
// Статические переменные для хранения состояния между вызовами
static int CanPowse; // Счетчик для управления CAN-шиной
static unsigned int count_blink = 0, // Счетчик для мигания
count_bright = 0, // Счетчик для управления яркостью
count_mode, // Счетчик режимов мигания
blink_over, // Флаг переключения состояния мигания
blink_alarm, // Флаг мигания аварии
power_lamp, // Состояние силовой лампы
work_diod, // Состояние рабочего светодиода
norm_diod; // Состояние нормального светодиода
static int preTest; // Предыдущее состояние теста
int TST; // Текущее состояние теста
// Константы времени
#define CANPOWSE 10 // 10 msec - период обновления CAN
#define BLINK_TIME 250 // 0.25 sec - период мигания
//=== ОБНОВЛЕНИЕ WATCHDOG ===//
if(!cReset)
IWDG->KR = 0xAAAA; // Сброс watchdog таймера
//=== ПРОВЕРКА АКТИВНОСТИ ТАЙМЕРА ===//
if(!timGo) return; // Если таймер не активен - выход
//=== ЧТЕНИЕ ПЕРЕКЛЮЧАТЕЛЕЙ И КНОПОК ===//
Jumpers.byt.byte_1 = ReadJumpers(); // Чтение состояния переключателей
Jumpers.bit.bit0 = Buttons.bit.bit0 = TestJumper(); // Чтение состояния кнопки
//=== УПРАВЛЕНИЕ CAN-ШИНОЙ ===//
if(++CanPowse >= CANPOWSE)
{
CanPowse = 0; // Сброс счетчика
CanGO = 1; // Установка флага разрешения работы CAN
}
//=== УПРАВЛЕНИЕ РЕЖИМОМ "ЗАСЫПАНИЯ" ===//
if(Alarms.bit.bit8) // Разряд батареи
{
if (Falling_asleep) Falling_asleep--; // Уменьшение времени до "сна"
}
else
Falling_asleep = 1000L * Sleep_time; // Установка времени до "сна"
//=== ОБРАБОТКА ТЕСТОВОГО РЕЖИМА ===//
TST = TestJumper() | cTestLamp; // Текущее состояние теста (кнопка или команда)
if(TST & !preTest) // Обнаружение фронта нажатия кнопки
{
count_blink = BLINK_TIME; // Сброс счетчика мигания
count_mode = 0; // Сброс счетчика режимов
}
preTest = TST; // Сохранение состояния для следующего вызова
//=== УПРАВЛЕНИЕ МИГАНИЕМ ИНДИКАТОРОВ ===//
if(++count_blink >= BLINK_TIME)
{
count_blink = 0; // Сброс счетчика
count_mode++; // Переключение режима
blink_over = (count_mode & 1) ? 1 : 0; // Мигание 1:1 (50%)
blink_alarm = (count_mode & 7) ? 1 : 0; // Мигание 1:7 (12.5%)
}
//=== УСТАНОВКА СТАНДАРТНЫХ СОСТОЯНИЙ ИНДИКАТОРОВ ===//
power_lamp = 1; // Силовая лампа включена
norm_diod = 1; // Нормальный светодиод включен
work_diod = !blink_over; // Рабочий светодиод синхронизирован с миганием
//=== РЕЖИМ ТЕСТИРОВАНИЯ ===//
if(TST)
{
power_lamp = blink_over; // Мигание силовой лампы
norm_diod = blink_over; // Мигание нормального светодиода
work_diod = blink_over; // Мигание рабочего светодиода
}
//=== РЕЖИМ ОСВЕЩЕНИЯ ===//
else if(Lightness)
{
power_lamp = norm_diod = 0; // Базовое состояние - выключено
// Уровень освещенности 2: постоянно включено
if(Lightness == 2) power_lamp = norm_diod = 1;
// Уровень освещенности 3: медленное мигание (50%)
if(Lightness == 3) power_lamp = norm_diod = blink_over;
// Уровень освещенности 4: быстрое мигание (12.5%)
if(Lightness == 4) power_lamp = norm_diod = blink_alarm;
// Уровень освещенности 5: инверсное быстрое мигание (87.5%)
if(Lightness == 5) power_lamp = norm_diod = !blink_alarm;
}
//=== РЕЖИМ ОШИБОК ===//
else if(Errors.all)
{
power_lamp = blink_over; // Мигание при ошибках
norm_diod = blink_over; // Мигание при ошибках
}
//=== РЕЖИМ ТРЕВОГ ===//
else if(Alarms.all)
{
power_lamp = blink_alarm; // Быстрое мигание при тревогах
norm_diod = blink_alarm; // Быстрое мигание при тревогах
}
//=== ШИМ УПРАВЛЕНИЕ ЯРКОСТЬЮ СИЛОВОЙ ЛАМПЫ ===//
if(++count_bright == 10) // maximum_bright (100%)
{
count_bright = 0;
if(power_lamp) Pvt1_ON; // Включение на полную яркость
else Pvt1_OFF; // Выключение
}
//=== УПРАВЛЕНИЕ ЯРКОСТЬЮ ===//
if(count_bright == Brightness)
if(!TST) Pvt1_OFF; // Отключение лампочки с регулировкой яркости
//=== УПРАВЛЕНИЕ СВЕТОДИОДАМИ ===//
if(work_diod) LED_2_ON; // Включение рабочего светодиода
else LED_2_OFF; // Выключение рабочего светодиода
if(norm_diod) LED_3_ON; // Включение нормального светодиода
else LED_3_OFF; // Выключение нормального светодиода
}
/////////////////////////////////////////////
/* USER CODE END 4 */
@@ -165,12 +602,15 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
/* USER CODE BEGIN Callback 0 */
if(htim->Instance == TIM4) //check if the interrupt comes from TIM4
ReadSeanus();
/* USER CODE END Callback 0 */
if (htim->Instance == TIM8) {
HAL_IncTick();
Millisecond();
}
/* USER CODE BEGIN Callback 1 */
/* USER CODE END Callback 1 */
}

129
Core/Src/message.c Normal file
View File

@@ -0,0 +1,129 @@
#include "stm32f1xx_hal.h"
#include "struc.h"
#include "crc16.h"
#include "package.h"
#include "message.h"
#include "eeprom.h"
uint16_t params[Modbus_LEN+1],
modbus[Modbus_LEN],
archiv[Modbus_LEN],
county[Modbus_LEN],
espero[Modbus_LEN];
uint16_t Mode;
LONGE* outputs;
void Init_packMask(void);
uint16_t Maska[2][8];
void Default_params()
{
unsigned int i;
for(i=0;i<Modbus_LEN;i++)
{
modbus[i] = 0;
}
Alarm_mask.all = 0x3FFF;
Alarm_mask.bit.bit7 = 0; // Заряд накопителя
Alarm_mask.bit.bitC = 0; // резерв
Error_mask.all = 0;
Error_mask.bit.bit9 = 1; // Авария в сети 24 В
for(i=0;i<4;i++)
Squazh_L[i] = 90;
LastMode = Mode;
Sleep_time = 60; // минута чтобы отключиться
Cancount[m_FAST] = 5; // * 10msec, пауза между посылками CAN
Cancount[m_SLOW] = 100; // * 10msec, пауза между посылками CAN
CanWait[m_FAST] = 1; // * 10msec, пауза после цикла
CanWait[m_SLOW] = 1; // * 10msec, пауза после цикла
CanRestart[m_FAST] = 500; // * 10msec, перезапуск посылки
CanRestart[m_SLOW] = 1000; // * 10msec, перезапуск посылки
CanRptVez = 3; // кол-во повторений посылки «keys»
CanRptLen = 3; // длина повтораемой посылки «keys»
Brightness = 10;
Protokol = PROTOKOL;
}
void Load_params()
{
unsigned int i,crc;
unsigned int adr = FLASH_EEPROM_BASE;
for(int j=0; j<Modbus_LEN+1; j+=1)
{
params[j] = watInTheFlash(adr) & 0xFFFF;
adr += 0x2;
}
crc = get_crc16(params,Modbus_LEN);
if( (crc==params[Modbus_LEN]) &&
(crc !=0xFFFF) &&
(Mode == params[126]))
{
for(i=0;i<Modbus_LEN;i++) modbus[i] = params[i];
Commands=0;
}
else
{
Default_params();
Save_params();
}
Init_packMask();
}
void Save_params()
{
unsigned int i,dif=0;
for(i=0;i<Modbus_LEN;i++)
if(params[i] != modbus[i])
{
params[i] = modbus[i];
dif=1;
}
if(dif)
{
params[Modbus_LEN] = get_crc16(params,Modbus_LEN);
putIntoEeprom(Modbus_LEN+1, params);
} }
void Init_packMask()
{
int i;
for(i=0;i<8;i++)
{
Maska[m_FAST][i] = 0;
Maska[m_SLOW][i] = 0;
}
Maska[m_FAST][0]|= 0x0007; // Дискретные входы, неисправности и аварии
Maska[m_SLOW][0]|= 0x0300; // Маски на неисправности и аварии
Maska[m_SLOW][1]|= 0x0003; // Состояние джамперов
Maska[m_SLOW][1]|= 0x0F00; // Скважность датчика напряжения
Maska[m_SLOW][3]|= 0x000F; // Аварийная уставка скважности
Maska[m_SLOW][4]|= 0x0100; // Время автоматического отключения
Maska[m_SLOW][6]|= 0x05FF; // Яркость лампы и периоды посылок
Maska[m_FAST][7]|= 0x0100; // Счетчик посылок
Maska[m_SLOW][7]|= 0x0E00; // Счетчик посылок
Maska[m_SLOW][7]|= 0xE000; // Протокол, адрес, команды
}

View File

@@ -244,6 +244,20 @@ void TIM4_IRQHandler(void)
/* USER CODE END TIM4_IRQn 1 */
}
/**
* @brief This function handles EXTI line[15:10] interrupts.
*/
void EXTI15_10_IRQHandler(void)
{
/* USER CODE BEGIN EXTI15_10_IRQn 0 */
/* USER CODE END EXTI15_10_IRQn 0 */
HAL_GPIO_EXTI_IRQHandler(IN_07_Pin);
/* USER CODE BEGIN EXTI15_10_IRQn 1 */
/* USER CODE END EXTI15_10_IRQn 1 */
}
/**
* @brief This function handles TIM8 update interrupt.
*/

View File

@@ -42,7 +42,8 @@
*
******************************************************************************
*/
#ifndef SYSTEM_STM32F1XX_C
#define SYSTEM_STM32F1XX_C
/** @addtogroup CMSIS
* @{
*/
@@ -404,3 +405,5 @@ void SystemInit_ExtMemCtl(void)
/**
* @}
*/
#endif /* SYSTEM_STM32F1XX_C */

View File

@@ -24,8 +24,49 @@
/* USER CODE END 0 */
TIM_HandleTypeDef htim2;
TIM_HandleTypeDef htim4;
/* TIM2 init function */
void MX_TIM2_Init(void)
{
/* USER CODE BEGIN TIM2_Init 0 */
/* USER CODE END TIM2_Init 0 */
TIM_ClockConfigTypeDef sClockSourceConfig = {0};
TIM_MasterConfigTypeDef sMasterConfig = {0};
/* USER CODE BEGIN TIM2_Init 1 */
/* USER CODE END TIM2_Init 1 */
htim2.Instance = TIM2;
htim2.Init.Prescaler = 64-1;
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
htim2.Init.Period = 65535;
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
if (HAL_TIM_Base_Init(&htim2) != HAL_OK)
{
Error_Handler();
}
sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
if (HAL_TIM_ConfigClockSource(&htim2, &sClockSourceConfig) != HAL_OK)
{
Error_Handler();
}
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN TIM2_Init 2 */
/* USER CODE END TIM2_Init 2 */
}
/* TIM4 init function */
void MX_TIM4_Init(void)
{
@@ -63,6 +104,10 @@ void MX_TIM4_Init(void)
}
/* USER CODE BEGIN TIM4_Init 2 */
HAL_TIM_Base_MspInit(&htim4);
HAL_TIM_Base_Start_IT(&htim4);
/* USER CODE END TIM4_Init 2 */
}
@@ -70,7 +115,18 @@ void MX_TIM4_Init(void)
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle)
{
if(tim_baseHandle->Instance==TIM4)
if(tim_baseHandle->Instance==TIM2)
{
/* USER CODE BEGIN TIM2_MspInit 0 */
/* USER CODE END TIM2_MspInit 0 */
/* TIM2 clock enable */
__HAL_RCC_TIM2_CLK_ENABLE();
/* USER CODE BEGIN TIM2_MspInit 1 */
/* USER CODE END TIM2_MspInit 1 */
}
else if(tim_baseHandle->Instance==TIM4)
{
/* USER CODE BEGIN TIM4_MspInit 0 */
@@ -90,7 +146,18 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle)
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* tim_baseHandle)
{
if(tim_baseHandle->Instance==TIM4)
if(tim_baseHandle->Instance==TIM2)
{
/* USER CODE BEGIN TIM2_MspDeInit 0 */
/* USER CODE END TIM2_MspDeInit 0 */
/* Peripheral clock disable */
__HAL_RCC_TIM2_CLK_DISABLE();
/* USER CODE BEGIN TIM2_MspDeInit 1 */
/* USER CODE END TIM2_MspDeInit 1 */
}
else if(tim_baseHandle->Instance==TIM4)
{
/* USER CODE BEGIN TIM4_MspDeInit 0 */

View File

@@ -0,0 +1,36 @@
// File: STM32F101_102_103_105_107.dbgconf
// Version: 1.0.0
// Note: refer to STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx Reference manual (RM0008)
// STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx datasheets
// <<< Use Configuration Wizard in Context Menu >>>
// <h> Debug MCU configuration register (DBGMCU_CR)
// <i> Reserved bits must be kept at reset value
// <o.30> DBG_TIM11_STOP <i> TIM11 counter stopped when core is halted
// <o.29> DBG_TIM10_STOP <i> TIM10 counter stopped when core is halted
// <o.28> DBG_TIM9_STOP <i> TIM9 counter stopped when core is halted
// <o.27> DBG_TIM14_STOP <i> TIM14 counter stopped when core is halted
// <o.26> DBG_TIM13_STOP <i> TIM13 counter stopped when core is halted
// <o.25> DBG_TIM12_STOP <i> TIM12 counter stopped when core is halted
// <o.21> DBG_CAN2_STOP <i> Debug CAN2 stopped when core is halted
// <o.20> DBG_TIM7_STOP <i> TIM7 counter stopped when core is halted
// <o.19> DBG_TIM6_STOP <i> TIM6 counter stopped when core is halted
// <o.18> DBG_TIM5_STOP <i> TIM5 counter stopped when core is halted
// <o.17> DBG_TIM8_STOP <i> TIM8 counter stopped when core is halted
// <o.16> DBG_I2C2_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.15> DBG_I2C1_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.14> DBG_CAN1_STOP <i> Debug CAN1 stopped when Core is halted
// <o.13> DBG_TIM4_STOP <i> TIM4 counter stopped when core is halted
// <o.12> DBG_TIM3_STOP <i> TIM3 counter stopped when core is halted
// <o.11> DBG_TIM2_STOP <i> TIM2 counter stopped when core is halted
// <o.10> DBG_TIM1_STOP <i> TIM1 counter stopped when core is halted
// <o.9> DBG_WWDG_STOP <i> Debug window watchdog stopped when core is halted
// <o.8> DBG_IWDG_STOP <i> Debug independent watchdog stopped when core is halted
// <o.2> DBG_STANDBY <i> Debug standby mode
// <o.1> DBG_STOP <i> Debug stop mode
// <o.0> DBG_SLEEP <i> Debug sleep mode
// </h>
DbgMCU_CR = 0x00000007;
// <<< end of configuration section >>>

View File

@@ -1,3439 +0,0 @@
T1658 000:005.620 SEGGER J-Link V8.10g Log File
T1658 000:005.746 DLL Compiled: Nov 14 2024 08:38:33
T1658 000:005.753 Logging started @ 2025-08-22 13:12
T1658 000:005.760 Process: C:\Keil_v5\UV4\UV4.exe
T1658 000:005.776 - 5.766ms
T1658 000:005.786 JLINK_SetWarnOutHandler(...)
T1658 000:005.793 - 0.008ms
T1658 000:005.804 JLINK_OpenEx(...)
T1658 000:009.414 Firmware: J-Link V9 compiled May 7 2021 16:26:12
T1658 000:010.216 Firmware: J-Link V9 compiled May 7 2021 16:26:12
T1658 000:010.402 Decompressing FW timestamp took 147 us
T1658 000:016.199 Hardware: V9.10
T1658 000:016.210 S/N: 60145543
T1658 000:016.216 OEM: SEGGER
T1658 000:016.223 Feature(s): RDI, FlashBP, FlashDL, JFlash, GDB
T1658 000:016.772 Bootloader: (FW returned invalid version)
T1658 000:017.442 TELNET listener socket opened on port 19021
T1658 000:017.583 WEBSRV WEBSRV_Init(): Starting webserver thread(s)
T1658 000:017.700 WEBSRV Webserver running on local port 19080
T1658 000:017.791 Looking for J-Link GUI Server exe at: C:\Keil_v5\ARM\Segger\JLinkGUIServer.exe
T1658 000:017.880 Looking for J-Link GUI Server exe at: C:\Program Files\SEGGER\JLink_V810g\JLinkGUIServer.exe
T1658 000:017.916 Forking J-Link GUI Server: C:\Program Files\SEGGER\JLink_V810g\JLinkGUIServer.exe
T1658 000:040.393 J-Link GUI Server info: "J-Link GUI server V8.10g "
T1658 000:042.131 - 36.321ms returns "O.K."
T1658 000:042.148 JLINK_GetEmuCaps()
T1658 000:042.156 - 0.005ms returns 0xB9FF7BBF
T1658 000:042.162 JLINK_TIF_GetAvailable(...)
T1658 000:042.330 - 0.167ms
T1658 000:042.339 JLINK_SetErrorOutHandler(...)
T1658 000:042.344 - 0.004ms
T1658 000:042.369 JLINK_ExecCommand("ProjectFile = "F:\set\from_Dima_Bog\UKSVEP_23550.2_WD\MDK-ARM\JLinkSettings.ini"", ...).
T1658 000:053.779 Ref file found at: C:\Keil_v5\ARM\Segger\JLinkDevices.ref
T1658 000:053.889 REF file references invalid XML file: C:\Program Files\SEGGER\JLink_V810g\JLinkDevices.xml
T1658 000:055.392 - 13.024ms returns 0x00
T1658 000:057.630 JLINK_ExecCommand("Device = STM32F103RC", ...).
T1658 000:060.295 Device "STM32F103RC" selected.
T1658 000:060.564 - 2.918ms returns 0x00
T1658 000:060.576 JLINK_ExecCommand("DisableConnectionTimeout", ...).
T1658 000:060.590 ERROR: Unknown command
T1658 000:060.597 - 0.015ms returns 0x01
T1658 000:060.603 JLINK_GetHardwareVersion()
T1658 000:060.608 - 0.004ms returns 91000
T1658 000:060.614 JLINK_GetDLLVersion()
T1658 000:060.618 - 0.004ms returns 81007
T1658 000:060.625 JLINK_GetOEMString(...)
T1658 000:060.631 JLINK_GetFirmwareString(...)
T1658 000:060.636 - 0.005ms
T1658 000:065.091 JLINK_GetDLLVersion()
T1658 000:065.103 - 0.012ms returns 81007
T1658 000:065.109 JLINK_GetCompileDateTime()
T1658 000:065.114 - 0.004ms
T1658 000:066.568 JLINK_GetFirmwareString(...)
T1658 000:066.578 - 0.010ms
T1658 000:068.063 JLINK_GetHardwareVersion()
T1658 000:068.073 - 0.009ms returns 91000
T1658 000:069.746 JLINK_GetSN()
T1658 000:069.765 - 0.019ms returns 60145543
T1658 000:074.618 JLINK_GetOEMString(...)
T1658 000:078.137 JLINK_TIF_Select(JLINKARM_TIF_JTAG)
T1658 000:078.871 - 0.733ms returns 0x00
T1658 000:078.882 JLINK_HasError()
T1658 000:078.893 JLINK_SetSpeed(25000)
T1658 000:078.943 - 0.049ms
T1658 000:078.952 JLINK_GetIdData(pIdData)
T1658 000:080.495 InitTarget() start
T1658 000:080.508 J-Link Script File: Executing InitTarget()
T1658 000:082.064 JTAG selected. Identifying JTAG Chain...
T1658 000:084.272 TotalIRLen = 9, IRPrint = 0x0011
T1658 000:086.160 JTAG chain detection found 2 devices:
T1658 000:087.730 #0 Id: 0x3BA00477, IRLen: 04, CoreSight JTAG-DP
T1658 000:089.214 #1 Id: 0x06414041, IRLen: 05, STM32 Boundary Scan
T1658 000:090.699 JTAG Chain Identified. Connecting to DAP TAP...
T1658 000:092.447 Successfully connected to selected DAP TAP.
T1658 000:095.495 DAP initialized successfully.
T1658 000:100.019 InitTarget() end - Took 17.9ms
T1658 000:102.272 TotalIRLen = 9, IRPrint = 0x0011
T1658 000:104.322 JTAG chain detection found 2 devices:
T1658 000:111.474 #0 Id: 0x3BA00477, IRLen: 04, CoreSight JTAG-DP
T1658 000:115.292 #1 Id: 0x06414041, IRLen: 05, STM32 Boundary Scan
T1658 000:120.619 DPv0 detected
T1658 000:123.298 Scanning AP map to find all available APs
T1658 000:126.315 AP[1]: Stopped AP scan as end of AP map has been reached
T1658 000:128.460 AP[0]: AHB-AP (IDR: 0x14770011, ADDR: 0x00000000)
T1658 000:130.579 Iterating through AP map to find AHB-AP to use
T1658 000:133.273 AP[0]: Core found
T1658 000:135.121 AP[0]: AHB-AP ROM base: 0xE00FF000
T1658 000:137.350 CPUID register: 0x411FC231. Implementer code: 0x41 (ARM)
T1658 000:144.287 Found Cortex-M3 r1p1, Little endian.
T1658 000:144.880 -- Max. mem block: 0x00010E60
T1658 000:145.997 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 000:146.370 CPU_ReadMem(4 bytes @ 0xE0002000)
T1658 000:150.506 FPUnit: 6 code (BP) slots and 2 literal slots
T1658 000:150.540 CPU_ReadMem(4 bytes @ 0xE000EDFC)
T1658 000:150.849 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 000:151.164 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:151.451 CPU_WriteMem(4 bytes @ 0xE0001000)
T1658 000:151.754 CPU_ReadMem(4 bytes @ 0xE000ED88)
T1658 000:151.983 CPU_WriteMem(4 bytes @ 0xE000ED88)
T1658 000:152.227 CPU_ReadMem(4 bytes @ 0xE000ED88)
T1658 000:152.534 CPU_WriteMem(4 bytes @ 0xE000ED88)
T1658 000:155.898 CoreSight components:
T1658 000:158.494 ROMTbl[0] @ E00FF000
T1658 000:158.517 CPU_ReadMem(64 bytes @ 0xE00FF000)
T1658 000:158.878 CPU_ReadMem(32 bytes @ 0xE000EFE0)
T1658 000:161.628 [0][0]: E000E000 CID B105E00D PID 001BB000 SCS
T1658 000:161.647 CPU_ReadMem(32 bytes @ 0xE0001FE0)
T1658 000:164.275 [0][1]: E0001000 CID B105E00D PID 001BB002 DWT
T1658 000:164.297 CPU_ReadMem(32 bytes @ 0xE0002FE0)
T1658 000:166.680 [0][2]: E0002000 CID B105E00D PID 000BB003 FPB
T1658 000:166.697 CPU_ReadMem(32 bytes @ 0xE0000FE0)
T1658 000:168.988 [0][3]: E0000000 CID B105E00D PID 001BB001 ITM
T1658 000:169.014 CPU_ReadMem(32 bytes @ 0xE0040FE0)
T1658 000:171.260 [0][4]: E0040000 CID B105900D PID 001BB923 TPIU-Lite
T1658 000:171.278 CPU_ReadMem(32 bytes @ 0xE0041FE0)
T1658 000:173.217 [0][5]: E0041000 CID B105900D PID 101BB924 ETM-M3
T1658 000:173.259 pIdData->ScanLen=9
T1658 000:173.268 pIdData->NumDevices=2
T1658 000:173.274 pIdData->aId[0]=0x3BA00477
T1658 000:173.281 pIdData->aIrRead[0]=0
T1658 000:173.288 pIdData->aScanLen[0]=0
T1658 000:173.295 pIdData->aScanRead[0]=0
T1658 000:173.302 - 94.350ms
T1658 000:173.316 JLINK_JTAG_GetDeviceID(DeviceIndex = 0)
T1658 000:173.321 - 0.007ms returns 1000342647
T1658 000:173.327 JLINK_JTAG_GetDeviceInfo(DeviceIndex = 0)
T1658 000:173.332 - 0.005ms returns 0
T1658 000:173.338 JLINK_JTAG_GetDeviceID(DeviceIndex = 1)
T1658 000:173.343 - 0.005ms returns 104939585
T1658 000:173.350 JLINK_JTAG_GetDeviceInfo(DeviceIndex = 1)
T1658 000:173.355 - 0.004ms returns 0
T1658 000:173.362 JLINK_GetDLLVersion()
T1658 000:173.367 - 0.004ms returns 81007
T1658 000:173.374 JLINK_CORE_GetFound()
T1658 000:173.379 - 0.005ms returns 0x30000FF
T1658 000:173.386 JLINK_GetDebugInfo(0x100 = JLINKARM_ROM_TABLE_ADDR_INDEX)
T1658 000:173.391 Value=0xE00FF000
T1658 000:173.398 - 0.012ms returns 0
T1658 000:175.011 JLINK_GetDebugInfo(0x100 = JLINKARM_ROM_TABLE_ADDR_INDEX)
T1658 000:175.022 Value=0xE00FF000
T1658 000:175.030 - 0.018ms returns 0
T1658 000:175.036 JLINK_GetDebugInfo(0x101 = JLINKARM_DEBUG_INFO_ETM_ADDR_INDEX)
T1658 000:175.041 Value=0xE0041000
T1658 000:175.048 - 0.012ms returns 0
T1658 000:175.054 JLINK_ReadMemEx(0xE0041FD0, 0x20 Bytes, Flags = 0x02000004)
T1658 000:175.083 CPU_ReadMem(32 bytes @ 0xE0041FD0)
T1658 000:175.399 Data: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...
T1658 000:175.409 - 0.355ms returns 32 (0x20)
T1658 000:175.416 JLINK_GetDebugInfo(0x102 = JLINKARM_DEBUG_INFO_MTB_ADDR_INDEX)
T1658 000:175.421 Value=0x00000000
T1658 000:175.428 - 0.012ms returns 0
T1658 000:175.434 JLINK_GetDebugInfo(0x103 = JLINKARM_DEBUG_INFO_TPIU_ADDR_INDEX)
T1658 000:175.483 Value=0xE0040000
T1658 000:175.492 - 0.058ms returns 0
T1658 000:175.499 JLINK_GetDebugInfo(0x104 = JLINKARM_DEBUG_INFO_ITM_ADDR_INDEX)
T1658 000:175.503 Value=0xE0000000
T1658 000:175.510 - 0.012ms returns 0
T1658 000:175.516 JLINK_GetDebugInfo(0x105 = JLINKARM_DEBUG_INFO_DWT_ADDR_INDEX)
T1658 000:175.521 Value=0xE0001000
T1658 000:175.528 - 0.011ms returns 0
T1658 000:175.533 JLINK_GetDebugInfo(0x106 = JLINKARM_DEBUG_INFO_FPB_ADDR_INDEX)
T1658 000:175.538 Value=0xE0002000
T1658 000:175.545 - 0.011ms returns 0
T1658 000:175.551 JLINK_GetDebugInfo(0x107 = JLINKARM_DEBUG_INFO_NVIC_ADDR_INDEX)
T1658 000:175.555 Value=0xE000E000
T1658 000:175.562 - 0.011ms returns 0
T1658 000:175.568 JLINK_GetDebugInfo(0x10C = JLINKARM_DEBUG_INFO_DBG_ADDR_INDEX)
T1658 000:175.573 Value=0xE000EDF0
T1658 000:175.580 - 0.011ms returns 0
T1658 000:175.585 JLINK_GetDebugInfo(0x01 = Unknown)
T1658 000:175.590 Value=0x00000000
T1658 000:175.597 - 0.012ms returns 0
T1658 000:175.603 JLINK_ReadMemU32(0xE000ED00, 0x1 Items)
T1658 000:175.611 CPU_ReadMem(4 bytes @ 0xE000ED00)
T1658 000:175.840 Data: 31 C2 1F 41
T1658 000:175.849 Debug reg: CPUID
T1658 000:175.856 - 0.253ms returns 1 (0x1)
T1658 000:175.863 JLINK_GetDebugInfo(0x10F = JLINKARM_DEBUG_INFO_HAS_CORTEX_M_SECURITY_EXT_INDEX)
T1658 000:175.868 Value=0x00000000
T1658 000:175.875 - 0.012ms returns 0
T1658 000:175.881 JLINK_HasError()
T1658 000:175.887 JLINK_SetResetType(JLINKARM_CM3_RESET_TYPE_NORMAL)
T1658 000:175.892 - 0.005ms returns JLINKARM_CM3_RESET_TYPE_NORMAL
T1658 000:175.898 JLINK_Reset()
T1658 000:175.906 JLINK_GetResetTypeDesc
T1658 000:175.911 - 0.005ms
T1658 000:177.493 Reset type: NORMAL (https://wiki.segger.com/J-Link_Reset_Strategies)
T1658 000:177.510 CPU is running
T1658 000:177.518 CPU_WriteMem(4 bytes @ 0xE000EDF0)
T1658 000:177.714 CPU is running
T1658 000:177.723 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 000:179.476 Reset: Halt core after reset via DEMCR.VC_CORERESET.
T1658 000:181.504 Reset: Reset device via AIRCR.SYSRESETREQ.
T1658 000:181.526 CPU is running
T1658 000:181.537 CPU_WriteMem(4 bytes @ 0xE000ED0C)
T1658 000:233.134 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 000:233.627 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 000:235.683 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 000:242.278 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 000:243.914 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 000:244.296 CPU_WriteMem(4 bytes @ 0xE0001028)
T1658 000:244.737 CPU_WriteMem(4 bytes @ 0xE0001038)
T1658 000:245.160 CPU_WriteMem(4 bytes @ 0xE0001048)
T1658 000:245.582 CPU_WriteMem(4 bytes @ 0xE0001058)
T1658 000:246.029 CPU_WriteMem(4 bytes @ 0xE0002000)
T1658 000:246.456 CPU_ReadMem(4 bytes @ 0xE000EDFC)
T1658 000:246.880 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:247.332 - 71.430ms
T1658 000:247.401 JLINK_Halt()
T1658 000:247.426 - 0.024ms returns 0x00
T1658 000:247.458 JLINK_ReadMemU32(0xE000EDF0, 0x1 Items)
T1658 000:247.501 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 000:247.937 Data: 03 00 03 00
T1658 000:248.004 Debug reg: DHCSR
T1658 000:248.037 - 0.579ms returns 1 (0x1)
T1658 000:248.075 JLINK_WriteU32(0xE000EDF0, 0xA05F0003)
T1658 000:248.098 Debug reg: DHCSR
T1658 000:249.145 CPU_WriteMem(4 bytes @ 0xE000EDF0)
T1658 000:249.593 - 1.517ms returns 0 (0x00000000)
T1658 000:249.636 JLINK_WriteU32(0xE000EDFC, 0x01000000)
T1658 000:249.660 Debug reg: DEMCR
T1658 000:249.704 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 000:250.135 - 0.498ms returns 0 (0x00000000)
T1658 000:271.785 JLINK_GetHWStatus(...)
T1658 000:272.008 - 0.222ms returns 0
T1658 000:279.765 JLINK_GetNumBPUnits(Type = 0xFFFFFF00)
T1658 000:279.785 - 0.019ms returns 0x06
T1658 000:279.794 JLINK_GetNumBPUnits(Type = 0xF0)
T1658 000:279.802 - 0.007ms returns 0x2000
T1658 000:279.810 JLINK_GetNumWPUnits()
T1658 000:279.817 - 0.007ms returns 4
T1658 000:285.862 JLINK_GetSpeed()
T1658 000:285.882 - 0.019ms returns 15000
T1658 000:289.552 JLINK_ReadMemU32(0xE000E004, 0x1 Items)
T1658 000:289.587 CPU_ReadMem(4 bytes @ 0xE000E004)
T1658 000:289.882 Data: 01 00 00 00
T1658 000:289.898 - 0.345ms returns 1 (0x1)
T1658 000:289.907 JLINK_ReadMemU32(0xE000E004, 0x1 Items)
T1658 000:289.917 CPU_ReadMem(4 bytes @ 0xE000E004)
T1658 000:290.169 Data: 01 00 00 00
T1658 000:290.184 - 0.277ms returns 1 (0x1)
T1658 000:290.193 JLINK_WriteMemEx(0xE0001000, 0x0000001C Bytes, Flags = 0x02000004)
T1658 000:290.199 Data: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...
T1658 000:290.214 CPU_WriteMem(28 bytes @ 0xE0001000)
T1658 000:290.556 - 0.363ms returns 0x1C
T1658 000:290.574 JLINK_Halt()
T1658 000:290.580 - 0.006ms returns 0x00
T1658 000:290.587 JLINK_IsHalted()
T1658 000:290.593 - 0.006ms returns TRUE
T1658 000:292.802 JLINK_WriteMem(0x20000000, 0x164 Bytes, ...)
T1658 000:292.811 Data: 00 BE 0A E0 0D 78 2D 06 68 40 08 24 40 00 00 D3 ...
T1658 000:293.031 CPU_WriteMem(356 bytes @ 0x20000000)
T1658 000:294.024 - 1.222ms returns 0x164
T1658 000:294.051 JLINK_HasError()
T1658 000:294.059 JLINK_WriteReg(R0, 0x08000000)
T1658 000:294.066 - 0.007ms returns 0
T1658 000:294.072 JLINK_WriteReg(R1, 0x007A1200)
T1658 000:294.077 - 0.005ms returns 0
T1658 000:294.083 JLINK_WriteReg(R2, 0x00000001)
T1658 000:294.088 - 0.005ms returns 0
T1658 000:294.094 JLINK_WriteReg(R3, 0x00000000)
T1658 000:294.099 - 0.005ms returns 0
T1658 000:294.104 JLINK_WriteReg(R4, 0x00000000)
T1658 000:294.109 - 0.005ms returns 0
T1658 000:294.119 JLINK_WriteReg(R5, 0x00000000)
T1658 000:294.124 - 0.005ms returns 0
T1658 000:294.130 JLINK_WriteReg(R6, 0x00000000)
T1658 000:294.135 - 0.005ms returns 0
T1658 000:294.141 JLINK_WriteReg(R7, 0x00000000)
T1658 000:294.146 - 0.005ms returns 0
T1658 000:294.161 JLINK_WriteReg(R8, 0x00000000)
T1658 000:294.167 - 0.015ms returns 0
T1658 000:294.173 JLINK_WriteReg(R9, 0x20000160)
T1658 000:294.178 - 0.005ms returns 0
T1658 000:294.184 JLINK_WriteReg(R10, 0x00000000)
T1658 000:294.189 - 0.005ms returns 0
T1658 000:294.195 JLINK_WriteReg(R11, 0x00000000)
T1658 000:294.200 - 0.005ms returns 0
T1658 000:294.206 JLINK_WriteReg(R12, 0x00000000)
T1658 000:294.211 - 0.005ms returns 0
T1658 000:294.217 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:294.222 - 0.005ms returns 0
T1658 000:294.228 JLINK_WriteReg(R14, 0x20000001)
T1658 000:294.233 - 0.005ms returns 0
T1658 000:294.243 JLINK_WriteReg(R15 (PC), 0x20000038)
T1658 000:294.249 - 0.010ms returns 0
T1658 000:294.255 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:294.260 - 0.005ms returns 0
T1658 000:294.265 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:294.270 - 0.005ms returns 0
T1658 000:294.276 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:294.281 - 0.005ms returns 0
T1658 000:294.287 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:294.292 - 0.005ms returns 0
T1658 000:294.298 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:294.306 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:294.559 - 0.260ms returns 0x00000001
T1658 000:294.567 JLINK_Go()
T1658 000:294.574 CPU_WriteMem(2 bytes @ 0x20000000)
T1658 000:294.802 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:295.041 CPU_WriteMem(4 bytes @ 0xE0002008)
T1658 000:295.050 CPU_WriteMem(4 bytes @ 0xE000200C)
T1658 000:295.057 CPU_WriteMem(4 bytes @ 0xE0002010)
T1658 000:295.064 CPU_WriteMem(4 bytes @ 0xE0002014)
T1658 000:295.071 CPU_WriteMem(4 bytes @ 0xE0002018)
T1658 000:295.082 CPU_WriteMem(4 bytes @ 0xE000201C)
T1658 000:295.781 CPU_WriteMem(4 bytes @ 0xE0001004)
T1658 000:298.522 Memory map 'after startup completion point' is active
T1658 000:298.534 - 3.966ms
T1658 000:298.541 JLINK_IsHalted()
T1658 000:299.467 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:299.641 - 1.099ms returns TRUE
T1658 000:299.648 JLINK_ReadReg(R15 (PC))
T1658 000:299.654 - 0.005ms returns 0x20000000
T1658 000:299.660 JLINK_ClrBPEx(BPHandle = 0x00000001)
T1658 000:299.665 - 0.005ms returns 0x00
T1658 000:299.670 JLINK_ReadReg(R0)
T1658 000:299.675 - 0.004ms returns 0x00000000
T1658 000:299.870 JLINK_HasError()
T1658 000:299.882 JLINK_WriteReg(R0, 0x08000000)
T1658 000:299.888 - 0.005ms returns 0
T1658 000:299.894 JLINK_WriteReg(R1, 0x00000800)
T1658 000:299.899 - 0.004ms returns 0
T1658 000:299.904 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:299.909 - 0.004ms returns 0
T1658 000:299.914 JLINK_WriteReg(R3, 0x00000000)
T1658 000:299.919 - 0.004ms returns 0
T1658 000:299.924 JLINK_WriteReg(R4, 0x00000000)
T1658 000:299.929 - 0.004ms returns 0
T1658 000:299.934 JLINK_WriteReg(R5, 0x00000000)
T1658 000:299.938 - 0.004ms returns 0
T1658 000:299.944 JLINK_WriteReg(R6, 0x00000000)
T1658 000:299.948 - 0.004ms returns 0
T1658 000:299.954 JLINK_WriteReg(R7, 0x00000000)
T1658 000:299.958 - 0.004ms returns 0
T1658 000:299.964 JLINK_WriteReg(R8, 0x00000000)
T1658 000:299.968 - 0.004ms returns 0
T1658 000:299.973 JLINK_WriteReg(R9, 0x20000160)
T1658 000:299.978 - 0.004ms returns 0
T1658 000:299.983 JLINK_WriteReg(R10, 0x00000000)
T1658 000:299.988 - 0.004ms returns 0
T1658 000:299.993 JLINK_WriteReg(R11, 0x00000000)
T1658 000:299.998 - 0.004ms returns 0
T1658 000:300.003 JLINK_WriteReg(R12, 0x00000000)
T1658 000:300.008 - 0.004ms returns 0
T1658 000:300.013 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:300.018 - 0.005ms returns 0
T1658 000:300.023 JLINK_WriteReg(R14, 0x20000001)
T1658 000:300.028 - 0.004ms returns 0
T1658 000:300.033 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:300.038 - 0.004ms returns 0
T1658 000:300.044 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:300.048 - 0.004ms returns 0
T1658 000:300.053 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:300.058 - 0.004ms returns 0
T1658 000:300.063 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:300.068 - 0.004ms returns 0
T1658 000:300.073 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:300.078 - 0.004ms returns 0
T1658 000:300.084 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:300.089 - 0.005ms returns 0x00000002
T1658 000:300.094 JLINK_Go()
T1658 000:300.104 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:301.237 - 1.142ms
T1658 000:301.245 JLINK_IsHalted()
T1658 000:302.221 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:302.459 - 1.213ms returns TRUE
T1658 000:302.473 JLINK_ReadReg(R15 (PC))
T1658 000:302.481 - 0.007ms returns 0x20000000
T1658 000:302.487 JLINK_ClrBPEx(BPHandle = 0x00000002)
T1658 000:302.492 - 0.005ms returns 0x00
T1658 000:302.498 JLINK_ReadReg(R0)
T1658 000:302.503 - 0.004ms returns 0x00000001
T1658 000:302.509 JLINK_HasError()
T1658 000:302.546 JLINK_WriteReg(R0, 0x08000000)
T1658 000:302.558 - 0.011ms returns 0
T1658 000:302.564 JLINK_WriteReg(R1, 0x00000800)
T1658 000:302.569 - 0.005ms returns 0
T1658 000:302.574 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:302.579 - 0.004ms returns 0
T1658 000:302.584 JLINK_WriteReg(R3, 0x00000000)
T1658 000:302.589 - 0.004ms returns 0
T1658 000:302.594 JLINK_WriteReg(R4, 0x00000000)
T1658 000:302.599 - 0.004ms returns 0
T1658 000:302.604 JLINK_WriteReg(R5, 0x00000000)
T1658 000:302.609 - 0.004ms returns 0
T1658 000:302.614 JLINK_WriteReg(R6, 0x00000000)
T1658 000:302.619 - 0.004ms returns 0
T1658 000:302.624 JLINK_WriteReg(R7, 0x00000000)
T1658 000:302.628 - 0.004ms returns 0
T1658 000:302.634 JLINK_WriteReg(R8, 0x00000000)
T1658 000:302.638 - 0.004ms returns 0
T1658 000:302.644 JLINK_WriteReg(R9, 0x20000160)
T1658 000:302.648 - 0.004ms returns 0
T1658 000:302.654 JLINK_WriteReg(R10, 0x00000000)
T1658 000:302.658 - 0.004ms returns 0
T1658 000:302.664 JLINK_WriteReg(R11, 0x00000000)
T1658 000:302.668 - 0.004ms returns 0
T1658 000:302.673 JLINK_WriteReg(R12, 0x00000000)
T1658 000:302.678 - 0.004ms returns 0
T1658 000:302.683 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:302.688 - 0.005ms returns 0
T1658 000:302.694 JLINK_WriteReg(R14, 0x20000001)
T1658 000:302.698 - 0.004ms returns 0
T1658 000:302.704 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:302.708 - 0.004ms returns 0
T1658 000:302.714 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:302.719 - 0.004ms returns 0
T1658 000:302.724 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:302.732 - 0.008ms returns 0
T1658 000:302.740 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:302.745 - 0.004ms returns 0
T1658 000:302.750 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:302.755 - 0.004ms returns 0
T1658 000:302.761 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:302.766 - 0.006ms returns 0x00000003
T1658 000:302.772 JLINK_Go()
T1658 000:302.782 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:303.959 - 1.187ms
T1658 000:303.967 JLINK_IsHalted()
T1658 000:304.118 - 0.150ms returns FALSE
T1658 000:304.126 JLINK_HasError()
T1658 000:315.374 JLINK_IsHalted()
T1658 000:315.649 - 0.277ms returns FALSE
T1658 000:315.658 JLINK_HasError()
T1658 000:317.709 JLINK_IsHalted()
T1658 000:318.031 - 0.321ms returns FALSE
T1658 000:318.056 JLINK_HasError()
T1658 000:319.690 JLINK_IsHalted()
T1658 000:320.070 - 0.379ms returns FALSE
T1658 000:320.111 JLINK_HasError()
T1658 000:321.699 JLINK_IsHalted()
T1658 000:322.046 - 0.345ms returns FALSE
T1658 000:322.071 JLINK_HasError()
T1658 000:323.683 JLINK_IsHalted()
T1658 000:324.032 - 0.349ms returns FALSE
T1658 000:324.058 JLINK_HasError()
T1658 000:325.675 JLINK_IsHalted()
T1658 000:325.935 - 0.258ms returns FALSE
T1658 000:325.959 JLINK_HasError()
T1658 000:327.897 JLINK_IsHalted()
T1658 000:329.082 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:329.376 - 1.478ms returns TRUE
T1658 000:329.402 JLINK_ReadReg(R15 (PC))
T1658 000:329.423 - 0.020ms returns 0x20000000
T1658 000:329.441 JLINK_ClrBPEx(BPHandle = 0x00000003)
T1658 000:329.457 - 0.016ms returns 0x00
T1658 000:329.475 JLINK_ReadReg(R0)
T1658 000:329.491 - 0.015ms returns 0x00000000
T1658 000:330.724 JLINK_HasError()
T1658 000:330.759 JLINK_WriteReg(R0, 0x08000800)
T1658 000:330.779 - 0.019ms returns 0
T1658 000:330.797 JLINK_WriteReg(R1, 0x00000800)
T1658 000:330.813 - 0.015ms returns 0
T1658 000:330.830 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:330.846 - 0.015ms returns 0
T1658 000:330.862 JLINK_WriteReg(R3, 0x00000000)
T1658 000:330.878 - 0.015ms returns 0
T1658 000:330.895 JLINK_WriteReg(R4, 0x00000000)
T1658 000:330.910 - 0.015ms returns 0
T1658 000:330.928 JLINK_WriteReg(R5, 0x00000000)
T1658 000:330.943 - 0.015ms returns 0
T1658 000:330.960 JLINK_WriteReg(R6, 0x00000000)
T1658 000:330.976 - 0.015ms returns 0
T1658 000:330.993 JLINK_WriteReg(R7, 0x00000000)
T1658 000:331.008 - 0.015ms returns 0
T1658 000:331.025 JLINK_WriteReg(R8, 0x00000000)
T1658 000:331.040 - 0.015ms returns 0
T1658 000:331.057 JLINK_WriteReg(R9, 0x20000160)
T1658 000:331.072 - 0.015ms returns 0
T1658 000:331.090 JLINK_WriteReg(R10, 0x00000000)
T1658 000:331.105 - 0.016ms returns 0
T1658 000:331.122 JLINK_WriteReg(R11, 0x00000000)
T1658 000:331.138 - 0.015ms returns 0
T1658 000:331.155 JLINK_WriteReg(R12, 0x00000000)
T1658 000:331.170 - 0.015ms returns 0
T1658 000:331.188 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:331.204 - 0.017ms returns 0
T1658 000:331.221 JLINK_WriteReg(R14, 0x20000001)
T1658 000:331.237 - 0.015ms returns 0
T1658 000:331.254 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:331.270 - 0.016ms returns 0
T1658 000:331.287 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:331.305 - 0.018ms returns 0
T1658 000:331.323 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:331.339 - 0.015ms returns 0
T1658 000:331.356 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:331.372 - 0.016ms returns 0
T1658 000:331.389 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:331.405 - 0.015ms returns 0
T1658 000:331.424 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:331.441 - 0.018ms returns 0x00000004
T1658 000:331.471 JLINK_Go()
T1658 000:331.497 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:332.937 - 1.466ms
T1658 000:332.957 JLINK_IsHalted()
T1658 000:334.018 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:334.185 - 1.228ms returns TRUE
T1658 000:334.193 JLINK_ReadReg(R15 (PC))
T1658 000:334.198 - 0.005ms returns 0x20000000
T1658 000:334.204 JLINK_ClrBPEx(BPHandle = 0x00000004)
T1658 000:334.209 - 0.005ms returns 0x00
T1658 000:334.214 JLINK_ReadReg(R0)
T1658 000:334.222 - 0.008ms returns 0x00000001
T1658 000:334.230 JLINK_HasError()
T1658 000:334.236 JLINK_WriteReg(R0, 0x08000800)
T1658 000:334.241 - 0.005ms returns 0
T1658 000:334.246 JLINK_WriteReg(R1, 0x00000800)
T1658 000:334.251 - 0.004ms returns 0
T1658 000:334.256 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:334.261 - 0.004ms returns 0
T1658 000:334.266 JLINK_WriteReg(R3, 0x00000000)
T1658 000:334.271 - 0.004ms returns 0
T1658 000:334.276 JLINK_WriteReg(R4, 0x00000000)
T1658 000:334.281 - 0.004ms returns 0
T1658 000:334.286 JLINK_WriteReg(R5, 0x00000000)
T1658 000:334.291 - 0.004ms returns 0
T1658 000:334.296 JLINK_WriteReg(R6, 0x00000000)
T1658 000:334.300 - 0.004ms returns 0
T1658 000:334.306 JLINK_WriteReg(R7, 0x00000000)
T1658 000:334.310 - 0.004ms returns 0
T1658 000:334.316 JLINK_WriteReg(R8, 0x00000000)
T1658 000:334.320 - 0.004ms returns 0
T1658 000:334.325 JLINK_WriteReg(R9, 0x20000160)
T1658 000:334.330 - 0.004ms returns 0
T1658 000:334.335 JLINK_WriteReg(R10, 0x00000000)
T1658 000:334.340 - 0.004ms returns 0
T1658 000:334.345 JLINK_WriteReg(R11, 0x00000000)
T1658 000:334.350 - 0.004ms returns 0
T1658 000:334.355 JLINK_WriteReg(R12, 0x00000000)
T1658 000:334.360 - 0.004ms returns 0
T1658 000:334.365 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:334.370 - 0.005ms returns 0
T1658 000:334.375 JLINK_WriteReg(R14, 0x20000001)
T1658 000:334.380 - 0.004ms returns 0
T1658 000:334.385 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:334.390 - 0.004ms returns 0
T1658 000:334.395 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:334.400 - 0.004ms returns 0
T1658 000:334.405 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:334.410 - 0.004ms returns 0
T1658 000:334.415 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:334.420 - 0.004ms returns 0
T1658 000:334.425 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:334.430 - 0.004ms returns 0
T1658 000:334.435 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:334.440 - 0.005ms returns 0x00000005
T1658 000:334.445 JLINK_Go()
T1658 000:334.454 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:335.685 - 1.239ms
T1658 000:335.702 JLINK_IsHalted()
T1658 000:335.886 - 0.184ms returns FALSE
T1658 000:335.898 JLINK_HasError()
T1658 000:337.934 JLINK_IsHalted()
T1658 000:338.116 - 0.182ms returns FALSE
T1658 000:338.127 JLINK_HasError()
T1658 000:339.182 JLINK_IsHalted()
T1658 000:339.363 - 0.182ms returns FALSE
T1658 000:339.375 JLINK_HasError()
T1658 000:341.379 JLINK_IsHalted()
T1658 000:341.623 - 0.244ms returns FALSE
T1658 000:341.631 JLINK_HasError()
T1658 000:343.350 JLINK_IsHalted()
T1658 000:343.623 - 0.272ms returns FALSE
T1658 000:343.630 JLINK_HasError()
T1658 000:345.668 JLINK_IsHalted()
T1658 000:345.915 - 0.247ms returns FALSE
T1658 000:345.922 JLINK_HasError()
T1658 000:348.006 JLINK_IsHalted()
T1658 000:348.433 - 0.426ms returns FALSE
T1658 000:348.480 JLINK_HasError()
T1658 000:350.431 JLINK_IsHalted()
T1658 000:350.770 - 0.337ms returns FALSE
T1658 000:350.820 JLINK_HasError()
T1658 000:352.543 JLINK_IsHalted()
T1658 000:352.915 - 0.371ms returns FALSE
T1658 000:352.964 JLINK_HasError()
T1658 000:354.422 JLINK_IsHalted()
T1658 000:354.837 - 0.414ms returns FALSE
T1658 000:354.870 JLINK_HasError()
T1658 000:356.803 JLINK_IsHalted()
T1658 000:357.178 - 0.375ms returns FALSE
T1658 000:357.211 JLINK_HasError()
T1658 000:358.833 JLINK_IsHalted()
T1658 000:360.262 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:360.682 - 1.848ms returns TRUE
T1658 000:360.720 JLINK_ReadReg(R15 (PC))
T1658 000:360.749 - 0.028ms returns 0x20000000
T1658 000:360.775 JLINK_ClrBPEx(BPHandle = 0x00000005)
T1658 000:360.799 - 0.023ms returns 0x00
T1658 000:360.826 JLINK_ReadReg(R0)
T1658 000:360.849 - 0.023ms returns 0x00000000
T1658 000:362.577 JLINK_HasError()
T1658 000:362.626 JLINK_WriteReg(R0, 0x08001000)
T1658 000:362.655 - 0.029ms returns 0
T1658 000:362.682 JLINK_WriteReg(R1, 0x00000800)
T1658 000:362.706 - 0.023ms returns 0
T1658 000:362.731 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:362.754 - 0.023ms returns 0
T1658 000:362.791 JLINK_WriteReg(R3, 0x00000000)
T1658 000:362.823 - 0.032ms returns 0
T1658 000:362.849 JLINK_WriteReg(R4, 0x00000000)
T1658 000:362.871 - 0.022ms returns 0
T1658 000:362.897 JLINK_WriteReg(R5, 0x00000000)
T1658 000:362.919 - 0.022ms returns 0
T1658 000:362.945 JLINK_WriteReg(R6, 0x00000000)
T1658 000:362.967 - 0.022ms returns 0
T1658 000:362.992 JLINK_WriteReg(R7, 0x00000000)
T1658 000:363.015 - 0.023ms returns 0
T1658 000:363.040 JLINK_WriteReg(R8, 0x00000000)
T1658 000:363.062 - 0.022ms returns 0
T1658 000:363.088 JLINK_WriteReg(R9, 0x20000160)
T1658 000:363.111 - 0.023ms returns 0
T1658 000:363.137 JLINK_WriteReg(R10, 0x00000000)
T1658 000:363.160 - 0.023ms returns 0
T1658 000:363.185 JLINK_WriteReg(R11, 0x00000000)
T1658 000:363.213 - 0.028ms returns 0
T1658 000:363.238 JLINK_WriteReg(R12, 0x00000000)
T1658 000:363.261 - 0.023ms returns 0
T1658 000:363.288 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:363.312 - 0.025ms returns 0
T1658 000:363.337 JLINK_WriteReg(R14, 0x20000001)
T1658 000:363.361 - 0.023ms returns 0
T1658 000:363.387 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:363.410 - 0.023ms returns 0
T1658 000:363.435 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:363.458 - 0.023ms returns 0
T1658 000:363.483 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:363.506 - 0.022ms returns 0
T1658 000:363.531 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:363.554 - 0.022ms returns 0
T1658 000:363.579 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:363.602 - 0.022ms returns 0
T1658 000:363.629 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:363.655 - 0.027ms returns 0x00000006
T1658 000:363.680 JLINK_Go()
T1658 000:363.729 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:365.426 - 1.744ms
T1658 000:365.464 JLINK_IsHalted()
T1658 000:366.930 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:367.432 - 1.966ms returns TRUE
T1658 000:367.487 JLINK_ReadReg(R15 (PC))
T1658 000:367.520 - 0.031ms returns 0x20000000
T1658 000:367.547 JLINK_ClrBPEx(BPHandle = 0x00000006)
T1658 000:367.572 - 0.025ms returns 0x00
T1658 000:367.598 JLINK_ReadReg(R0)
T1658 000:367.622 - 0.023ms returns 0x00000001
T1658 000:367.648 JLINK_HasError()
T1658 000:367.676 JLINK_WriteReg(R0, 0x08001000)
T1658 000:367.702 - 0.026ms returns 0
T1658 000:367.728 JLINK_WriteReg(R1, 0x00000800)
T1658 000:367.751 - 0.023ms returns 0
T1658 000:367.777 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:367.800 - 0.023ms returns 0
T1658 000:367.826 JLINK_WriteReg(R3, 0x00000000)
T1658 000:367.849 - 0.022ms returns 0
T1658 000:367.874 JLINK_WriteReg(R4, 0x00000000)
T1658 000:367.898 - 0.023ms returns 0
T1658 000:367.923 JLINK_WriteReg(R5, 0x00000000)
T1658 000:367.946 - 0.023ms returns 0
T1658 000:367.972 JLINK_WriteReg(R6, 0x00000000)
T1658 000:367.995 - 0.023ms returns 0
T1658 000:368.021 JLINK_WriteReg(R7, 0x00000000)
T1658 000:368.043 - 0.022ms returns 0
T1658 000:368.069 JLINK_WriteReg(R8, 0x00000000)
T1658 000:368.092 - 0.023ms returns 0
T1658 000:368.118 JLINK_WriteReg(R9, 0x20000160)
T1658 000:368.141 - 0.023ms returns 0
T1658 000:368.166 JLINK_WriteReg(R10, 0x00000000)
T1658 000:368.189 - 0.023ms returns 0
T1658 000:368.221 JLINK_WriteReg(R11, 0x00000000)
T1658 000:368.245 - 0.023ms returns 0
T1658 000:368.271 JLINK_WriteReg(R12, 0x00000000)
T1658 000:368.294 - 0.023ms returns 0
T1658 000:368.320 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:368.344 - 0.024ms returns 0
T1658 000:368.370 JLINK_WriteReg(R14, 0x20000001)
T1658 000:368.393 - 0.023ms returns 0
T1658 000:368.419 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:368.441 - 0.022ms returns 0
T1658 000:368.468 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:368.491 - 0.023ms returns 0
T1658 000:368.517 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:368.540 - 0.023ms returns 0
T1658 000:368.566 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:368.589 - 0.023ms returns 0
T1658 000:368.615 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:368.637 - 0.022ms returns 0
T1658 000:368.665 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:368.692 - 0.028ms returns 0x00000007
T1658 000:368.885 JLINK_Go()
T1658 000:368.940 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:370.687 - 1.800ms
T1658 000:370.741 JLINK_IsHalted()
T1658 000:371.068 - 0.325ms returns FALSE
T1658 000:371.103 JLINK_HasError()
T1658 000:373.221 JLINK_IsHalted()
T1658 000:373.677 - 0.454ms returns FALSE
T1658 000:373.733 JLINK_HasError()
T1658 000:375.201 JLINK_IsHalted()
T1658 000:375.671 - 0.468ms returns FALSE
T1658 000:375.726 JLINK_HasError()
T1658 000:377.210 JLINK_IsHalted()
T1658 000:377.570 - 0.358ms returns FALSE
T1658 000:377.625 JLINK_HasError()
T1658 000:379.186 JLINK_IsHalted()
T1658 000:379.597 - 0.409ms returns FALSE
T1658 000:379.652 JLINK_HasError()
T1658 000:381.179 JLINK_IsHalted()
T1658 000:381.596 - 0.416ms returns FALSE
T1658 000:381.636 JLINK_HasError()
T1658 000:383.192 JLINK_IsHalted()
T1658 000:383.626 - 0.432ms returns FALSE
T1658 000:383.666 JLINK_HasError()
T1658 000:385.287 JLINK_IsHalted()
T1658 000:385.672 - 0.384ms returns FALSE
T1658 000:385.712 JLINK_HasError()
T1658 000:387.208 JLINK_IsHalted()
T1658 000:387.562 - 0.353ms returns FALSE
T1658 000:387.591 JLINK_HasError()
T1658 000:389.198 JLINK_IsHalted()
T1658 000:389.607 - 0.408ms returns FALSE
T1658 000:389.636 JLINK_HasError()
T1658 000:391.649 JLINK_IsHalted()
T1658 000:392.012 - 0.362ms returns FALSE
T1658 000:392.041 JLINK_HasError()
T1658 000:393.650 JLINK_IsHalted()
T1658 000:394.944 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:395.320 - 1.668ms returns TRUE
T1658 000:395.349 JLINK_ReadReg(R15 (PC))
T1658 000:395.366 - 0.016ms returns 0x20000000
T1658 000:395.380 JLINK_ClrBPEx(BPHandle = 0x00000007)
T1658 000:395.393 - 0.012ms returns 0x00
T1658 000:395.406 JLINK_ReadReg(R0)
T1658 000:395.418 - 0.011ms returns 0x00000000
T1658 000:396.392 JLINK_HasError()
T1658 000:396.420 JLINK_WriteReg(R0, 0x08001800)
T1658 000:396.436 - 0.016ms returns 0
T1658 000:396.450 JLINK_WriteReg(R1, 0x00000800)
T1658 000:396.462 - 0.012ms returns 0
T1658 000:396.475 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:396.487 - 0.011ms returns 0
T1658 000:396.499 JLINK_WriteReg(R3, 0x00000000)
T1658 000:396.511 - 0.012ms returns 0
T1658 000:396.524 JLINK_WriteReg(R4, 0x00000000)
T1658 000:396.536 - 0.011ms returns 0
T1658 000:396.548 JLINK_WriteReg(R5, 0x00000000)
T1658 000:396.560 - 0.011ms returns 0
T1658 000:396.573 JLINK_WriteReg(R6, 0x00000000)
T1658 000:396.585 - 0.011ms returns 0
T1658 000:396.597 JLINK_WriteReg(R7, 0x00000000)
T1658 000:396.609 - 0.011ms returns 0
T1658 000:396.622 JLINK_WriteReg(R8, 0x00000000)
T1658 000:396.634 - 0.011ms returns 0
T1658 000:396.646 JLINK_WriteReg(R9, 0x20000160)
T1658 000:396.657 - 0.011ms returns 0
T1658 000:396.670 JLINK_WriteReg(R10, 0x00000000)
T1658 000:396.682 - 0.012ms returns 0
T1658 000:396.695 JLINK_WriteReg(R11, 0x00000000)
T1658 000:396.707 - 0.011ms returns 0
T1658 000:396.719 JLINK_WriteReg(R12, 0x00000000)
T1658 000:396.731 - 0.011ms returns 0
T1658 000:396.744 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:396.756 - 0.012ms returns 0
T1658 000:396.769 JLINK_WriteReg(R14, 0x20000001)
T1658 000:396.781 - 0.011ms returns 0
T1658 000:396.794 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:396.806 - 0.012ms returns 0
T1658 000:396.819 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:396.831 - 0.012ms returns 0
T1658 000:396.843 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:396.855 - 0.011ms returns 0
T1658 000:396.868 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:396.879 - 0.011ms returns 0
T1658 000:396.892 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:396.904 - 0.011ms returns 0
T1658 000:396.918 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:396.931 - 0.013ms returns 0x00000008
T1658 000:396.944 JLINK_Go()
T1658 000:396.970 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:398.455 - 1.509ms
T1658 000:398.488 JLINK_IsHalted()
T1658 000:399.638 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:399.990 - 1.501ms returns TRUE
T1658 000:400.019 JLINK_ReadReg(R15 (PC))
T1658 000:400.036 - 0.016ms returns 0x20000000
T1658 000:400.061 JLINK_ClrBPEx(BPHandle = 0x00000008)
T1658 000:400.074 - 0.013ms returns 0x00
T1658 000:400.087 JLINK_ReadReg(R0)
T1658 000:400.099 - 0.011ms returns 0x00000001
T1658 000:400.113 JLINK_HasError()
T1658 000:400.127 JLINK_WriteReg(R0, 0x08001800)
T1658 000:400.140 - 0.013ms returns 0
T1658 000:400.153 JLINK_WriteReg(R1, 0x00000800)
T1658 000:400.165 - 0.011ms returns 0
T1658 000:400.177 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:400.189 - 0.011ms returns 0
T1658 000:400.201 JLINK_WriteReg(R3, 0x00000000)
T1658 000:400.213 - 0.011ms returns 0
T1658 000:400.226 JLINK_WriteReg(R4, 0x00000000)
T1658 000:400.237 - 0.011ms returns 0
T1658 000:400.250 JLINK_WriteReg(R5, 0x00000000)
T1658 000:400.262 - 0.011ms returns 0
T1658 000:400.277 JLINK_WriteReg(R6, 0x00000000)
T1658 000:400.288 - 0.011ms returns 0
T1658 000:400.301 JLINK_WriteReg(R7, 0x00000000)
T1658 000:400.313 - 0.011ms returns 0
T1658 000:400.325 JLINK_WriteReg(R8, 0x00000000)
T1658 000:400.337 - 0.011ms returns 0
T1658 000:400.350 JLINK_WriteReg(R9, 0x20000160)
T1658 000:400.361 - 0.011ms returns 0
T1658 000:400.374 JLINK_WriteReg(R10, 0x00000000)
T1658 000:400.387 - 0.013ms returns 0
T1658 000:400.400 JLINK_WriteReg(R11, 0x00000000)
T1658 000:400.412 - 0.011ms returns 0
T1658 000:400.424 JLINK_WriteReg(R12, 0x00000000)
T1658 000:400.436 - 0.011ms returns 0
T1658 000:400.449 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:400.461 - 0.012ms returns 0
T1658 000:400.474 JLINK_WriteReg(R14, 0x20000001)
T1658 000:400.485 - 0.011ms returns 0
T1658 000:400.498 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:400.510 - 0.011ms returns 0
T1658 000:400.523 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:400.534 - 0.011ms returns 0
T1658 000:400.547 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:400.559 - 0.011ms returns 0
T1658 000:400.571 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:400.583 - 0.011ms returns 0
T1658 000:400.595 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:400.607 - 0.011ms returns 0
T1658 000:400.621 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:400.634 - 0.013ms returns 0x00000009
T1658 000:400.647 JLINK_Go()
T1658 000:400.672 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:402.333 - 1.684ms
T1658 000:402.367 JLINK_IsHalted()
T1658 000:402.685 - 0.316ms returns FALSE
T1658 000:402.718 JLINK_HasError()
T1658 000:406.307 JLINK_IsHalted()
T1658 000:406.680 - 0.372ms returns FALSE
T1658 000:406.709 JLINK_HasError()
T1658 000:408.308 JLINK_IsHalted()
T1658 000:408.677 - 0.368ms returns FALSE
T1658 000:408.706 JLINK_HasError()
T1658 000:410.719 JLINK_IsHalted()
T1658 000:411.032 - 0.311ms returns FALSE
T1658 000:411.061 JLINK_HasError()
T1658 000:412.731 JLINK_IsHalted()
T1658 000:413.050 - 0.317ms returns FALSE
T1658 000:413.079 JLINK_HasError()
T1658 000:414.716 JLINK_IsHalted()
T1658 000:415.065 - 0.347ms returns FALSE
T1658 000:415.093 JLINK_HasError()
T1658 000:417.061 JLINK_IsHalted()
T1658 000:417.401 - 0.339ms returns FALSE
T1658 000:417.430 JLINK_HasError()
T1658 000:419.060 JLINK_IsHalted()
T1658 000:419.349 - 0.287ms returns FALSE
T1658 000:419.380 JLINK_HasError()
T1658 000:421.089 JLINK_IsHalted()
T1658 000:421.453 - 0.362ms returns FALSE
T1658 000:421.482 JLINK_HasError()
T1658 000:423.094 JLINK_IsHalted()
T1658 000:423.456 - 0.360ms returns FALSE
T1658 000:423.485 JLINK_HasError()
T1658 000:425.505 JLINK_IsHalted()
T1658 000:426.793 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:427.138 - 1.632ms returns TRUE
T1658 000:427.168 JLINK_ReadReg(R15 (PC))
T1658 000:427.185 - 0.017ms returns 0x20000000
T1658 000:427.199 JLINK_ClrBPEx(BPHandle = 0x00000009)
T1658 000:427.212 - 0.013ms returns 0x00
T1658 000:427.226 JLINK_ReadReg(R0)
T1658 000:427.238 - 0.011ms returns 0x00000000
T1658 000:428.182 JLINK_HasError()
T1658 000:428.208 JLINK_WriteReg(R0, 0x08002000)
T1658 000:428.224 - 0.015ms returns 0
T1658 000:428.237 JLINK_WriteReg(R1, 0x00000800)
T1658 000:428.249 - 0.011ms returns 0
T1658 000:428.262 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:428.282 - 0.019ms returns 0
T1658 000:428.300 JLINK_WriteReg(R3, 0x00000000)
T1658 000:428.312 - 0.012ms returns 0
T1658 000:428.325 JLINK_WriteReg(R4, 0x00000000)
T1658 000:428.337 - 0.011ms returns 0
T1658 000:428.349 JLINK_WriteReg(R5, 0x00000000)
T1658 000:428.361 - 0.011ms returns 0
T1658 000:428.374 JLINK_WriteReg(R6, 0x00000000)
T1658 000:428.385 - 0.011ms returns 0
T1658 000:428.398 JLINK_WriteReg(R7, 0x00000000)
T1658 000:428.410 - 0.011ms returns 0
T1658 000:428.422 JLINK_WriteReg(R8, 0x00000000)
T1658 000:428.434 - 0.011ms returns 0
T1658 000:428.447 JLINK_WriteReg(R9, 0x20000160)
T1658 000:428.458 - 0.011ms returns 0
T1658 000:428.471 JLINK_WriteReg(R10, 0x00000000)
T1658 000:428.483 - 0.011ms returns 0
T1658 000:428.495 JLINK_WriteReg(R11, 0x00000000)
T1658 000:428.507 - 0.011ms returns 0
T1658 000:428.519 JLINK_WriteReg(R12, 0x00000000)
T1658 000:428.531 - 0.011ms returns 0
T1658 000:428.544 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:428.556 - 0.012ms returns 0
T1658 000:428.569 JLINK_WriteReg(R14, 0x20000001)
T1658 000:428.581 - 0.011ms returns 0
T1658 000:428.594 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:428.605 - 0.011ms returns 0
T1658 000:428.618 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:428.630 - 0.012ms returns 0
T1658 000:428.643 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:428.654 - 0.011ms returns 0
T1658 000:428.667 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:428.679 - 0.011ms returns 0
T1658 000:428.691 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:428.703 - 0.011ms returns 0
T1658 000:428.717 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:428.730 - 0.014ms returns 0x0000000A
T1658 000:428.743 JLINK_Go()
T1658 000:428.769 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:430.447 - 1.702ms
T1658 000:430.480 JLINK_IsHalted()
T1658 000:431.732 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:432.023 - 1.542ms returns TRUE
T1658 000:432.058 JLINK_ReadReg(R15 (PC))
T1658 000:432.075 - 0.016ms returns 0x20000000
T1658 000:432.173 JLINK_ClrBPEx(BPHandle = 0x0000000A)
T1658 000:432.191 - 0.018ms returns 0x00
T1658 000:432.205 JLINK_ReadReg(R0)
T1658 000:432.217 - 0.012ms returns 0x00000001
T1658 000:432.231 JLINK_HasError()
T1658 000:432.245 JLINK_WriteReg(R0, 0x08002000)
T1658 000:432.258 - 0.013ms returns 0
T1658 000:432.271 JLINK_WriteReg(R1, 0x00000800)
T1658 000:432.283 - 0.011ms returns 0
T1658 000:432.296 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:432.307 - 0.011ms returns 0
T1658 000:432.320 JLINK_WriteReg(R3, 0x00000000)
T1658 000:432.332 - 0.011ms returns 0
T1658 000:432.345 JLINK_WriteReg(R4, 0x00000000)
T1658 000:432.357 - 0.012ms returns 0
T1658 000:432.370 JLINK_WriteReg(R5, 0x00000000)
T1658 000:432.382 - 0.011ms returns 0
T1658 000:432.395 JLINK_WriteReg(R6, 0x00000000)
T1658 000:432.406 - 0.011ms returns 0
T1658 000:432.420 JLINK_WriteReg(R7, 0x00000000)
T1658 000:432.431 - 0.011ms returns 0
T1658 000:432.444 JLINK_WriteReg(R8, 0x00000000)
T1658 000:432.455 - 0.011ms returns 0
T1658 000:432.468 JLINK_WriteReg(R9, 0x20000160)
T1658 000:432.480 - 0.011ms returns 0
T1658 000:432.493 JLINK_WriteReg(R10, 0x00000000)
T1658 000:432.504 - 0.011ms returns 0
T1658 000:432.517 JLINK_WriteReg(R11, 0x00000000)
T1658 000:432.529 - 0.011ms returns 0
T1658 000:432.541 JLINK_WriteReg(R12, 0x00000000)
T1658 000:432.553 - 0.011ms returns 0
T1658 000:432.566 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:432.578 - 0.012ms returns 0
T1658 000:432.590 JLINK_WriteReg(R14, 0x20000001)
T1658 000:432.602 - 0.011ms returns 0
T1658 000:432.615 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:432.627 - 0.011ms returns 0
T1658 000:432.640 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:432.651 - 0.011ms returns 0
T1658 000:432.664 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:432.676 - 0.011ms returns 0
T1658 000:432.688 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:432.699 - 0.011ms returns 0
T1658 000:432.713 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:432.724 - 0.011ms returns 0
T1658 000:432.738 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:432.756 - 0.018ms returns 0x0000000B
T1658 000:432.774 JLINK_Go()
T1658 000:432.799 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:434.298 - 1.523ms
T1658 000:434.327 JLINK_IsHalted()
T1658 000:434.596 - 0.268ms returns FALSE
T1658 000:434.618 JLINK_HasError()
T1658 000:436.066 JLINK_IsHalted()
T1658 000:436.243 - 0.177ms returns FALSE
T1658 000:436.251 JLINK_HasError()
T1658 000:438.102 JLINK_IsHalted()
T1658 000:438.284 - 0.181ms returns FALSE
T1658 000:438.292 JLINK_HasError()
T1658 000:440.392 JLINK_IsHalted()
T1658 000:440.644 - 0.251ms returns FALSE
T1658 000:440.656 JLINK_HasError()
T1658 000:441.754 JLINK_IsHalted()
T1658 000:442.010 - 0.255ms returns FALSE
T1658 000:442.021 JLINK_HasError()
T1658 000:443.748 JLINK_IsHalted()
T1658 000:444.031 - 0.282ms returns FALSE
T1658 000:444.042 JLINK_HasError()
T1658 000:445.131 JLINK_IsHalted()
T1658 000:445.382 - 0.251ms returns FALSE
T1658 000:445.394 JLINK_HasError()
T1658 000:447.141 JLINK_IsHalted()
T1658 000:447.420 - 0.278ms returns FALSE
T1658 000:447.432 JLINK_HasError()
T1658 000:449.115 JLINK_IsHalted()
T1658 000:449.367 - 0.250ms returns FALSE
T1658 000:449.378 JLINK_HasError()
T1658 000:451.473 JLINK_IsHalted()
T1658 000:451.733 - 0.259ms returns FALSE
T1658 000:451.744 JLINK_HasError()
T1658 000:453.466 JLINK_IsHalted()
T1658 000:453.741 - 0.275ms returns FALSE
T1658 000:453.753 JLINK_HasError()
T1658 000:454.854 JLINK_IsHalted()
T1658 000:455.124 - 0.269ms returns FALSE
T1658 000:455.135 JLINK_HasError()
T1658 000:456.268 JLINK_IsHalted()
T1658 000:457.408 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:457.656 - 1.387ms returns TRUE
T1658 000:457.669 JLINK_ReadReg(R15 (PC))
T1658 000:457.676 - 0.007ms returns 0x20000000
T1658 000:457.682 JLINK_ClrBPEx(BPHandle = 0x0000000B)
T1658 000:457.687 - 0.005ms returns 0x00
T1658 000:457.693 JLINK_ReadReg(R0)
T1658 000:457.698 - 0.005ms returns 0x00000000
T1658 000:458.096 JLINK_HasError()
T1658 000:458.106 JLINK_WriteReg(R0, 0x08002800)
T1658 000:458.112 - 0.006ms returns 0
T1658 000:458.117 JLINK_WriteReg(R1, 0x00000800)
T1658 000:458.122 - 0.004ms returns 0
T1658 000:458.127 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:458.132 - 0.004ms returns 0
T1658 000:458.137 JLINK_WriteReg(R3, 0x00000000)
T1658 000:458.142 - 0.004ms returns 0
T1658 000:458.147 JLINK_WriteReg(R4, 0x00000000)
T1658 000:458.152 - 0.004ms returns 0
T1658 000:458.157 JLINK_WriteReg(R5, 0x00000000)
T1658 000:458.162 - 0.004ms returns 0
T1658 000:458.167 JLINK_WriteReg(R6, 0x00000000)
T1658 000:458.172 - 0.004ms returns 0
T1658 000:458.177 JLINK_WriteReg(R7, 0x00000000)
T1658 000:458.181 - 0.004ms returns 0
T1658 000:458.187 JLINK_WriteReg(R8, 0x00000000)
T1658 000:458.192 - 0.004ms returns 0
T1658 000:458.197 JLINK_WriteReg(R9, 0x20000160)
T1658 000:458.203 - 0.006ms returns 0
T1658 000:458.208 JLINK_WriteReg(R10, 0x00000000)
T1658 000:458.213 - 0.004ms returns 0
T1658 000:458.218 JLINK_WriteReg(R11, 0x00000000)
T1658 000:458.223 - 0.004ms returns 0
T1658 000:458.228 JLINK_WriteReg(R12, 0x00000000)
T1658 000:458.233 - 0.004ms returns 0
T1658 000:458.238 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:458.243 - 0.005ms returns 0
T1658 000:458.249 JLINK_WriteReg(R14, 0x20000001)
T1658 000:458.253 - 0.004ms returns 0
T1658 000:458.259 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:458.264 - 0.004ms returns 0
T1658 000:458.269 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:458.274 - 0.004ms returns 0
T1658 000:458.279 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:458.284 - 0.004ms returns 0
T1658 000:458.289 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:458.294 - 0.004ms returns 0
T1658 000:458.299 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:458.304 - 0.004ms returns 0
T1658 000:458.309 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:458.315 - 0.005ms returns 0x0000000C
T1658 000:458.320 JLINK_Go()
T1658 000:458.331 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:459.690 - 1.369ms
T1658 000:459.701 JLINK_IsHalted()
T1658 000:460.741 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:460.950 - 1.248ms returns TRUE
T1658 000:460.962 JLINK_ReadReg(R15 (PC))
T1658 000:460.969 - 0.006ms returns 0x20000000
T1658 000:460.974 JLINK_ClrBPEx(BPHandle = 0x0000000C)
T1658 000:460.980 - 0.005ms returns 0x00
T1658 000:460.985 JLINK_ReadReg(R0)
T1658 000:460.990 - 0.004ms returns 0x00000001
T1658 000:460.995 JLINK_HasError()
T1658 000:461.001 JLINK_WriteReg(R0, 0x08002800)
T1658 000:461.006 - 0.005ms returns 0
T1658 000:461.012 JLINK_WriteReg(R1, 0x00000800)
T1658 000:461.016 - 0.004ms returns 0
T1658 000:461.022 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:461.026 - 0.004ms returns 0
T1658 000:461.032 JLINK_WriteReg(R3, 0x00000000)
T1658 000:461.037 - 0.004ms returns 0
T1658 000:461.042 JLINK_WriteReg(R4, 0x00000000)
T1658 000:461.046 - 0.004ms returns 0
T1658 000:461.052 JLINK_WriteReg(R5, 0x00000000)
T1658 000:461.056 - 0.004ms returns 0
T1658 000:461.062 JLINK_WriteReg(R6, 0x00000000)
T1658 000:461.066 - 0.004ms returns 0
T1658 000:461.072 JLINK_WriteReg(R7, 0x00000000)
T1658 000:461.076 - 0.004ms returns 0
T1658 000:461.081 JLINK_WriteReg(R8, 0x00000000)
T1658 000:461.086 - 0.004ms returns 0
T1658 000:461.092 JLINK_WriteReg(R9, 0x20000160)
T1658 000:461.096 - 0.004ms returns 0
T1658 000:461.102 JLINK_WriteReg(R10, 0x00000000)
T1658 000:461.106 - 0.004ms returns 0
T1658 000:461.111 JLINK_WriteReg(R11, 0x00000000)
T1658 000:461.116 - 0.004ms returns 0
T1658 000:461.121 JLINK_WriteReg(R12, 0x00000000)
T1658 000:461.126 - 0.004ms returns 0
T1658 000:461.131 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:461.136 - 0.004ms returns 0
T1658 000:461.142 JLINK_WriteReg(R14, 0x20000001)
T1658 000:461.146 - 0.004ms returns 0
T1658 000:461.151 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:461.156 - 0.004ms returns 0
T1658 000:461.161 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:461.166 - 0.004ms returns 0
T1658 000:461.171 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:461.176 - 0.004ms returns 0
T1658 000:461.181 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:461.186 - 0.004ms returns 0
T1658 000:461.191 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:461.196 - 0.004ms returns 0
T1658 000:461.202 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:461.207 - 0.005ms returns 0x0000000D
T1658 000:461.212 JLINK_Go()
T1658 000:461.222 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:462.517 - 1.304ms
T1658 000:462.529 JLINK_IsHalted()
T1658 000:462.690 - 0.161ms returns FALSE
T1658 000:462.699 JLINK_HasError()
T1658 000:464.796 JLINK_IsHalted()
T1658 000:465.070 - 0.273ms returns FALSE
T1658 000:465.081 JLINK_HasError()
T1658 000:466.179 JLINK_IsHalted()
T1658 000:466.443 - 0.263ms returns FALSE
T1658 000:466.476 JLINK_HasError()
T1658 000:468.184 JLINK_IsHalted()
T1658 000:468.438 - 0.252ms returns FALSE
T1658 000:468.450 JLINK_HasError()
T1658 000:469.539 JLINK_IsHalted()
T1658 000:469.786 - 0.246ms returns FALSE
T1658 000:469.799 JLINK_HasError()
T1658 000:470.890 JLINK_IsHalted()
T1658 000:471.135 - 0.244ms returns FALSE
T1658 000:471.147 JLINK_HasError()
T1658 000:472.230 JLINK_IsHalted()
T1658 000:472.484 - 0.254ms returns FALSE
T1658 000:472.498 JLINK_HasError()
T1658 000:474.225 JLINK_IsHalted()
T1658 000:474.479 - 0.253ms returns FALSE
T1658 000:474.492 JLINK_HasError()
T1658 000:475.573 JLINK_IsHalted()
T1658 000:475.828 - 0.255ms returns FALSE
T1658 000:475.842 JLINK_HasError()
T1658 000:477.579 JLINK_IsHalted()
T1658 000:477.875 - 0.295ms returns FALSE
T1658 000:477.889 JLINK_HasError()
T1658 000:479.555 JLINK_IsHalted()
T1658 000:479.835 - 0.279ms returns FALSE
T1658 000:479.850 JLINK_HasError()
T1658 000:480.921 JLINK_IsHalted()
T1658 000:481.184 - 0.262ms returns FALSE
T1658 000:481.198 JLINK_HasError()
T1658 000:482.285 JLINK_IsHalted()
T1658 000:482.566 - 0.280ms returns FALSE
T1658 000:482.582 JLINK_HasError()
T1658 000:484.258 JLINK_IsHalted()
T1658 000:484.599 - 0.340ms returns FALSE
T1658 000:484.615 JLINK_HasError()
T1658 000:486.678 JLINK_IsHalted()
T1658 000:487.818 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:488.133 - 1.454ms returns TRUE
T1658 000:488.152 JLINK_ReadReg(R15 (PC))
T1658 000:488.164 - 0.011ms returns 0x20000000
T1658 000:488.173 JLINK_ClrBPEx(BPHandle = 0x0000000D)
T1658 000:488.182 - 0.008ms returns 0x00
T1658 000:488.191 JLINK_ReadReg(R0)
T1658 000:488.199 - 0.007ms returns 0x00000000
T1658 000:488.679 JLINK_HasError()
T1658 000:488.690 JLINK_WriteReg(R0, 0x08003000)
T1658 000:488.696 - 0.006ms returns 0
T1658 000:488.701 JLINK_WriteReg(R1, 0x00000800)
T1658 000:488.706 - 0.004ms returns 0
T1658 000:488.711 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:488.716 - 0.004ms returns 0
T1658 000:488.721 JLINK_WriteReg(R3, 0x00000000)
T1658 000:488.726 - 0.004ms returns 0
T1658 000:488.731 JLINK_WriteReg(R4, 0x00000000)
T1658 000:488.736 - 0.004ms returns 0
T1658 000:488.741 JLINK_WriteReg(R5, 0x00000000)
T1658 000:488.746 - 0.004ms returns 0
T1658 000:488.751 JLINK_WriteReg(R6, 0x00000000)
T1658 000:488.756 - 0.004ms returns 0
T1658 000:488.761 JLINK_WriteReg(R7, 0x00000000)
T1658 000:488.765 - 0.004ms returns 0
T1658 000:488.771 JLINK_WriteReg(R8, 0x00000000)
T1658 000:488.775 - 0.004ms returns 0
T1658 000:488.781 JLINK_WriteReg(R9, 0x20000160)
T1658 000:488.785 - 0.004ms returns 0
T1658 000:488.790 JLINK_WriteReg(R10, 0x00000000)
T1658 000:488.795 - 0.004ms returns 0
T1658 000:488.800 JLINK_WriteReg(R11, 0x00000000)
T1658 000:488.805 - 0.004ms returns 0
T1658 000:488.810 JLINK_WriteReg(R12, 0x00000000)
T1658 000:488.815 - 0.004ms returns 0
T1658 000:488.820 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:488.825 - 0.005ms returns 0
T1658 000:488.830 JLINK_WriteReg(R14, 0x20000001)
T1658 000:488.835 - 0.004ms returns 0
T1658 000:488.840 JLINK_WriteReg(R15 (PC), 0x20000020)
T1658 000:488.845 - 0.004ms returns 0
T1658 000:488.850 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:488.855 - 0.004ms returns 0
T1658 000:488.860 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:488.865 - 0.004ms returns 0
T1658 000:488.870 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:488.875 - 0.004ms returns 0
T1658 000:488.880 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:488.885 - 0.004ms returns 0
T1658 000:488.890 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:488.896 - 0.005ms returns 0x0000000E
T1658 000:488.901 JLINK_Go()
T1658 000:488.912 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:490.320 - 1.418ms
T1658 000:490.332 JLINK_IsHalted()
T1658 000:491.351 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:491.547 - 1.215ms returns TRUE
T1658 000:491.559 JLINK_ReadReg(R15 (PC))
T1658 000:491.566 - 0.006ms returns 0x20000000
T1658 000:491.571 JLINK_ClrBPEx(BPHandle = 0x0000000E)
T1658 000:491.577 - 0.005ms returns 0x00
T1658 000:491.582 JLINK_ReadReg(R0)
T1658 000:491.587 - 0.004ms returns 0x00000001
T1658 000:491.593 JLINK_HasError()
T1658 000:491.598 JLINK_WriteReg(R0, 0x08003000)
T1658 000:491.603 - 0.005ms returns 0
T1658 000:491.609 JLINK_WriteReg(R1, 0x00000800)
T1658 000:491.614 - 0.004ms returns 0
T1658 000:491.619 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:491.624 - 0.004ms returns 0
T1658 000:491.629 JLINK_WriteReg(R3, 0x00000000)
T1658 000:491.634 - 0.004ms returns 0
T1658 000:491.639 JLINK_WriteReg(R4, 0x00000000)
T1658 000:491.644 - 0.004ms returns 0
T1658 000:491.649 JLINK_WriteReg(R5, 0x00000000)
T1658 000:491.654 - 0.004ms returns 0
T1658 000:491.659 JLINK_WriteReg(R6, 0x00000000)
T1658 000:491.664 - 0.004ms returns 0
T1658 000:491.669 JLINK_WriteReg(R7, 0x00000000)
T1658 000:491.674 - 0.004ms returns 0
T1658 000:491.680 JLINK_WriteReg(R8, 0x00000000)
T1658 000:491.684 - 0.004ms returns 0
T1658 000:491.690 JLINK_WriteReg(R9, 0x20000160)
T1658 000:491.694 - 0.004ms returns 0
T1658 000:491.700 JLINK_WriteReg(R10, 0x00000000)
T1658 000:491.705 - 0.005ms returns 0
T1658 000:491.710 JLINK_WriteReg(R11, 0x00000000)
T1658 000:491.715 - 0.004ms returns 0
T1658 000:491.720 JLINK_WriteReg(R12, 0x00000000)
T1658 000:491.725 - 0.005ms returns 0
T1658 000:491.730 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:491.735 - 0.005ms returns 0
T1658 000:491.745 JLINK_WriteReg(R14, 0x20000001)
T1658 000:491.750 - 0.005ms returns 0
T1658 000:491.755 JLINK_WriteReg(R15 (PC), 0x200000B6)
T1658 000:491.760 - 0.004ms returns 0
T1658 000:491.765 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:491.770 - 0.004ms returns 0
T1658 000:491.775 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:491.780 - 0.004ms returns 0
T1658 000:491.785 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:491.790 - 0.004ms returns 0
T1658 000:491.795 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:491.800 - 0.004ms returns 0
T1658 000:491.806 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:491.811 - 0.005ms returns 0x0000000F
T1658 000:491.816 JLINK_Go()
T1658 000:491.826 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:493.064 - 1.247ms
T1658 000:493.076 JLINK_IsHalted()
T1658 000:493.257 - 0.181ms returns FALSE
T1658 000:493.265 JLINK_HasError()
T1658 000:495.282 JLINK_IsHalted()
T1658 000:495.624 - 0.341ms returns FALSE
T1658 000:495.635 JLINK_HasError()
T1658 000:496.724 JLINK_IsHalted()
T1658 000:496.982 - 0.256ms returns FALSE
T1658 000:496.994 JLINK_HasError()
T1658 000:498.720 JLINK_IsHalted()
T1658 000:498.998 - 0.277ms returns FALSE
T1658 000:499.010 JLINK_HasError()
T1658 000:500.099 JLINK_IsHalted()
T1658 000:500.383 - 0.283ms returns FALSE
T1658 000:500.395 JLINK_HasError()
T1658 000:501.488 JLINK_IsHalted()
T1658 000:501.741 - 0.252ms returns FALSE
T1658 000:501.754 JLINK_HasError()
T1658 000:503.470 JLINK_IsHalted()
T1658 000:503.754 - 0.283ms returns FALSE
T1658 000:503.768 JLINK_HasError()
T1658 000:505.765 JLINK_IsHalted()
T1658 000:506.027 - 0.261ms returns FALSE
T1658 000:506.041 JLINK_HasError()
T1658 000:508.865 JLINK_IsHalted()
T1658 000:509.133 - 0.268ms returns FALSE
T1658 000:509.148 JLINK_HasError()
T1658 000:510.192 JLINK_IsHalted()
T1658 000:510.464 - 0.270ms returns FALSE
T1658 000:510.479 JLINK_HasError()
T1658 000:511.548 JLINK_IsHalted()
T1658 000:511.847 - 0.299ms returns FALSE
T1658 000:511.864 JLINK_HasError()
T1658 000:513.545 JLINK_IsHalted()
T1658 000:513.818 - 0.272ms returns FALSE
T1658 000:513.834 JLINK_HasError()
T1658 000:514.902 JLINK_IsHalted()
T1658 000:515.200 - 0.297ms returns FALSE
T1658 000:515.216 JLINK_HasError()
T1658 000:517.183 JLINK_IsHalted()
T1658 000:518.352 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:518.700 - 1.515ms returns TRUE
T1658 000:518.719 JLINK_ReadReg(R15 (PC))
T1658 000:518.731 - 0.011ms returns 0x20000000
T1658 000:518.740 JLINK_ClrBPEx(BPHandle = 0x0000000F)
T1658 000:518.748 - 0.008ms returns 0x00
T1658 000:518.757 JLINK_ReadReg(R0)
T1658 000:518.765 - 0.008ms returns 0x00000000
T1658 000:519.177 JLINK_HasError()
T1658 000:519.196 JLINK_WriteReg(R0, 0x00000001)
T1658 000:519.206 - 0.010ms returns 0
T1658 000:519.215 JLINK_WriteReg(R1, 0x00000800)
T1658 000:519.223 - 0.007ms returns 0
T1658 000:519.232 JLINK_WriteReg(R2, 0x000000FF)
T1658 000:519.240 - 0.008ms returns 0
T1658 000:519.249 JLINK_WriteReg(R3, 0x00000000)
T1658 000:519.257 - 0.008ms returns 0
T1658 000:519.266 JLINK_WriteReg(R4, 0x00000000)
T1658 000:519.273 - 0.007ms returns 0
T1658 000:519.282 JLINK_WriteReg(R5, 0x00000000)
T1658 000:519.289 - 0.007ms returns 0
T1658 000:519.298 JLINK_WriteReg(R6, 0x00000000)
T1658 000:519.306 - 0.007ms returns 0
T1658 000:519.315 JLINK_WriteReg(R7, 0x00000000)
T1658 000:519.323 - 0.007ms returns 0
T1658 000:519.331 JLINK_WriteReg(R8, 0x00000000)
T1658 000:519.339 - 0.008ms returns 0
T1658 000:519.348 JLINK_WriteReg(R9, 0x20000160)
T1658 000:519.355 - 0.007ms returns 0
T1658 000:519.364 JLINK_WriteReg(R10, 0x00000000)
T1658 000:519.372 - 0.008ms returns 0
T1658 000:519.381 JLINK_WriteReg(R11, 0x00000000)
T1658 000:519.389 - 0.007ms returns 0
T1658 000:519.397 JLINK_WriteReg(R12, 0x00000000)
T1658 000:519.405 - 0.008ms returns 0
T1658 000:519.414 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:519.422 - 0.008ms returns 0
T1658 000:519.431 JLINK_WriteReg(R14, 0x20000001)
T1658 000:519.439 - 0.007ms returns 0
T1658 000:519.453 JLINK_WriteReg(R15 (PC), 0x2000006A)
T1658 000:519.465 - 0.012ms returns 0
T1658 000:519.474 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:519.481 - 0.008ms returns 0
T1658 000:519.490 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:519.497 - 0.007ms returns 0
T1658 000:519.506 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:519.514 - 0.007ms returns 0
T1658 000:519.523 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:519.530 - 0.007ms returns 0
T1658 000:519.540 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:519.549 - 0.009ms returns 0x00000010
T1658 000:519.557 JLINK_Go()
T1658 000:519.576 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:520.943 - 1.384ms
T1658 000:520.955 JLINK_IsHalted()
T1658 000:521.970 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:522.278 - 1.322ms returns TRUE
T1658 000:522.291 JLINK_ReadReg(R15 (PC))
T1658 000:522.299 - 0.007ms returns 0x20000000
T1658 000:522.305 JLINK_ClrBPEx(BPHandle = 0x00000010)
T1658 000:522.311 - 0.005ms returns 0x00
T1658 000:522.317 JLINK_ReadReg(R0)
T1658 000:522.322 - 0.005ms returns 0x00000000
T1658 000:583.455 JLINK_WriteMem(0x20000000, 0x164 Bytes, ...)
T1658 000:583.483 Data: 00 BE 0A E0 0D 78 2D 06 68 40 08 24 40 00 00 D3 ...
T1658 000:583.529 CPU_WriteMem(356 bytes @ 0x20000000)
T1658 000:584.704 - 1.249ms returns 0x164
T1658 000:584.778 JLINK_HasError()
T1658 000:584.798 JLINK_WriteReg(R0, 0x08000000)
T1658 000:584.816 - 0.017ms returns 0
T1658 000:584.830 JLINK_WriteReg(R1, 0x007A1200)
T1658 000:584.843 - 0.012ms returns 0
T1658 000:584.857 JLINK_WriteReg(R2, 0x00000002)
T1658 000:584.869 - 0.012ms returns 0
T1658 000:584.883 JLINK_WriteReg(R3, 0x00000000)
T1658 000:584.895 - 0.012ms returns 0
T1658 000:584.909 JLINK_WriteReg(R4, 0x00000000)
T1658 000:584.921 - 0.012ms returns 0
T1658 000:584.935 JLINK_WriteReg(R5, 0x00000000)
T1658 000:584.947 - 0.012ms returns 0
T1658 000:584.961 JLINK_WriteReg(R6, 0x00000000)
T1658 000:584.973 - 0.012ms returns 0
T1658 000:584.987 JLINK_WriteReg(R7, 0x00000000)
T1658 000:584.999 - 0.012ms returns 0
T1658 000:585.013 JLINK_WriteReg(R8, 0x00000000)
T1658 000:585.025 - 0.012ms returns 0
T1658 000:585.039 JLINK_WriteReg(R9, 0x20000160)
T1658 000:585.051 - 0.012ms returns 0
T1658 000:585.075 JLINK_WriteReg(R10, 0x00000000)
T1658 000:585.088 - 0.013ms returns 0
T1658 000:585.195 JLINK_WriteReg(R11, 0x00000000)
T1658 000:585.227 - 0.032ms returns 0
T1658 000:585.244 JLINK_WriteReg(R12, 0x00000000)
T1658 000:585.257 - 0.013ms returns 0
T1658 000:585.271 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:585.285 - 0.014ms returns 0
T1658 000:585.299 JLINK_WriteReg(R14, 0x20000001)
T1658 000:585.311 - 0.012ms returns 0
T1658 000:585.326 JLINK_WriteReg(R15 (PC), 0x20000038)
T1658 000:585.338 - 0.012ms returns 0
T1658 000:585.352 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:585.365 - 0.012ms returns 0
T1658 000:585.379 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:585.392 - 0.012ms returns 0
T1658 000:585.405 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:585.417 - 0.012ms returns 0
T1658 000:585.431 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:585.444 - 0.012ms returns 0
T1658 000:585.459 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:585.483 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:585.798 - 0.338ms returns 0x00000011
T1658 000:585.829 JLINK_Go()
T1658 000:585.850 CPU_WriteMem(2 bytes @ 0x20000000)
T1658 000:586.161 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:587.968 - 2.138ms
T1658 000:588.000 JLINK_IsHalted()
T1658 000:589.302 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:589.519 - 1.519ms returns TRUE
T1658 000:589.528 JLINK_ReadReg(R15 (PC))
T1658 000:589.534 - 0.006ms returns 0x20000000
T1658 000:589.539 JLINK_ClrBPEx(BPHandle = 0x00000011)
T1658 000:589.544 - 0.005ms returns 0x00
T1658 000:589.550 JLINK_ReadReg(R0)
T1658 000:589.555 - 0.004ms returns 0x00000000
T1658 000:589.798 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:589.807 Data: 80 09 00 20 CD 01 00 08 E5 2C 00 08 6D 2A 00 08 ...
T1658 000:589.822 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:591.397 - 1.599ms returns 0x29C
T1658 000:591.409 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:591.414 Data: C0 09 AC E8 C0 09 21 F0 07 01 8D 46 70 47 10 B5 ...
T1658 000:591.428 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:592.405 - 0.996ms returns 0x164
T1658 000:592.417 JLINK_HasError()
T1658 000:592.423 JLINK_WriteReg(R0, 0x08000000)
T1658 000:592.430 - 0.006ms returns 0
T1658 000:592.436 JLINK_WriteReg(R1, 0x00000400)
T1658 000:592.440 - 0.004ms returns 0
T1658 000:592.446 JLINK_WriteReg(R2, 0x20000164)
T1658 000:592.451 - 0.004ms returns 0
T1658 000:592.456 JLINK_WriteReg(R3, 0x00000000)
T1658 000:592.461 - 0.004ms returns 0
T1658 000:592.466 JLINK_WriteReg(R4, 0x00000000)
T1658 000:592.471 - 0.004ms returns 0
T1658 000:592.476 JLINK_WriteReg(R5, 0x00000000)
T1658 000:592.481 - 0.004ms returns 0
T1658 000:592.486 JLINK_WriteReg(R6, 0x00000000)
T1658 000:592.491 - 0.004ms returns 0
T1658 000:592.497 JLINK_WriteReg(R7, 0x00000000)
T1658 000:592.501 - 0.004ms returns 0
T1658 000:592.507 JLINK_WriteReg(R8, 0x00000000)
T1658 000:592.512 - 0.004ms returns 0
T1658 000:592.517 JLINK_WriteReg(R9, 0x20000160)
T1658 000:592.522 - 0.004ms returns 0
T1658 000:592.527 JLINK_WriteReg(R10, 0x00000000)
T1658 000:592.532 - 0.004ms returns 0
T1658 000:592.537 JLINK_WriteReg(R11, 0x00000000)
T1658 000:592.542 - 0.004ms returns 0
T1658 000:592.548 JLINK_WriteReg(R12, 0x00000000)
T1658 000:592.553 - 0.004ms returns 0
T1658 000:592.558 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:592.563 - 0.005ms returns 0
T1658 000:592.569 JLINK_WriteReg(R14, 0x20000001)
T1658 000:592.573 - 0.004ms returns 0
T1658 000:592.579 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:592.584 - 0.005ms returns 0
T1658 000:592.590 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:592.594 - 0.005ms returns 0
T1658 000:592.600 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:592.605 - 0.004ms returns 0
T1658 000:592.610 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:592.615 - 0.004ms returns 0
T1658 000:592.620 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:592.625 - 0.004ms returns 0
T1658 000:592.630 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:592.636 - 0.005ms returns 0x00000012
T1658 000:592.641 JLINK_Go()
T1658 000:592.651 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:594.144 - 1.502ms
T1658 000:594.152 JLINK_IsHalted()
T1658 000:594.418 - 0.265ms returns FALSE
T1658 000:594.426 JLINK_HasError()
T1658 000:596.493 JLINK_IsHalted()
T1658 000:596.731 - 0.237ms returns FALSE
T1658 000:596.739 JLINK_HasError()
T1658 000:598.486 JLINK_IsHalted()
T1658 000:598.730 - 0.243ms returns FALSE
T1658 000:598.738 JLINK_HasError()
T1658 000:600.434 JLINK_IsHalted()
T1658 000:600.691 - 0.256ms returns FALSE
T1658 000:600.702 JLINK_HasError()
T1658 000:602.434 JLINK_IsHalted()
T1658 000:602.721 - 0.287ms returns FALSE
T1658 000:602.734 JLINK_HasError()
T1658 000:604.419 JLINK_IsHalted()
T1658 000:604.671 - 0.251ms returns FALSE
T1658 000:604.683 JLINK_HasError()
T1658 000:605.777 JLINK_IsHalted()
T1658 000:605.999 - 0.221ms returns FALSE
T1658 000:606.010 JLINK_HasError()
T1658 000:608.052 JLINK_IsHalted()
T1658 000:608.310 - 0.258ms returns FALSE
T1658 000:608.322 JLINK_HasError()
T1658 000:609.416 JLINK_IsHalted()
T1658 000:609.657 - 0.240ms returns FALSE
T1658 000:609.669 JLINK_HasError()
T1658 000:611.414 JLINK_IsHalted()
T1658 000:611.660 - 0.246ms returns FALSE
T1658 000:611.672 JLINK_HasError()
T1658 000:613.597 JLINK_IsHalted()
T1658 000:613.812 - 0.214ms returns FALSE
T1658 000:613.824 JLINK_HasError()
T1658 000:615.650 JLINK_IsHalted()
T1658 000:615.868 - 0.217ms returns FALSE
T1658 000:615.880 JLINK_HasError()
T1658 000:617.699 JLINK_IsHalted()
T1658 000:617.965 - 0.265ms returns FALSE
T1658 000:617.976 JLINK_HasError()
T1658 000:619.643 JLINK_IsHalted()
T1658 000:619.894 - 0.250ms returns FALSE
T1658 000:619.908 JLINK_HasError()
T1658 000:621.695 JLINK_IsHalted()
T1658 000:621.941 - 0.245ms returns FALSE
T1658 000:621.952 JLINK_HasError()
T1658 000:623.681 JLINK_IsHalted()
T1658 000:623.944 - 0.262ms returns FALSE
T1658 000:623.955 JLINK_HasError()
T1658 000:625.052 JLINK_IsHalted()
T1658 000:626.197 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:626.478 - 1.425ms returns TRUE
T1658 000:626.489 JLINK_ReadReg(R15 (PC))
T1658 000:626.496 - 0.007ms returns 0x20000000
T1658 000:626.502 JLINK_ClrBPEx(BPHandle = 0x00000012)
T1658 000:626.507 - 0.005ms returns 0x00
T1658 000:626.513 JLINK_ReadReg(R0)
T1658 000:626.518 - 0.004ms returns 0x00000000
T1658 000:626.933 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:626.941 Data: 16 00 C0 07 60 B3 FF E7 09 98 01 68 4F F4 80 30 ...
T1658 000:626.954 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:628.613 - 1.680ms returns 0x29C
T1658 000:628.625 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:628.630 Data: 40 F0 80 00 08 90 05 E0 08 98 40 F4 80 70 08 90 ...
T1658 000:628.641 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:629.649 - 1.024ms returns 0x164
T1658 000:629.661 JLINK_HasError()
T1658 000:629.668 JLINK_WriteReg(R0, 0x08000400)
T1658 000:629.674 - 0.006ms returns 0
T1658 000:629.680 JLINK_WriteReg(R1, 0x00000400)
T1658 000:629.685 - 0.004ms returns 0
T1658 000:629.690 JLINK_WriteReg(R2, 0x20000164)
T1658 000:629.695 - 0.004ms returns 0
T1658 000:629.700 JLINK_WriteReg(R3, 0x00000000)
T1658 000:629.705 - 0.004ms returns 0
T1658 000:629.710 JLINK_WriteReg(R4, 0x00000000)
T1658 000:629.714 - 0.004ms returns 0
T1658 000:629.720 JLINK_WriteReg(R5, 0x00000000)
T1658 000:629.724 - 0.004ms returns 0
T1658 000:629.730 JLINK_WriteReg(R6, 0x00000000)
T1658 000:629.735 - 0.004ms returns 0
T1658 000:629.740 JLINK_WriteReg(R7, 0x00000000)
T1658 000:629.745 - 0.005ms returns 0
T1658 000:629.750 JLINK_WriteReg(R8, 0x00000000)
T1658 000:629.755 - 0.004ms returns 0
T1658 000:629.760 JLINK_WriteReg(R9, 0x20000160)
T1658 000:629.765 - 0.004ms returns 0
T1658 000:629.770 JLINK_WriteReg(R10, 0x00000000)
T1658 000:629.775 - 0.004ms returns 0
T1658 000:629.780 JLINK_WriteReg(R11, 0x00000000)
T1658 000:629.785 - 0.004ms returns 0
T1658 000:629.790 JLINK_WriteReg(R12, 0x00000000)
T1658 000:629.795 - 0.004ms returns 0
T1658 000:629.800 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:629.805 - 0.005ms returns 0
T1658 000:629.811 JLINK_WriteReg(R14, 0x20000001)
T1658 000:629.815 - 0.004ms returns 0
T1658 000:629.821 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:629.825 - 0.004ms returns 0
T1658 000:629.831 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:629.836 - 0.004ms returns 0
T1658 000:629.841 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:629.845 - 0.004ms returns 0
T1658 000:629.851 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:629.856 - 0.004ms returns 0
T1658 000:629.861 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:629.866 - 0.004ms returns 0
T1658 000:629.871 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:629.877 - 0.005ms returns 0x00000013
T1658 000:629.882 JLINK_Go()
T1658 000:629.892 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:631.325 - 1.442ms
T1658 000:631.336 JLINK_IsHalted()
T1658 000:631.549 - 0.212ms returns FALSE
T1658 000:631.561 JLINK_HasError()
T1658 000:632.774 JLINK_IsHalted()
T1658 000:633.020 - 0.245ms returns FALSE
T1658 000:633.031 JLINK_HasError()
T1658 000:634.132 JLINK_IsHalted()
T1658 000:634.383 - 0.249ms returns FALSE
T1658 000:634.394 JLINK_HasError()
T1658 000:636.493 JLINK_IsHalted()
T1658 000:636.745 - 0.251ms returns FALSE
T1658 000:636.757 JLINK_HasError()
T1658 000:638.478 JLINK_IsHalted()
T1658 000:638.731 - 0.253ms returns FALSE
T1658 000:638.743 JLINK_HasError()
T1658 000:640.469 JLINK_IsHalted()
T1658 000:640.716 - 0.247ms returns FALSE
T1658 000:640.728 JLINK_HasError()
T1658 000:642.828 JLINK_IsHalted()
T1658 000:643.084 - 0.255ms returns FALSE
T1658 000:643.097 JLINK_HasError()
T1658 000:644.179 JLINK_IsHalted()
T1658 000:644.435 - 0.255ms returns FALSE
T1658 000:644.449 JLINK_HasError()
T1658 000:645.531 JLINK_IsHalted()
T1658 000:645.826 - 0.294ms returns FALSE
T1658 000:645.885 JLINK_HasError()
T1658 000:647.934 JLINK_IsHalted()
T1658 000:648.234 - 0.299ms returns FALSE
T1658 000:648.249 JLINK_HasError()
T1658 000:649.320 JLINK_IsHalted()
T1658 000:649.613 - 0.292ms returns FALSE
T1658 000:649.628 JLINK_HasError()
T1658 000:651.682 JLINK_IsHalted()
T1658 000:651.973 - 0.291ms returns FALSE
T1658 000:651.990 JLINK_HasError()
T1658 000:653.612 JLINK_IsHalted()
T1658 000:653.852 - 0.239ms returns FALSE
T1658 000:653.868 JLINK_HasError()
T1658 000:655.946 JLINK_IsHalted()
T1658 000:656.217 - 0.270ms returns FALSE
T1658 000:656.233 JLINK_HasError()
T1658 000:657.943 JLINK_IsHalted()
T1658 000:658.245 - 0.301ms returns FALSE
T1658 000:658.264 JLINK_HasError()
T1658 000:659.931 JLINK_IsHalted()
T1658 000:660.195 - 0.263ms returns FALSE
T1658 000:660.206 JLINK_HasError()
T1658 000:661.926 JLINK_IsHalted()
T1658 000:662.184 - 0.257ms returns FALSE
T1658 000:662.195 JLINK_HasError()
T1658 000:663.300 JLINK_IsHalted()
T1658 000:664.344 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:664.618 - 1.317ms returns TRUE
T1658 000:664.630 JLINK_ReadReg(R15 (PC))
T1658 000:664.638 - 0.007ms returns 0x20000000
T1658 000:664.643 JLINK_ClrBPEx(BPHandle = 0x00000013)
T1658 000:664.649 - 0.005ms returns 0x00
T1658 000:664.654 JLINK_ReadReg(R0)
T1658 000:664.659 - 0.004ms returns 0x00000000
T1658 000:665.077 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:665.086 Data: 40 F0 20 00 08 60 06 E0 02 98 01 68 08 68 20 F0 ...
T1658 000:665.098 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:666.599 - 1.522ms returns 0x29C
T1658 000:666.612 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:666.618 Data: 20 F0 01 00 08 60 15 98 00 68 81 21 C4 F2 02 01 ...
T1658 000:666.629 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:667.615 - 1.002ms returns 0x164
T1658 000:667.628 JLINK_HasError()
T1658 000:667.635 JLINK_WriteReg(R0, 0x08000800)
T1658 000:667.642 - 0.007ms returns 0
T1658 000:667.648 JLINK_WriteReg(R1, 0x00000400)
T1658 000:667.653 - 0.005ms returns 0
T1658 000:667.659 JLINK_WriteReg(R2, 0x20000164)
T1658 000:667.664 - 0.005ms returns 0
T1658 000:667.670 JLINK_WriteReg(R3, 0x00000000)
T1658 000:667.675 - 0.005ms returns 0
T1658 000:667.681 JLINK_WriteReg(R4, 0x00000000)
T1658 000:667.686 - 0.005ms returns 0
T1658 000:667.692 JLINK_WriteReg(R5, 0x00000000)
T1658 000:667.697 - 0.005ms returns 0
T1658 000:667.703 JLINK_WriteReg(R6, 0x00000000)
T1658 000:667.708 - 0.005ms returns 0
T1658 000:667.714 JLINK_WriteReg(R7, 0x00000000)
T1658 000:667.718 - 0.005ms returns 0
T1658 000:667.724 JLINK_WriteReg(R8, 0x00000000)
T1658 000:667.729 - 0.005ms returns 0
T1658 000:667.735 JLINK_WriteReg(R9, 0x20000160)
T1658 000:667.740 - 0.005ms returns 0
T1658 000:667.746 JLINK_WriteReg(R10, 0x00000000)
T1658 000:667.751 - 0.005ms returns 0
T1658 000:667.757 JLINK_WriteReg(R11, 0x00000000)
T1658 000:667.762 - 0.004ms returns 0
T1658 000:667.767 JLINK_WriteReg(R12, 0x00000000)
T1658 000:667.772 - 0.005ms returns 0
T1658 000:667.778 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:667.784 - 0.005ms returns 0
T1658 000:667.789 JLINK_WriteReg(R14, 0x20000001)
T1658 000:667.795 - 0.005ms returns 0
T1658 000:667.801 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:667.806 - 0.005ms returns 0
T1658 000:667.812 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:667.817 - 0.005ms returns 0
T1658 000:667.823 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:667.829 - 0.006ms returns 0
T1658 000:667.835 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:667.840 - 0.005ms returns 0
T1658 000:667.846 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:667.851 - 0.005ms returns 0
T1658 000:667.857 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:667.863 - 0.006ms returns 0x00000014
T1658 000:667.870 JLINK_Go()
T1658 000:667.881 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:669.295 - 1.425ms
T1658 000:669.309 JLINK_IsHalted()
T1658 000:669.521 - 0.212ms returns FALSE
T1658 000:669.533 JLINK_HasError()
T1658 000:671.628 JLINK_IsHalted()
T1658 000:672.104 - 0.473ms returns FALSE
T1658 000:672.166 JLINK_HasError()
T1658 000:673.570 JLINK_IsHalted()
T1658 000:673.961 - 0.389ms returns FALSE
T1658 000:674.015 JLINK_HasError()
T1658 000:675.550 JLINK_IsHalted()
T1658 000:675.988 - 0.436ms returns FALSE
T1658 000:676.028 JLINK_HasError()
T1658 000:677.546 JLINK_IsHalted()
T1658 000:677.952 - 0.405ms returns FALSE
T1658 000:677.991 JLINK_HasError()
T1658 000:679.528 JLINK_IsHalted()
T1658 000:679.985 - 0.456ms returns FALSE
T1658 000:680.023 JLINK_HasError()
T1658 000:682.030 JLINK_IsHalted()
T1658 000:682.469 - 0.437ms returns FALSE
T1658 000:682.506 JLINK_HasError()
T1658 000:684.483 JLINK_IsHalted()
T1658 000:684.926 - 0.442ms returns FALSE
T1658 000:684.963 JLINK_HasError()
T1658 000:686.471 JLINK_IsHalted()
T1658 000:686.904 - 0.431ms returns FALSE
T1658 000:686.949 JLINK_HasError()
T1658 000:688.475 JLINK_IsHalted()
T1658 000:688.895 - 0.419ms returns FALSE
T1658 000:688.933 JLINK_HasError()
T1658 000:690.909 JLINK_IsHalted()
T1658 000:691.354 - 0.444ms returns FALSE
T1658 000:691.392 JLINK_HasError()
T1658 000:692.942 JLINK_IsHalted()
T1658 000:693.402 - 0.458ms returns FALSE
T1658 000:693.457 JLINK_HasError()
T1658 000:698.889 JLINK_IsHalted()
T1658 000:699.141 - 0.251ms returns FALSE
T1658 000:699.153 JLINK_HasError()
T1658 000:700.848 JLINK_IsHalted()
T1658 000:702.006 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:702.347 - 1.498ms returns TRUE
T1658 000:702.359 JLINK_ReadReg(R15 (PC))
T1658 000:702.367 - 0.007ms returns 0x20000000
T1658 000:702.372 JLINK_ClrBPEx(BPHandle = 0x00000014)
T1658 000:702.378 - 0.005ms returns 0x00
T1658 000:702.383 JLINK_ReadReg(R0)
T1658 000:702.388 - 0.005ms returns 0x00000000
T1658 000:702.834 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:702.845 Data: A5 E0 15 98 00 68 08 21 C4 F2 02 01 88 42 03 D1 ...
T1658 000:702.858 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:704.405 - 1.571ms returns 0x29C
T1658 000:704.417 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:704.423 Data: 0B 90 00 E0 FF E7 0D 98 FF 28 03 D8 FF E7 11 98 ...
T1658 000:704.433 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:705.453 - 1.035ms returns 0x164
T1658 000:705.465 JLINK_HasError()
T1658 000:705.472 JLINK_WriteReg(R0, 0x08000C00)
T1658 000:705.478 - 0.006ms returns 0
T1658 000:705.484 JLINK_WriteReg(R1, 0x00000400)
T1658 000:705.489 - 0.005ms returns 0
T1658 000:705.494 JLINK_WriteReg(R2, 0x20000164)
T1658 000:705.499 - 0.004ms returns 0
T1658 000:705.504 JLINK_WriteReg(R3, 0x00000000)
T1658 000:705.509 - 0.004ms returns 0
T1658 000:705.514 JLINK_WriteReg(R4, 0x00000000)
T1658 000:705.519 - 0.004ms returns 0
T1658 000:705.524 JLINK_WriteReg(R5, 0x00000000)
T1658 000:705.529 - 0.004ms returns 0
T1658 000:705.535 JLINK_WriteReg(R6, 0x00000000)
T1658 000:705.539 - 0.004ms returns 0
T1658 000:705.545 JLINK_WriteReg(R7, 0x00000000)
T1658 000:705.549 - 0.004ms returns 0
T1658 000:705.555 JLINK_WriteReg(R8, 0x00000000)
T1658 000:705.559 - 0.004ms returns 0
T1658 000:705.565 JLINK_WriteReg(R9, 0x20000160)
T1658 000:705.569 - 0.004ms returns 0
T1658 000:705.575 JLINK_WriteReg(R10, 0x00000000)
T1658 000:705.579 - 0.004ms returns 0
T1658 000:705.585 JLINK_WriteReg(R11, 0x00000000)
T1658 000:705.589 - 0.004ms returns 0
T1658 000:705.595 JLINK_WriteReg(R12, 0x00000000)
T1658 000:705.599 - 0.004ms returns 0
T1658 000:705.605 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:705.610 - 0.005ms returns 0
T1658 000:705.615 JLINK_WriteReg(R14, 0x20000001)
T1658 000:705.620 - 0.004ms returns 0
T1658 000:705.625 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:705.630 - 0.004ms returns 0
T1658 000:705.636 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:705.640 - 0.004ms returns 0
T1658 000:705.646 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:705.650 - 0.004ms returns 0
T1658 000:705.656 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:705.660 - 0.004ms returns 0
T1658 000:705.666 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:705.670 - 0.004ms returns 0
T1658 000:705.676 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:705.729 - 0.052ms returns 0x00000015
T1658 000:705.735 JLINK_Go()
T1658 000:705.746 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:707.237 - 1.501ms
T1658 000:707.249 JLINK_IsHalted()
T1658 000:707.461 - 0.211ms returns FALSE
T1658 000:707.472 JLINK_HasError()
T1658 000:708.908 JLINK_IsHalted()
T1658 000:709.137 - 0.228ms returns FALSE
T1658 000:709.149 JLINK_HasError()
T1658 000:710.907 JLINK_IsHalted()
T1658 000:711.137 - 0.229ms returns FALSE
T1658 000:711.145 JLINK_HasError()
T1658 000:712.952 JLINK_IsHalted()
T1658 000:713.202 - 0.250ms returns FALSE
T1658 000:713.210 JLINK_HasError()
T1658 000:714.311 JLINK_IsHalted()
T1658 000:714.571 - 0.260ms returns FALSE
T1658 000:714.582 JLINK_HasError()
T1658 000:715.679 JLINK_IsHalted()
T1658 000:715.954 - 0.274ms returns FALSE
T1658 000:715.965 JLINK_HasError()
T1658 000:717.674 JLINK_IsHalted()
T1658 000:717.952 - 0.277ms returns FALSE
T1658 000:717.963 JLINK_HasError()
T1658 000:719.590 JLINK_IsHalted()
T1658 000:719.818 - 0.227ms returns FALSE
T1658 000:719.830 JLINK_HasError()
T1658 000:720.927 JLINK_IsHalted()
T1658 000:721.187 - 0.259ms returns FALSE
T1658 000:721.199 JLINK_HasError()
T1658 000:723.054 JLINK_IsHalted()
T1658 000:723.272 - 0.217ms returns FALSE
T1658 000:723.283 JLINK_HasError()
T1658 000:725.509 JLINK_IsHalted()
T1658 000:725.768 - 0.259ms returns FALSE
T1658 000:725.779 JLINK_HasError()
T1658 000:727.524 JLINK_IsHalted()
T1658 000:727.789 - 0.265ms returns FALSE
T1658 000:727.800 JLINK_HasError()
T1658 000:729.537 JLINK_IsHalted()
T1658 000:729.780 - 0.242ms returns FALSE
T1658 000:729.791 JLINK_HasError()
T1658 000:730.895 JLINK_IsHalted()
T1658 000:731.143 - 0.247ms returns FALSE
T1658 000:731.154 JLINK_HasError()
T1658 000:733.193 JLINK_IsHalted()
T1658 000:733.438 - 0.244ms returns FALSE
T1658 000:733.450 JLINK_HasError()
T1658 000:734.539 JLINK_IsHalted()
T1658 000:734.823 - 0.283ms returns FALSE
T1658 000:734.835 JLINK_HasError()
T1658 000:736.960 JLINK_IsHalted()
T1658 000:737.251 - 0.290ms returns FALSE
T1658 000:737.264 JLINK_HasError()
T1658 000:738.934 JLINK_IsHalted()
T1658 000:740.038 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:740.323 - 1.388ms returns TRUE
T1658 000:740.337 JLINK_ReadReg(R15 (PC))
T1658 000:740.346 - 0.008ms returns 0x20000000
T1658 000:740.353 JLINK_ClrBPEx(BPHandle = 0x00000015)
T1658 000:740.359 - 0.006ms returns 0x00
T1658 000:740.366 JLINK_ReadReg(R0)
T1658 000:740.371 - 0.005ms returns 0x00000000
T1658 000:740.847 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:740.857 Data: 01 02 88 50 10 98 80 79 C0 06 00 28 09 D5 FF E7 ...
T1658 000:740.871 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:742.391 - 1.544ms returns 0x29C
T1658 000:742.407 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:742.414 Data: 4D F8 0B 98 40 F2 08 01 C2 F2 00 01 08 60 03 E0 ...
T1658 000:742.428 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:743.390 - 0.982ms returns 0x164
T1658 000:743.405 JLINK_HasError()
T1658 000:743.413 JLINK_WriteReg(R0, 0x08001000)
T1658 000:743.422 - 0.008ms returns 0
T1658 000:743.429 JLINK_WriteReg(R1, 0x00000400)
T1658 000:743.436 - 0.006ms returns 0
T1658 000:743.443 JLINK_WriteReg(R2, 0x20000164)
T1658 000:743.449 - 0.006ms returns 0
T1658 000:743.456 JLINK_WriteReg(R3, 0x00000000)
T1658 000:743.462 - 0.006ms returns 0
T1658 000:743.469 JLINK_WriteReg(R4, 0x00000000)
T1658 000:743.475 - 0.006ms returns 0
T1658 000:743.482 JLINK_WriteReg(R5, 0x00000000)
T1658 000:743.489 - 0.006ms returns 0
T1658 000:743.496 JLINK_WriteReg(R6, 0x00000000)
T1658 000:743.502 - 0.006ms returns 0
T1658 000:743.509 JLINK_WriteReg(R7, 0x00000000)
T1658 000:743.515 - 0.006ms returns 0
T1658 000:743.522 JLINK_WriteReg(R8, 0x00000000)
T1658 000:743.528 - 0.006ms returns 0
T1658 000:743.535 JLINK_WriteReg(R9, 0x20000160)
T1658 000:743.541 - 0.006ms returns 0
T1658 000:743.548 JLINK_WriteReg(R10, 0x00000000)
T1658 000:743.554 - 0.006ms returns 0
T1658 000:743.561 JLINK_WriteReg(R11, 0x00000000)
T1658 000:743.621 - 0.059ms returns 0
T1658 000:743.629 JLINK_WriteReg(R12, 0x00000000)
T1658 000:743.635 - 0.006ms returns 0
T1658 000:743.642 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:743.648 - 0.007ms returns 0
T1658 000:743.655 JLINK_WriteReg(R14, 0x20000001)
T1658 000:743.661 - 0.006ms returns 0
T1658 000:743.669 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:743.675 - 0.006ms returns 0
T1658 000:743.682 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:743.688 - 0.006ms returns 0
T1658 000:743.695 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:743.701 - 0.006ms returns 0
T1658 000:743.708 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:743.714 - 0.006ms returns 0
T1658 000:743.721 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:743.727 - 0.006ms returns 0
T1658 000:743.734 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:743.742 - 0.008ms returns 0x00000016
T1658 000:743.749 JLINK_Go()
T1658 000:743.763 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:745.233 - 1.483ms
T1658 000:745.248 JLINK_IsHalted()
T1658 000:745.580 - 0.331ms returns FALSE
T1658 000:745.595 JLINK_HasError()
T1658 000:749.630 JLINK_IsHalted()
T1658 000:749.881 - 0.250ms returns FALSE
T1658 000:749.896 JLINK_HasError()
T1658 000:750.938 JLINK_IsHalted()
T1658 000:751.189 - 0.250ms returns FALSE
T1658 000:751.204 JLINK_HasError()
T1658 000:753.246 JLINK_IsHalted()
T1658 000:753.587 - 0.341ms returns FALSE
T1658 000:753.603 JLINK_HasError()
T1658 000:755.239 JLINK_IsHalted()
T1658 000:755.583 - 0.344ms returns FALSE
T1658 000:755.598 JLINK_HasError()
T1658 000:756.668 JLINK_IsHalted()
T1658 000:756.953 - 0.284ms returns FALSE
T1658 000:756.968 JLINK_HasError()
T1658 000:758.661 JLINK_IsHalted()
T1658 000:758.891 - 0.229ms returns FALSE
T1658 000:758.905 JLINK_HasError()
T1658 000:760.657 JLINK_IsHalted()
T1658 000:760.940 - 0.283ms returns FALSE
T1658 000:760.955 JLINK_HasError()
T1658 000:763.040 JLINK_IsHalted()
T1658 000:763.321 - 0.280ms returns FALSE
T1658 000:763.336 JLINK_HasError()
T1658 000:764.411 JLINK_IsHalted()
T1658 000:764.630 - 0.219ms returns FALSE
T1658 000:764.645 JLINK_HasError()
T1658 000:765.720 JLINK_IsHalted()
T1658 000:766.009 - 0.288ms returns FALSE
T1658 000:766.024 JLINK_HasError()
T1658 000:767.717 JLINK_IsHalted()
T1658 000:768.029 - 0.312ms returns FALSE
T1658 000:768.046 JLINK_HasError()
T1658 000:769.645 JLINK_IsHalted()
T1658 000:769.886 - 0.241ms returns FALSE
T1658 000:769.898 JLINK_HasError()
T1658 000:772.701 JLINK_IsHalted()
T1658 000:772.939 - 0.237ms returns FALSE
T1658 000:772.950 JLINK_HasError()
T1658 000:774.018 JLINK_IsHalted()
T1658 000:774.280 - 0.261ms returns FALSE
T1658 000:774.292 JLINK_HasError()
T1658 000:775.389 JLINK_IsHalted()
T1658 000:775.664 - 0.274ms returns FALSE
T1658 000:775.675 JLINK_HasError()
T1658 000:776.766 JLINK_IsHalted()
T1658 000:777.853 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:778.110 - 1.343ms returns TRUE
T1658 000:778.123 JLINK_ReadReg(R15 (PC))
T1658 000:778.131 - 0.008ms returns 0x20000000
T1658 000:778.137 JLINK_ClrBPEx(BPHandle = 0x00000016)
T1658 000:778.143 - 0.005ms returns 0x00
T1658 000:778.149 JLINK_ReadReg(R0)
T1658 000:778.154 - 0.005ms returns 0x00000000
T1658 000:778.571 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:778.581 Data: 00 78 00 07 00 28 09 D5 FF E7 41 F2 04 01 C4 F2 ...
T1658 000:778.593 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:780.064 - 1.493ms returns 0x29C
T1658 000:780.077 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:780.083 Data: 01 46 00 91 00 28 3F D0 FF E7 00 98 04 28 04 D0 ...
T1658 000:780.095 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:781.095 - 1.018ms returns 0x164
T1658 000:781.108 JLINK_HasError()
T1658 000:781.115 JLINK_WriteReg(R0, 0x08001400)
T1658 000:781.122 - 0.007ms returns 0
T1658 000:781.128 JLINK_WriteReg(R1, 0x00000400)
T1658 000:781.134 - 0.005ms returns 0
T1658 000:781.139 JLINK_WriteReg(R2, 0x20000164)
T1658 000:781.145 - 0.005ms returns 0
T1658 000:781.151 JLINK_WriteReg(R3, 0x00000000)
T1658 000:781.209 - 0.058ms returns 0
T1658 000:781.216 JLINK_WriteReg(R4, 0x00000000)
T1658 000:781.221 - 0.005ms returns 0
T1658 000:781.227 JLINK_WriteReg(R5, 0x00000000)
T1658 000:781.232 - 0.005ms returns 0
T1658 000:781.238 JLINK_WriteReg(R6, 0x00000000)
T1658 000:781.243 - 0.005ms returns 0
T1658 000:781.249 JLINK_WriteReg(R7, 0x00000000)
T1658 000:781.254 - 0.005ms returns 0
T1658 000:781.260 JLINK_WriteReg(R8, 0x00000000)
T1658 000:781.265 - 0.005ms returns 0
T1658 000:781.270 JLINK_WriteReg(R9, 0x20000160)
T1658 000:781.275 - 0.005ms returns 0
T1658 000:781.281 JLINK_WriteReg(R10, 0x00000000)
T1658 000:781.286 - 0.005ms returns 0
T1658 000:781.292 JLINK_WriteReg(R11, 0x00000000)
T1658 000:781.297 - 0.005ms returns 0
T1658 000:781.303 JLINK_WriteReg(R12, 0x00000000)
T1658 000:781.308 - 0.005ms returns 0
T1658 000:781.314 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:781.319 - 0.005ms returns 0
T1658 000:781.325 JLINK_WriteReg(R14, 0x20000001)
T1658 000:781.330 - 0.005ms returns 0
T1658 000:781.336 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:781.341 - 0.005ms returns 0
T1658 000:781.347 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:781.352 - 0.005ms returns 0
T1658 000:781.358 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:781.363 - 0.005ms returns 0
T1658 000:781.369 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:781.374 - 0.005ms returns 0
T1658 000:781.380 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:781.385 - 0.005ms returns 0
T1658 000:781.404 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:781.411 - 0.007ms returns 0x00000017
T1658 000:781.417 JLINK_Go()
T1658 000:781.430 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:782.869 - 1.451ms
T1658 000:782.883 JLINK_IsHalted()
T1658 000:783.140 - 0.256ms returns FALSE
T1658 000:783.153 JLINK_HasError()
T1658 000:784.234 JLINK_IsHalted()
T1658 000:784.492 - 0.257ms returns FALSE
T1658 000:784.505 JLINK_HasError()
T1658 000:786.161 JLINK_IsHalted()
T1658 000:786.415 - 0.253ms returns FALSE
T1658 000:786.443 JLINK_HasError()
T1658 000:788.233 JLINK_IsHalted()
T1658 000:788.586 - 0.352ms returns FALSE
T1658 000:788.601 JLINK_HasError()
T1658 000:789.675 JLINK_IsHalted()
T1658 000:789.907 - 0.231ms returns FALSE
T1658 000:789.922 JLINK_HasError()
T1658 000:791.803 JLINK_IsHalted()
T1658 000:792.042 - 0.239ms returns FALSE
T1658 000:792.059 JLINK_HasError()
T1658 000:793.797 JLINK_IsHalted()
T1658 000:794.076 - 0.278ms returns FALSE
T1658 000:794.092 JLINK_HasError()
T1658 000:795.162 JLINK_IsHalted()
T1658 000:795.452 - 0.289ms returns FALSE
T1658 000:795.469 JLINK_HasError()
T1658 000:797.551 JLINK_IsHalted()
T1658 000:797.845 - 0.293ms returns FALSE
T1658 000:797.863 JLINK_HasError()
T1658 000:799.526 JLINK_IsHalted()
T1658 000:799.825 - 0.298ms returns FALSE
T1658 000:799.844 JLINK_HasError()
T1658 000:801.543 JLINK_IsHalted()
T1658 000:801.822 - 0.278ms returns FALSE
T1658 000:801.844 JLINK_HasError()
T1658 000:803.468 JLINK_IsHalted()
T1658 000:803.770 - 0.301ms returns FALSE
T1658 000:803.791 JLINK_HasError()
T1658 000:805.815 JLINK_IsHalted()
T1658 000:806.091 - 0.275ms returns FALSE
T1658 000:806.113 JLINK_HasError()
T1658 000:807.811 JLINK_IsHalted()
T1658 000:808.153 - 0.341ms returns FALSE
T1658 000:808.178 JLINK_HasError()
T1658 000:809.804 JLINK_IsHalted()
T1658 000:810.129 - 0.324ms returns FALSE
T1658 000:810.155 JLINK_HasError()
T1658 000:812.185 JLINK_IsHalted()
T1658 000:812.528 - 0.341ms returns FALSE
T1658 000:812.558 JLINK_HasError()
T1658 000:814.168 JLINK_IsHalted()
T1658 000:815.461 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:815.871 - 1.701ms returns TRUE
T1658 000:815.902 JLINK_ReadReg(R15 (PC))
T1658 000:815.921 - 0.018ms returns 0x20000000
T1658 000:815.936 JLINK_ClrBPEx(BPHandle = 0x00000017)
T1658 000:815.949 - 0.013ms returns 0x00
T1658 000:815.964 JLINK_ReadReg(R0)
T1658 000:815.977 - 0.012ms returns 0x00000000
T1658 000:817.614 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:817.649 Data: C4 F2 02 00 00 68 80 03 00 28 08 D5 FF E7 04 98 ...
T1658 000:817.708 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:819.329 - 1.715ms returns 0x29C
T1658 000:819.369 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:819.388 Data: 40 F2 80 41 C4 F2 42 21 00 20 08 60 FF F7 2C FB ...
T1658 000:819.424 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:820.645 - 1.274ms returns 0x164
T1658 000:820.685 JLINK_HasError()
T1658 000:820.706 JLINK_WriteReg(R0, 0x08001800)
T1658 000:820.728 - 0.022ms returns 0
T1658 000:820.746 JLINK_WriteReg(R1, 0x00000400)
T1658 000:820.762 - 0.016ms returns 0
T1658 000:820.780 JLINK_WriteReg(R2, 0x20000164)
T1658 000:820.795 - 0.015ms returns 0
T1658 000:820.812 JLINK_WriteReg(R3, 0x00000000)
T1658 000:820.827 - 0.015ms returns 0
T1658 000:820.845 JLINK_WriteReg(R4, 0x00000000)
T1658 000:820.860 - 0.015ms returns 0
T1658 000:820.877 JLINK_WriteReg(R5, 0x00000000)
T1658 000:820.893 - 0.015ms returns 0
T1658 000:820.910 JLINK_WriteReg(R6, 0x00000000)
T1658 000:820.925 - 0.015ms returns 0
T1658 000:820.943 JLINK_WriteReg(R7, 0x00000000)
T1658 000:820.958 - 0.015ms returns 0
T1658 000:820.975 JLINK_WriteReg(R8, 0x00000000)
T1658 000:820.991 - 0.015ms returns 0
T1658 000:821.008 JLINK_WriteReg(R9, 0x20000160)
T1658 000:821.023 - 0.015ms returns 0
T1658 000:821.040 JLINK_WriteReg(R10, 0x00000000)
T1658 000:821.056 - 0.015ms returns 0
T1658 000:821.073 JLINK_WriteReg(R11, 0x00000000)
T1658 000:821.089 - 0.015ms returns 0
T1658 000:821.106 JLINK_WriteReg(R12, 0x00000000)
T1658 000:821.121 - 0.015ms returns 0
T1658 000:821.139 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:821.155 - 0.017ms returns 0
T1658 000:821.173 JLINK_WriteReg(R14, 0x20000001)
T1658 000:821.188 - 0.015ms returns 0
T1658 000:821.206 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:821.221 - 0.016ms returns 0
T1658 000:821.239 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:821.254 - 0.015ms returns 0
T1658 000:821.272 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:821.287 - 0.015ms returns 0
T1658 000:821.304 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:821.319 - 0.015ms returns 0
T1658 000:821.337 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:821.352 - 0.015ms returns 0
T1658 000:821.371 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:821.389 - 0.018ms returns 0x00000018
T1658 000:821.406 JLINK_Go()
T1658 000:821.440 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:823.090 - 1.682ms
T1658 000:823.130 JLINK_IsHalted()
T1658 000:823.472 - 0.341ms returns FALSE
T1658 000:823.501 JLINK_HasError()
T1658 000:825.499 JLINK_IsHalted()
T1658 000:825.805 - 0.305ms returns FALSE
T1658 000:825.833 JLINK_HasError()
T1658 000:827.489 JLINK_IsHalted()
T1658 000:827.884 - 0.395ms returns FALSE
T1658 000:827.911 JLINK_HasError()
T1658 000:829.481 JLINK_IsHalted()
T1658 000:829.801 - 0.318ms returns FALSE
T1658 000:829.839 JLINK_HasError()
T1658 000:831.849 JLINK_IsHalted()
T1658 000:832.254 - 0.403ms returns FALSE
T1658 000:832.303 JLINK_HasError()
T1658 000:836.792 JLINK_IsHalted()
T1658 000:837.293 - 0.499ms returns FALSE
T1658 000:837.344 JLINK_HasError()
T1658 000:838.860 JLINK_IsHalted()
T1658 000:839.303 - 0.440ms returns FALSE
T1658 000:839.359 JLINK_HasError()
T1658 000:841.333 JLINK_IsHalted()
T1658 000:841.815 - 0.480ms returns FALSE
T1658 000:841.865 JLINK_HasError()
T1658 000:843.339 JLINK_IsHalted()
T1658 000:843.718 - 0.377ms returns FALSE
T1658 000:843.768 JLINK_HasError()
T1658 000:845.784 JLINK_IsHalted()
T1658 000:846.241 - 0.456ms returns FALSE
T1658 000:846.292 JLINK_HasError()
T1658 000:847.861 JLINK_IsHalted()
T1658 000:848.282 - 0.418ms returns FALSE
T1658 000:848.332 JLINK_HasError()
T1658 000:849.819 JLINK_IsHalted()
T1658 000:850.275 - 0.454ms returns FALSE
T1658 000:850.326 JLINK_HasError()
T1658 000:851.805 JLINK_IsHalted()
T1658 000:852.355 - 0.547ms returns FALSE
T1658 000:852.406 JLINK_HasError()
T1658 000:853.819 JLINK_IsHalted()
T1658 000:855.372 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:855.818 - 1.997ms returns TRUE
T1658 000:855.880 JLINK_ReadReg(R15 (PC))
T1658 000:855.920 - 0.038ms returns 0x20000000
T1658 000:855.945 JLINK_ClrBPEx(BPHandle = 0x00000018)
T1658 000:855.967 - 0.021ms returns 0x00
T1658 000:855.990 JLINK_ReadReg(R0)
T1658 000:856.011 - 0.020ms returns 0x00000000
T1658 000:857.619 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:857.659 Data: FF E7 FF E7 04 98 C0 68 E0 B1 FF E7 FF F7 7A FA ...
T1658 000:857.709 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:859.415 - 1.796ms returns 0x29C
T1658 000:859.482 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:859.506 Data: 43 F2 00 41 C4 F2 01 01 88 42 21 D0 FF E7 03 98 ...
T1658 000:859.554 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:860.713 - 1.230ms returns 0x164
T1658 000:860.763 JLINK_HasError()
T1658 000:860.791 JLINK_WriteReg(R0, 0x08001C00)
T1658 000:860.820 - 0.028ms returns 0
T1658 000:860.844 JLINK_WriteReg(R1, 0x00000400)
T1658 000:860.866 - 0.021ms returns 0
T1658 000:860.889 JLINK_WriteReg(R2, 0x20000164)
T1658 000:860.910 - 0.021ms returns 0
T1658 000:860.933 JLINK_WriteReg(R3, 0x00000000)
T1658 000:860.953 - 0.020ms returns 0
T1658 000:860.977 JLINK_WriteReg(R4, 0x00000000)
T1658 000:860.997 - 0.020ms returns 0
T1658 000:861.020 JLINK_WriteReg(R5, 0x00000000)
T1658 000:861.041 - 0.020ms returns 0
T1658 000:861.064 JLINK_WriteReg(R6, 0x00000000)
T1658 000:861.090 - 0.025ms returns 0
T1658 000:861.113 JLINK_WriteReg(R7, 0x00000000)
T1658 000:861.133 - 0.020ms returns 0
T1658 000:861.157 JLINK_WriteReg(R8, 0x00000000)
T1658 000:861.177 - 0.020ms returns 0
T1658 000:861.200 JLINK_WriteReg(R9, 0x20000160)
T1658 000:861.220 - 0.020ms returns 0
T1658 000:861.244 JLINK_WriteReg(R10, 0x00000000)
T1658 000:861.265 - 0.021ms returns 0
T1658 000:861.287 JLINK_WriteReg(R11, 0x00000000)
T1658 000:861.307 - 0.020ms returns 0
T1658 000:861.331 JLINK_WriteReg(R12, 0x00000000)
T1658 000:861.352 - 0.020ms returns 0
T1658 000:861.375 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:861.397 - 0.022ms returns 0
T1658 000:861.420 JLINK_WriteReg(R14, 0x20000001)
T1658 000:861.441 - 0.021ms returns 0
T1658 000:861.463 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:861.484 - 0.020ms returns 0
T1658 000:861.507 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:861.528 - 0.021ms returns 0
T1658 000:861.551 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:861.572 - 0.021ms returns 0
T1658 000:861.595 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:861.615 - 0.020ms returns 0
T1658 000:861.638 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:861.658 - 0.020ms returns 0
T1658 000:861.691 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:861.715 - 0.025ms returns 0x00000019
T1658 000:861.738 JLINK_Go()
T1658 000:861.782 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:863.615 - 1.875ms
T1658 000:863.666 JLINK_IsHalted()
T1658 000:864.119 - 0.450ms returns FALSE
T1658 000:864.169 JLINK_HasError()
T1658 000:865.729 JLINK_IsHalted()
T1658 000:866.244 - 0.513ms returns FALSE
T1658 000:866.293 JLINK_HasError()
T1658 000:867.727 JLINK_IsHalted()
T1658 000:868.178 - 0.449ms returns FALSE
T1658 000:868.229 JLINK_HasError()
T1658 000:869.703 JLINK_IsHalted()
T1658 000:870.076 - 0.371ms returns FALSE
T1658 000:870.127 JLINK_HasError()
T1658 000:871.698 JLINK_IsHalted()
T1658 000:872.180 - 0.481ms returns FALSE
T1658 000:872.231 JLINK_HasError()
T1658 000:873.686 JLINK_IsHalted()
T1658 000:874.125 - 0.437ms returns FALSE
T1658 000:874.176 JLINK_HasError()
T1658 000:875.694 JLINK_IsHalted()
T1658 000:876.044 - 0.348ms returns FALSE
T1658 000:876.079 JLINK_HasError()
T1658 000:877.680 JLINK_IsHalted()
T1658 000:878.124 - 0.443ms returns FALSE
T1658 000:878.159 JLINK_HasError()
T1658 000:879.700 JLINK_IsHalted()
T1658 000:880.103 - 0.402ms returns FALSE
T1658 000:880.138 JLINK_HasError()
T1658 000:882.130 JLINK_IsHalted()
T1658 000:882.574 - 0.442ms returns FALSE
T1658 000:882.608 JLINK_HasError()
T1658 000:884.592 JLINK_IsHalted()
T1658 000:885.037 - 0.444ms returns FALSE
T1658 000:885.071 JLINK_HasError()
T1658 000:886.610 JLINK_IsHalted()
T1658 000:887.067 - 0.455ms returns FALSE
T1658 000:887.118 JLINK_HasError()
T1658 000:888.590 JLINK_IsHalted()
T1658 000:889.055 - 0.464ms returns FALSE
T1658 000:889.092 JLINK_HasError()
T1658 000:890.579 JLINK_IsHalted()
T1658 000:890.941 - 0.361ms returns FALSE
T1658 000:890.982 JLINK_HasError()
T1658 000:892.961 JLINK_IsHalted()
T1658 000:893.384 - 0.422ms returns FALSE
T1658 000:893.419 JLINK_HasError()
T1658 000:895.411 JLINK_IsHalted()
T1658 000:896.800 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:897.209 - 1.797ms returns TRUE
T1658 000:897.246 JLINK_ReadReg(R15 (PC))
T1658 000:897.273 - 0.027ms returns 0x20000000
T1658 000:897.298 JLINK_ClrBPEx(BPHandle = 0x00000019)
T1658 000:897.320 - 0.022ms returns 0x00
T1658 000:897.344 JLINK_ReadReg(R0)
T1658 000:897.454 - 0.108ms returns 0x00000000
T1658 000:899.060 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:899.100 Data: 01 90 00 22 11 46 FF F7 97 F9 01 98 FF F7 8A F9 ...
T1658 000:899.149 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:900.814 - 1.754ms returns 0x29C
T1658 000:900.864 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:900.888 Data: 08 00 80 07 00 28 1D D5 FF E7 03 98 01 68 6F F0 ...
T1658 000:900.935 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:902.136 - 1.270ms returns 0x164
T1658 000:902.186 JLINK_HasError()
T1658 000:902.213 JLINK_WriteReg(R0, 0x08002000)
T1658 000:902.242 - 0.029ms returns 0
T1658 000:902.265 JLINK_WriteReg(R1, 0x00000400)
T1658 000:902.287 - 0.022ms returns 0
T1658 000:902.310 JLINK_WriteReg(R2, 0x20000164)
T1658 000:902.344 - 0.033ms returns 0
T1658 000:902.369 JLINK_WriteReg(R3, 0x00000000)
T1658 000:902.390 - 0.021ms returns 0
T1658 000:902.414 JLINK_WriteReg(R4, 0x00000000)
T1658 000:902.435 - 0.021ms returns 0
T1658 000:902.458 JLINK_WriteReg(R5, 0x00000000)
T1658 000:902.479 - 0.021ms returns 0
T1658 000:902.568 JLINK_WriteReg(R6, 0x00000000)
T1658 000:902.631 - 0.066ms returns 0
T1658 000:902.663 JLINK_WriteReg(R7, 0x00000000)
T1658 000:902.686 - 0.023ms returns 0
T1658 000:902.709 JLINK_WriteReg(R8, 0x00000000)
T1658 000:902.730 - 0.021ms returns 0
T1658 000:902.753 JLINK_WriteReg(R9, 0x20000160)
T1658 000:902.774 - 0.020ms returns 0
T1658 000:902.803 JLINK_WriteReg(R10, 0x00000000)
T1658 000:902.825 - 0.022ms returns 0
T1658 000:902.848 JLINK_WriteReg(R11, 0x00000000)
T1658 000:902.869 - 0.021ms returns 0
T1658 000:903.004 JLINK_WriteReg(R12, 0x00000000)
T1658 000:903.059 - 0.055ms returns 0
T1658 000:903.087 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:903.111 - 0.024ms returns 0
T1658 000:903.134 JLINK_WriteReg(R14, 0x20000001)
T1658 000:903.156 - 0.021ms returns 0
T1658 000:903.180 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:903.200 - 0.021ms returns 0
T1658 000:903.224 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:903.245 - 0.021ms returns 0
T1658 000:903.268 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:903.290 - 0.021ms returns 0
T1658 000:903.313 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:903.334 - 0.020ms returns 0
T1658 000:903.357 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:903.378 - 0.020ms returns 0
T1658 000:903.403 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:903.429 - 0.026ms returns 0x0000001A
T1658 000:903.452 JLINK_Go()
T1658 000:903.499 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:905.398 - 1.944ms
T1658 000:905.448 JLINK_IsHalted()
T1658 000:905.884 - 0.433ms returns FALSE
T1658 000:905.938 JLINK_HasError()
T1658 000:908.035 JLINK_IsHalted()
T1658 000:908.515 - 0.478ms returns FALSE
T1658 000:908.565 JLINK_HasError()
T1658 000:910.619 JLINK_IsHalted()
T1658 000:911.040 - 0.419ms returns FALSE
T1658 000:911.091 JLINK_HasError()
T1658 000:912.540 JLINK_IsHalted()
T1658 000:913.002 - 0.460ms returns FALSE
T1658 000:913.052 JLINK_HasError()
T1658 000:915.036 JLINK_IsHalted()
T1658 000:915.490 - 0.453ms returns FALSE
T1658 000:915.540 JLINK_HasError()
T1658 000:917.029 JLINK_IsHalted()
T1658 000:917.508 - 0.477ms returns FALSE
T1658 000:917.558 JLINK_HasError()
T1658 000:919.033 JLINK_IsHalted()
T1658 000:919.442 - 0.407ms returns FALSE
T1658 000:919.492 JLINK_HasError()
T1658 000:921.016 JLINK_IsHalted()
T1658 000:921.478 - 0.460ms returns FALSE
T1658 000:921.528 JLINK_HasError()
T1658 000:923.010 JLINK_IsHalted()
T1658 000:923.487 - 0.474ms returns FALSE
T1658 000:923.536 JLINK_HasError()
T1658 000:925.515 JLINK_IsHalted()
T1658 000:925.974 - 0.457ms returns FALSE
T1658 000:926.024 JLINK_HasError()
T1658 000:927.517 JLINK_IsHalted()
T1658 000:927.999 - 0.479ms returns FALSE
T1658 000:928.049 JLINK_HasError()
T1658 000:929.505 JLINK_IsHalted()
T1658 000:929.978 - 0.471ms returns FALSE
T1658 000:930.028 JLINK_HasError()
T1658 000:932.007 JLINK_IsHalted()
T1658 000:932.477 - 0.468ms returns FALSE
T1658 000:932.527 JLINK_HasError()
T1658 000:934.001 JLINK_IsHalted()
T1658 000:934.480 - 0.477ms returns FALSE
T1658 000:934.531 JLINK_HasError()
T1658 000:936.480 JLINK_IsHalted()
T1658 000:937.968 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:938.418 - 1.937ms returns TRUE
T1658 000:938.486 JLINK_ReadReg(R15 (PC))
T1658 000:938.517 - 0.029ms returns 0x20000000
T1658 000:938.541 JLINK_ClrBPEx(BPHandle = 0x0000001A)
T1658 000:938.563 - 0.022ms returns 0x00
T1658 000:938.587 JLINK_ReadReg(R0)
T1658 000:938.608 - 0.020ms returns 0x00000000
T1658 000:940.183 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:940.223 Data: 03 98 00 F0 4F F8 FF E7 FF E7 9D F8 04 00 00 06 ...
T1658 000:940.272 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:941.928 - 1.744ms returns 0x29C
T1658 000:941.984 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:942.008 Data: 03 E0 11 98 FF F7 1C FF FF E7 03 E0 11 98 FF F7 ...
T1658 000:942.055 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:943.252 - 1.266ms returns 0x164
T1658 000:943.308 JLINK_HasError()
T1658 000:943.337 JLINK_WriteReg(R0, 0x08002400)
T1658 000:943.366 - 0.029ms returns 0
T1658 000:943.392 JLINK_WriteReg(R1, 0x00000400)
T1658 000:943.414 - 0.022ms returns 0
T1658 000:943.438 JLINK_WriteReg(R2, 0x20000164)
T1658 000:943.458 - 0.021ms returns 0
T1658 000:943.484 JLINK_WriteReg(R3, 0x00000000)
T1658 000:943.505 - 0.021ms returns 0
T1658 000:943.531 JLINK_WriteReg(R4, 0x00000000)
T1658 000:943.552 - 0.021ms returns 0
T1658 000:943.578 JLINK_WriteReg(R5, 0x00000000)
T1658 000:943.600 - 0.021ms returns 0
T1658 000:943.626 JLINK_WriteReg(R6, 0x00000000)
T1658 000:943.647 - 0.021ms returns 0
T1658 000:943.674 JLINK_WriteReg(R7, 0x00000000)
T1658 000:943.694 - 0.020ms returns 0
T1658 000:943.719 JLINK_WriteReg(R8, 0x00000000)
T1658 000:943.739 - 0.020ms returns 0
T1658 000:943.766 JLINK_WriteReg(R9, 0x20000160)
T1658 000:943.787 - 0.020ms returns 0
T1658 000:943.815 JLINK_WriteReg(R10, 0x00000000)
T1658 000:943.840 - 0.025ms returns 0
T1658 000:943.867 JLINK_WriteReg(R11, 0x00000000)
T1658 000:943.888 - 0.020ms returns 0
T1658 000:943.913 JLINK_WriteReg(R12, 0x00000000)
T1658 000:943.934 - 0.021ms returns 0
T1658 000:943.961 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:943.983 - 0.022ms returns 0
T1658 000:944.010 JLINK_WriteReg(R14, 0x20000001)
T1658 000:944.030 - 0.021ms returns 0
T1658 000:944.057 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:944.078 - 0.021ms returns 0
T1658 000:944.104 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:944.125 - 0.021ms returns 0
T1658 000:944.150 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:944.171 - 0.021ms returns 0
T1658 000:944.198 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:944.218 - 0.020ms returns 0
T1658 000:944.245 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:944.265 - 0.020ms returns 0
T1658 000:944.430 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:944.484 - 0.054ms returns 0x0000001B
T1658 000:944.509 JLINK_Go()
T1658 000:944.557 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:946.495 - 1.983ms
T1658 000:946.546 JLINK_IsHalted()
T1658 000:946.962 - 0.413ms returns FALSE
T1658 000:947.012 JLINK_HasError()
T1658 000:949.925 JLINK_IsHalted()
T1658 000:950.179 - 0.254ms returns FALSE
T1658 000:950.195 JLINK_HasError()
T1658 000:951.259 JLINK_IsHalted()
T1658 000:951.527 - 0.267ms returns FALSE
T1658 000:951.538 JLINK_HasError()
T1658 000:953.253 JLINK_IsHalted()
T1658 000:953.606 - 0.352ms returns FALSE
T1658 000:953.618 JLINK_HasError()
T1658 000:954.711 JLINK_IsHalted()
T1658 000:954.954 - 0.242ms returns FALSE
T1658 000:954.966 JLINK_HasError()
T1658 000:956.067 JLINK_IsHalted()
T1658 000:956.342 - 0.275ms returns FALSE
T1658 000:956.354 JLINK_HasError()
T1658 000:958.085 JLINK_IsHalted()
T1658 000:958.356 - 0.270ms returns FALSE
T1658 000:958.368 JLINK_HasError()
T1658 000:959.467 JLINK_IsHalted()
T1658 000:959.717 - 0.250ms returns FALSE
T1658 000:959.728 JLINK_HasError()
T1658 000:961.458 JLINK_IsHalted()
T1658 000:961.702 - 0.243ms returns FALSE
T1658 000:961.713 JLINK_HasError()
T1658 000:963.449 JLINK_IsHalted()
T1658 000:963.716 - 0.266ms returns FALSE
T1658 000:963.727 JLINK_HasError()
T1658 000:964.825 JLINK_IsHalted()
T1658 000:965.086 - 0.260ms returns FALSE
T1658 000:965.097 JLINK_HasError()
T1658 000:966.194 JLINK_IsHalted()
T1658 000:966.474 - 0.279ms returns FALSE
T1658 000:966.485 JLINK_HasError()
T1658 000:968.205 JLINK_IsHalted()
T1658 000:968.477 - 0.272ms returns FALSE
T1658 000:968.488 JLINK_HasError()
T1658 000:970.101 JLINK_IsHalted()
T1658 000:970.344 - 0.242ms returns FALSE
T1658 000:970.355 JLINK_HasError()
T1658 000:972.167 JLINK_IsHalted()
T1658 000:972.406 - 0.237ms returns FALSE
T1658 000:972.417 JLINK_HasError()
T1658 000:974.179 JLINK_IsHalted()
T1658 000:974.399 - 0.220ms returns FALSE
T1658 000:974.411 JLINK_HasError()
T1658 000:976.164 JLINK_IsHalted()
T1658 000:976.399 - 0.234ms returns FALSE
T1658 000:976.410 JLINK_HasError()
T1658 000:978.150 JLINK_IsHalted()
T1658 000:979.327 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 000:979.633 - 1.483ms returns TRUE
T1658 000:979.645 JLINK_ReadReg(R15 (PC))
T1658 000:979.653 - 0.007ms returns 0x20000000
T1658 000:979.658 JLINK_ClrBPEx(BPHandle = 0x0000001B)
T1658 000:979.664 - 0.005ms returns 0x00
T1658 000:979.669 JLINK_ReadReg(R0)
T1658 000:979.674 - 0.004ms returns 0x00000000
T1658 000:980.088 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 000:980.097 Data: 02 20 48 63 11 98 81 8D C2 8D 89 1A 89 B2 FF F7 ...
T1658 000:980.109 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 000:981.604 - 1.515ms returns 0x29C
T1658 000:981.617 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 000:981.628 Data: 80 12 42 61 01 76 41 76 81 76 C1 76 01 77 41 77 ...
T1658 000:981.640 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 000:982.663 - 1.046ms returns 0x164
T1658 000:982.676 JLINK_HasError()
T1658 000:982.683 JLINK_WriteReg(R0, 0x08002800)
T1658 000:982.691 - 0.007ms returns 0
T1658 000:982.696 JLINK_WriteReg(R1, 0x00000400)
T1658 000:982.702 - 0.005ms returns 0
T1658 000:982.708 JLINK_WriteReg(R2, 0x20000164)
T1658 000:982.713 - 0.005ms returns 0
T1658 000:982.719 JLINK_WriteReg(R3, 0x00000000)
T1658 000:982.724 - 0.005ms returns 0
T1658 000:982.730 JLINK_WriteReg(R4, 0x00000000)
T1658 000:982.735 - 0.005ms returns 0
T1658 000:982.741 JLINK_WriteReg(R5, 0x00000000)
T1658 000:982.746 - 0.005ms returns 0
T1658 000:982.752 JLINK_WriteReg(R6, 0x00000000)
T1658 000:982.757 - 0.005ms returns 0
T1658 000:982.763 JLINK_WriteReg(R7, 0x00000000)
T1658 000:982.768 - 0.005ms returns 0
T1658 000:982.774 JLINK_WriteReg(R8, 0x00000000)
T1658 000:982.779 - 0.005ms returns 0
T1658 000:982.785 JLINK_WriteReg(R9, 0x20000160)
T1658 000:982.790 - 0.005ms returns 0
T1658 000:982.796 JLINK_WriteReg(R10, 0x00000000)
T1658 000:982.801 - 0.005ms returns 0
T1658 000:982.807 JLINK_WriteReg(R11, 0x00000000)
T1658 000:982.812 - 0.005ms returns 0
T1658 000:982.818 JLINK_WriteReg(R12, 0x00000000)
T1658 000:982.823 - 0.005ms returns 0
T1658 000:982.829 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 000:982.835 - 0.006ms returns 0
T1658 000:982.841 JLINK_WriteReg(R14, 0x20000001)
T1658 000:982.846 - 0.005ms returns 0
T1658 000:982.852 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 000:982.861 - 0.009ms returns 0
T1658 000:982.870 JLINK_WriteReg(XPSR, 0x01000000)
T1658 000:982.875 - 0.005ms returns 0
T1658 000:982.880 JLINK_WriteReg(MSP, 0x20001000)
T1658 000:982.886 - 0.005ms returns 0
T1658 000:982.891 JLINK_WriteReg(PSP, 0x20001000)
T1658 000:982.896 - 0.005ms returns 0
T1658 000:982.902 JLINK_WriteReg(CFBP, 0x00000000)
T1658 000:982.907 - 0.005ms returns 0
T1658 000:982.914 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 000:982.920 - 0.006ms returns 0x0000001C
T1658 000:982.926 JLINK_Go()
T1658 000:982.937 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 000:984.516 - 1.590ms
T1658 000:984.529 JLINK_IsHalted()
T1658 000:984.785 - 0.255ms returns FALSE
T1658 000:984.797 JLINK_HasError()
T1658 000:986.888 JLINK_IsHalted()
T1658 000:987.160 - 0.271ms returns FALSE
T1658 000:987.174 JLINK_HasError()
T1658 000:988.867 JLINK_IsHalted()
T1658 000:989.096 - 0.228ms returns FALSE
T1658 000:989.110 JLINK_HasError()
T1658 000:990.866 JLINK_IsHalted()
T1658 000:991.115 - 0.248ms returns FALSE
T1658 000:991.129 JLINK_HasError()
T1658 000:992.852 JLINK_IsHalted()
T1658 000:993.104 - 0.251ms returns FALSE
T1658 000:993.118 JLINK_HasError()
T1658 000:994.250 JLINK_IsHalted()
T1658 000:994.581 - 0.330ms returns FALSE
T1658 000:994.595 JLINK_HasError()
T1658 000:995.670 JLINK_IsHalted()
T1658 000:995.947 - 0.277ms returns FALSE
T1658 000:995.962 JLINK_HasError()
T1658 000:998.016 JLINK_IsHalted()
T1658 000:998.297 - 0.280ms returns FALSE
T1658 000:998.314 JLINK_HasError()
T1658 001:000.376 JLINK_IsHalted()
T1658 001:000.664 - 0.288ms returns FALSE
T1658 001:000.681 JLINK_HasError()
T1658 001:002.708 JLINK_IsHalted()
T1658 001:002.982 - 0.273ms returns FALSE
T1658 001:003.001 JLINK_HasError()
T1658 001:004.738 JLINK_IsHalted()
T1658 001:005.031 - 0.292ms returns FALSE
T1658 001:005.050 JLINK_HasError()
T1658 001:007.080 JLINK_IsHalted()
T1658 001:007.398 - 0.318ms returns FALSE
T1658 001:007.420 JLINK_HasError()
T1658 001:009.105 JLINK_IsHalted()
T1658 001:009.417 - 0.310ms returns FALSE
T1658 001:009.438 JLINK_HasError()
T1658 001:011.477 JLINK_IsHalted()
T1658 001:011.812 - 0.333ms returns FALSE
T1658 001:011.837 JLINK_HasError()
T1658 001:013.462 JLINK_IsHalted()
T1658 001:013.777 - 0.314ms returns FALSE
T1658 001:013.803 JLINK_HasError()
T1658 001:015.823 JLINK_IsHalted()
T1658 001:017.091 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:017.491 - 1.666ms returns TRUE
T1658 001:017.515 JLINK_ReadReg(R15 (PC))
T1658 001:017.533 - 0.017ms returns 0x20000000
T1658 001:017.547 JLINK_ClrBPEx(BPHandle = 0x0000001C)
T1658 001:017.560 - 0.013ms returns 0x00
T1658 001:017.575 JLINK_ReadReg(R0)
T1658 001:017.587 - 0.012ms returns 0x00000000
T1658 001:018.584 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 001:018.608 Data: 06 21 41 60 40 F6 FF 71 81 60 FE F7 81 FA 18 B1 ...
T1658 001:018.638 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 001:020.213 - 1.629ms returns 0x29C
T1658 001:020.248 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 001:020.262 Data: FF E7 00 98 20 F0 70 00 00 90 01 98 41 68 00 98 ...
T1658 001:020.290 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 001:021.487 - 1.238ms returns 0x164
T1658 001:021.522 JLINK_HasError()
T1658 001:021.543 JLINK_WriteReg(R0, 0x08002C00)
T1658 001:021.563 - 0.020ms returns 0
T1658 001:021.666 JLINK_WriteReg(R1, 0x00000400)
T1658 001:021.686 - 0.020ms returns 0
T1658 001:021.705 JLINK_WriteReg(R2, 0x20000164)
T1658 001:021.720 - 0.015ms returns 0
T1658 001:021.737 JLINK_WriteReg(R3, 0x00000000)
T1658 001:021.762 - 0.024ms returns 0
T1658 001:021.779 JLINK_WriteReg(R4, 0x00000000)
T1658 001:021.795 - 0.015ms returns 0
T1658 001:021.812 JLINK_WriteReg(R5, 0x00000000)
T1658 001:021.827 - 0.015ms returns 0
T1658 001:021.845 JLINK_WriteReg(R6, 0x00000000)
T1658 001:021.860 - 0.015ms returns 0
T1658 001:021.877 JLINK_WriteReg(R7, 0x00000000)
T1658 001:021.892 - 0.015ms returns 0
T1658 001:021.910 JLINK_WriteReg(R8, 0x00000000)
T1658 001:021.925 - 0.015ms returns 0
T1658 001:021.952 JLINK_WriteReg(R9, 0x20000160)
T1658 001:021.975 - 0.022ms returns 0
T1658 001:021.992 JLINK_WriteReg(R10, 0x00000000)
T1658 001:022.008 - 0.015ms returns 0
T1658 001:022.025 JLINK_WriteReg(R11, 0x00000000)
T1658 001:022.040 - 0.015ms returns 0
T1658 001:022.057 JLINK_WriteReg(R12, 0x00000000)
T1658 001:022.073 - 0.015ms returns 0
T1658 001:022.090 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:022.107 - 0.017ms returns 0
T1658 001:022.124 JLINK_WriteReg(R14, 0x20000001)
T1658 001:022.139 - 0.015ms returns 0
T1658 001:022.157 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 001:022.172 - 0.015ms returns 0
T1658 001:022.189 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:022.205 - 0.015ms returns 0
T1658 001:022.222 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:022.237 - 0.015ms returns 0
T1658 001:022.255 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:022.270 - 0.015ms returns 0
T1658 001:022.287 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:022.302 - 0.015ms returns 0
T1658 001:022.321 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:022.339 - 0.019ms returns 0x0000001D
T1658 001:022.357 JLINK_Go()
T1658 001:022.391 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:024.149 - 1.791ms
T1658 001:024.178 JLINK_IsHalted()
T1658 001:024.574 - 0.395ms returns FALSE
T1658 001:024.602 JLINK_HasError()
T1658 001:025.771 JLINK_IsHalted()
T1658 001:026.084 - 0.312ms returns FALSE
T1658 001:026.123 JLINK_HasError()
T1658 001:027.936 JLINK_IsHalted()
T1658 001:028.294 - 0.358ms returns FALSE
T1658 001:028.321 JLINK_HasError()
T1658 001:030.289 JLINK_IsHalted()
T1658 001:030.664 - 0.373ms returns FALSE
T1658 001:030.702 JLINK_HasError()
T1658 001:032.724 JLINK_IsHalted()
T1658 001:033.130 - 0.404ms returns FALSE
T1658 001:033.156 JLINK_HasError()
T1658 001:034.749 JLINK_IsHalted()
T1658 001:035.095 - 0.345ms returns FALSE
T1658 001:035.122 JLINK_HasError()
T1658 001:037.042 JLINK_IsHalted()
T1658 001:037.412 - 0.368ms returns FALSE
T1658 001:037.448 JLINK_HasError()
T1658 001:038.994 JLINK_IsHalted()
T1658 001:039.401 - 0.405ms returns FALSE
T1658 001:039.440 JLINK_HasError()
T1658 001:041.430 JLINK_IsHalted()
T1658 001:041.864 - 0.421ms returns FALSE
T1658 001:041.904 JLINK_HasError()
T1658 001:043.424 JLINK_IsHalted()
T1658 001:043.785 - 0.359ms returns FALSE
T1658 001:043.824 JLINK_HasError()
T1658 001:045.406 JLINK_IsHalted()
T1658 001:045.758 - 0.350ms returns FALSE
T1658 001:045.796 JLINK_HasError()
T1658 001:047.400 JLINK_IsHalted()
T1658 001:047.799 - 0.398ms returns FALSE
T1658 001:047.828 JLINK_HasError()
T1658 001:049.393 JLINK_IsHalted()
T1658 001:049.712 - 0.317ms returns FALSE
T1658 001:049.740 JLINK_HasError()
T1658 001:051.767 JLINK_IsHalted()
T1658 001:052.211 - 0.441ms returns FALSE
T1658 001:052.263 JLINK_HasError()
T1658 001:060.755 JLINK_IsHalted()
T1658 001:062.367 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:062.815 - 2.058ms returns TRUE
T1658 001:062.854 JLINK_ReadReg(R15 (PC))
T1658 001:062.881 - 0.027ms returns 0x20000000
T1658 001:062.905 JLINK_ClrBPEx(BPHandle = 0x0000001D)
T1658 001:062.927 - 0.022ms returns 0x00
T1658 001:062.951 JLINK_ReadReg(R0)
T1658 001:062.972 - 0.020ms returns 0x00000000
T1658 001:064.505 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 001:064.545 Data: 08 6A 20 F0 01 00 08 62 04 98 80 69 01 90 01 98 ...
T1658 001:064.593 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 001:066.277 - 1.771ms returns 0x29C
T1658 001:066.316 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 001:066.338 Data: FF E7 00 20 00 90 04 98 00 68 00 68 00 90 04 98 ...
T1658 001:066.377 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 001:067.475 - 1.158ms returns 0x164
T1658 001:067.525 JLINK_HasError()
T1658 001:067.553 JLINK_WriteReg(R0, 0x08003000)
T1658 001:067.580 - 0.027ms returns 0
T1658 001:067.603 JLINK_WriteReg(R1, 0x00000400)
T1658 001:067.623 - 0.020ms returns 0
T1658 001:067.646 JLINK_WriteReg(R2, 0x20000164)
T1658 001:067.666 - 0.020ms returns 0
T1658 001:067.689 JLINK_WriteReg(R3, 0x00000000)
T1658 001:067.720 - 0.031ms returns 0
T1658 001:067.753 JLINK_WriteReg(R4, 0x00000000)
T1658 001:067.774 - 0.021ms returns 0
T1658 001:067.796 JLINK_WriteReg(R5, 0x00000000)
T1658 001:067.816 - 0.020ms returns 0
T1658 001:067.840 JLINK_WriteReg(R6, 0x00000000)
T1658 001:067.860 - 0.020ms returns 0
T1658 001:067.886 JLINK_WriteReg(R7, 0x00000000)
T1658 001:067.907 - 0.021ms returns 0
T1658 001:067.930 JLINK_WriteReg(R8, 0x00000000)
T1658 001:067.951 - 0.020ms returns 0
T1658 001:067.973 JLINK_WriteReg(R9, 0x20000160)
T1658 001:067.994 - 0.020ms returns 0
T1658 001:068.017 JLINK_WriteReg(R10, 0x00000000)
T1658 001:068.037 - 0.021ms returns 0
T1658 001:068.060 JLINK_WriteReg(R11, 0x00000000)
T1658 001:068.081 - 0.020ms returns 0
T1658 001:068.103 JLINK_WriteReg(R12, 0x00000000)
T1658 001:068.124 - 0.020ms returns 0
T1658 001:068.147 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:068.169 - 0.022ms returns 0
T1658 001:068.192 JLINK_WriteReg(R14, 0x20000001)
T1658 001:068.212 - 0.020ms returns 0
T1658 001:068.235 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 001:068.256 - 0.021ms returns 0
T1658 001:068.279 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:068.300 - 0.020ms returns 0
T1658 001:068.323 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:068.343 - 0.020ms returns 0
T1658 001:068.366 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:068.386 - 0.020ms returns 0
T1658 001:068.409 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:068.429 - 0.020ms returns 0
T1658 001:068.454 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:068.490 - 0.037ms returns 0x0000001E
T1658 001:068.514 JLINK_Go()
T1658 001:068.558 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:070.633 - 2.116ms
T1658 001:070.685 JLINK_IsHalted()
T1658 001:071.121 - 0.434ms returns FALSE
T1658 001:071.158 JLINK_HasError()
T1658 001:073.002 JLINK_IsHalted()
T1658 001:073.520 - 0.517ms returns FALSE
T1658 001:073.558 JLINK_HasError()
T1658 001:075.513 JLINK_IsHalted()
T1658 001:075.966 - 0.453ms returns FALSE
T1658 001:076.002 JLINK_HasError()
T1658 001:077.497 JLINK_IsHalted()
T1658 001:077.924 - 0.425ms returns FALSE
T1658 001:077.971 JLINK_HasError()
T1658 001:079.490 JLINK_IsHalted()
T1658 001:079.951 - 0.461ms returns FALSE
T1658 001:079.986 JLINK_HasError()
T1658 001:081.972 JLINK_IsHalted()
T1658 001:082.423 - 0.449ms returns FALSE
T1658 001:082.458 JLINK_HasError()
T1658 001:084.031 JLINK_IsHalted()
T1658 001:084.489 - 0.456ms returns FALSE
T1658 001:084.535 JLINK_HasError()
T1658 001:086.514 JLINK_IsHalted()
T1658 001:087.023 - 0.506ms returns FALSE
T1658 001:087.073 JLINK_HasError()
T1658 001:088.436 JLINK_IsHalted()
T1658 001:088.888 - 0.451ms returns FALSE
T1658 001:088.926 JLINK_HasError()
T1658 001:090.906 JLINK_IsHalted()
T1658 001:091.363 - 0.456ms returns FALSE
T1658 001:091.398 JLINK_HasError()
T1658 001:092.900 JLINK_IsHalted()
T1658 001:093.330 - 0.429ms returns FALSE
T1658 001:093.365 JLINK_HasError()
T1658 001:095.349 JLINK_IsHalted()
T1658 001:095.773 - 0.423ms returns FALSE
T1658 001:095.808 JLINK_HasError()
T1658 001:097.544 JLINK_IsHalted()
T1658 001:098.039 - 0.494ms returns FALSE
T1658 001:098.085 JLINK_HasError()
T1658 001:099.360 JLINK_IsHalted()
T1658 001:099.798 - 0.436ms returns FALSE
T1658 001:099.844 JLINK_HasError()
T1658 001:101.332 JLINK_IsHalted()
T1658 001:102.731 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:103.154 - 1.818ms returns TRUE
T1658 001:103.208 JLINK_ReadReg(R15 (PC))
T1658 001:103.238 - 0.029ms returns 0x20000000
T1658 001:103.262 JLINK_ClrBPEx(BPHandle = 0x0000001E)
T1658 001:103.285 - 0.022ms returns 0x00
T1658 001:103.314 JLINK_ReadReg(R0)
T1658 001:103.335 - 0.021ms returns 0x00000000
T1658 001:105.213 JLINK_WriteMem(0x20000164, 0x29C Bytes, ...)
T1658 001:105.223 Data: 01 38 C8 84 00 04 68 B9 FF E7 01 98 01 68 C8 68 ...
T1658 001:105.237 CPU_WriteMem(668 bytes @ 0x20000164)
T1658 001:106.858 - 1.644ms returns 0x29C
T1658 001:106.867 JLINK_WriteMem(0x20000400, 0x164 Bytes, ...)
T1658 001:106.872 Data: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ...
T1658 001:106.888 CPU_WriteMem(356 bytes @ 0x20000400)
T1658 001:107.926 - 1.058ms returns 0x164
T1658 001:107.934 JLINK_HasError()
T1658 001:107.940 JLINK_WriteReg(R0, 0x08003400)
T1658 001:107.946 - 0.006ms returns 0
T1658 001:107.952 JLINK_WriteReg(R1, 0x000001A8)
T1658 001:107.957 - 0.004ms returns 0
T1658 001:107.962 JLINK_WriteReg(R2, 0x20000164)
T1658 001:107.967 - 0.004ms returns 0
T1658 001:107.972 JLINK_WriteReg(R3, 0x00000000)
T1658 001:107.976 - 0.004ms returns 0
T1658 001:107.982 JLINK_WriteReg(R4, 0x00000000)
T1658 001:107.986 - 0.004ms returns 0
T1658 001:107.992 JLINK_WriteReg(R5, 0x00000000)
T1658 001:107.996 - 0.004ms returns 0
T1658 001:108.002 JLINK_WriteReg(R6, 0x00000000)
T1658 001:108.006 - 0.004ms returns 0
T1658 001:108.011 JLINK_WriteReg(R7, 0x00000000)
T1658 001:108.016 - 0.004ms returns 0
T1658 001:108.021 JLINK_WriteReg(R8, 0x00000000)
T1658 001:108.033 - 0.011ms returns 0
T1658 001:108.038 JLINK_WriteReg(R9, 0x20000160)
T1658 001:108.043 - 0.004ms returns 0
T1658 001:108.048 JLINK_WriteReg(R10, 0x00000000)
T1658 001:108.053 - 0.004ms returns 0
T1658 001:108.058 JLINK_WriteReg(R11, 0x00000000)
T1658 001:108.063 - 0.004ms returns 0
T1658 001:108.068 JLINK_WriteReg(R12, 0x00000000)
T1658 001:108.073 - 0.004ms returns 0
T1658 001:108.078 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:108.083 - 0.005ms returns 0
T1658 001:108.089 JLINK_WriteReg(R14, 0x20000001)
T1658 001:108.093 - 0.004ms returns 0
T1658 001:108.099 JLINK_WriteReg(R15 (PC), 0x200000F4)
T1658 001:108.104 - 0.005ms returns 0
T1658 001:108.109 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:108.114 - 0.004ms returns 0
T1658 001:108.119 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:108.124 - 0.004ms returns 0
T1658 001:108.129 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:108.134 - 0.004ms returns 0
T1658 001:108.139 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:108.144 - 0.004ms returns 0
T1658 001:108.149 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:108.155 - 0.006ms returns 0x0000001F
T1658 001:108.161 JLINK_Go()
T1658 001:108.171 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:109.721 - 1.560ms
T1658 001:109.730 JLINK_IsHalted()
T1658 001:109.998 - 0.268ms returns FALSE
T1658 001:110.006 JLINK_HasError()
T1658 001:112.116 JLINK_IsHalted()
T1658 001:112.385 - 0.268ms returns FALSE
T1658 001:112.397 JLINK_HasError()
T1658 001:113.455 JLINK_IsHalted()
T1658 001:113.683 - 0.227ms returns FALSE
T1658 001:113.694 JLINK_HasError()
T1658 001:114.792 JLINK_IsHalted()
T1658 001:115.064 - 0.271ms returns FALSE
T1658 001:115.075 JLINK_HasError()
T1658 001:116.174 JLINK_IsHalted()
T1658 001:116.480 - 0.305ms returns FALSE
T1658 001:116.492 JLINK_HasError()
T1658 001:118.193 JLINK_IsHalted()
T1658 001:118.465 - 0.271ms returns FALSE
T1658 001:118.476 JLINK_HasError()
T1658 001:120.576 JLINK_IsHalted()
T1658 001:120.832 - 0.256ms returns FALSE
T1658 001:120.843 JLINK_HasError()
T1658 001:121.941 JLINK_IsHalted()
T1658 001:122.214 - 0.272ms returns FALSE
T1658 001:122.225 JLINK_HasError()
T1658 001:123.937 JLINK_IsHalted()
T1658 001:125.074 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:125.353 - 1.416ms returns TRUE
T1658 001:125.365 JLINK_ReadReg(R15 (PC))
T1658 001:125.372 - 0.007ms returns 0x20000000
T1658 001:125.378 JLINK_ClrBPEx(BPHandle = 0x0000001F)
T1658 001:125.383 - 0.005ms returns 0x00
T1658 001:125.388 JLINK_ReadReg(R0)
T1658 001:125.393 - 0.004ms returns 0x00000000
T1658 001:125.399 JLINK_HasError()
T1658 001:125.404 JLINK_WriteReg(R0, 0x00000002)
T1658 001:125.410 - 0.005ms returns 0
T1658 001:125.415 JLINK_WriteReg(R1, 0x000001A8)
T1658 001:125.420 - 0.004ms returns 0
T1658 001:125.425 JLINK_WriteReg(R2, 0x20000164)
T1658 001:125.430 - 0.004ms returns 0
T1658 001:125.435 JLINK_WriteReg(R3, 0x00000000)
T1658 001:125.440 - 0.004ms returns 0
T1658 001:125.445 JLINK_WriteReg(R4, 0x00000000)
T1658 001:125.450 - 0.004ms returns 0
T1658 001:125.455 JLINK_WriteReg(R5, 0x00000000)
T1658 001:125.460 - 0.004ms returns 0
T1658 001:125.468 JLINK_WriteReg(R6, 0x00000000)
T1658 001:125.475 - 0.006ms returns 0
T1658 001:125.480 JLINK_WriteReg(R7, 0x00000000)
T1658 001:125.485 - 0.004ms returns 0
T1658 001:125.490 JLINK_WriteReg(R8, 0x00000000)
T1658 001:125.495 - 0.004ms returns 0
T1658 001:125.516 JLINK_WriteReg(R9, 0x20000160)
T1658 001:125.521 - 0.005ms returns 0
T1658 001:125.527 JLINK_WriteReg(R10, 0x00000000)
T1658 001:125.531 - 0.004ms returns 0
T1658 001:125.537 JLINK_WriteReg(R11, 0x00000000)
T1658 001:125.541 - 0.004ms returns 0
T1658 001:125.547 JLINK_WriteReg(R12, 0x00000000)
T1658 001:125.551 - 0.004ms returns 0
T1658 001:125.557 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:125.561 - 0.005ms returns 0
T1658 001:125.567 JLINK_WriteReg(R14, 0x20000001)
T1658 001:125.571 - 0.004ms returns 0
T1658 001:125.577 JLINK_WriteReg(R15 (PC), 0x2000006A)
T1658 001:125.581 - 0.004ms returns 0
T1658 001:125.587 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:125.591 - 0.004ms returns 0
T1658 001:125.597 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:125.601 - 0.004ms returns 0
T1658 001:125.607 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:125.611 - 0.004ms returns 0
T1658 001:125.616 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:125.621 - 0.004ms returns 0
T1658 001:125.627 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:125.632 - 0.005ms returns 0x00000020
T1658 001:125.637 JLINK_Go()
T1658 001:125.648 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:127.135 - 1.497ms
T1658 001:127.148 JLINK_IsHalted()
T1658 001:128.206 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:128.436 - 1.287ms returns TRUE
T1658 001:128.445 JLINK_ReadReg(R15 (PC))
T1658 001:128.451 - 0.006ms returns 0x20000000
T1658 001:128.456 JLINK_ClrBPEx(BPHandle = 0x00000020)
T1658 001:128.461 - 0.005ms returns 0x00
T1658 001:128.467 JLINK_ReadReg(R0)
T1658 001:128.472 - 0.004ms returns 0x00000000
T1658 001:199.433 JLINK_WriteMem(0x20000000, 0x164 Bytes, ...)
T1658 001:199.447 Data: 00 BE 0A E0 0D 78 2D 06 68 40 08 24 40 00 00 D3 ...
T1658 001:199.464 CPU_WriteMem(356 bytes @ 0x20000000)
T1658 001:200.424 - 0.991ms returns 0x164
T1658 001:200.453 JLINK_HasError()
T1658 001:200.461 JLINK_WriteReg(R0, 0x08000000)
T1658 001:200.468 - 0.007ms returns 0
T1658 001:200.473 JLINK_WriteReg(R1, 0x007A1200)
T1658 001:200.478 - 0.005ms returns 0
T1658 001:200.484 JLINK_WriteReg(R2, 0x00000003)
T1658 001:200.488 - 0.004ms returns 0
T1658 001:200.493 JLINK_WriteReg(R3, 0x00000000)
T1658 001:200.498 - 0.004ms returns 0
T1658 001:200.503 JLINK_WriteReg(R4, 0x00000000)
T1658 001:200.508 - 0.004ms returns 0
T1658 001:200.513 JLINK_WriteReg(R5, 0x00000000)
T1658 001:200.518 - 0.004ms returns 0
T1658 001:200.523 JLINK_WriteReg(R6, 0x00000000)
T1658 001:200.528 - 0.004ms returns 0
T1658 001:200.533 JLINK_WriteReg(R7, 0x00000000)
T1658 001:200.538 - 0.004ms returns 0
T1658 001:200.543 JLINK_WriteReg(R8, 0x00000000)
T1658 001:200.548 - 0.004ms returns 0
T1658 001:200.553 JLINK_WriteReg(R9, 0x20000160)
T1658 001:200.558 - 0.004ms returns 0
T1658 001:200.564 JLINK_WriteReg(R10, 0x00000000)
T1658 001:200.568 - 0.005ms returns 0
T1658 001:200.574 JLINK_WriteReg(R11, 0x00000000)
T1658 001:200.578 - 0.004ms returns 0
T1658 001:200.584 JLINK_WriteReg(R12, 0x00000000)
T1658 001:200.588 - 0.004ms returns 0
T1658 001:200.594 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:200.599 - 0.005ms returns 0
T1658 001:200.604 JLINK_WriteReg(R14, 0x20000001)
T1658 001:200.609 - 0.004ms returns 0
T1658 001:200.614 JLINK_WriteReg(R15 (PC), 0x20000038)
T1658 001:200.619 - 0.005ms returns 0
T1658 001:200.624 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:200.629 - 0.004ms returns 0
T1658 001:200.634 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:200.639 - 0.004ms returns 0
T1658 001:200.644 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:200.649 - 0.004ms returns 0
T1658 001:200.654 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:200.659 - 0.004ms returns 0
T1658 001:200.665 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:200.673 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:200.930 - 0.265ms returns 0x00000021
T1658 001:200.939 JLINK_Go()
T1658 001:200.945 CPU_WriteMem(2 bytes @ 0x20000000)
T1658 001:201.199 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:202.537 - 1.598ms
T1658 001:202.546 JLINK_IsHalted()
T1658 001:203.571 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:203.777 - 1.230ms returns TRUE
T1658 001:203.786 JLINK_ReadReg(R15 (PC))
T1658 001:203.794 - 0.007ms returns 0x20000000
T1658 001:203.799 JLINK_ClrBPEx(BPHandle = 0x00000021)
T1658 001:203.804 - 0.005ms returns 0x00
T1658 001:203.810 JLINK_ReadReg(R0)
T1658 001:203.815 - 0.004ms returns 0x00000000
T1658 001:203.820 JLINK_HasError()
T1658 001:203.826 JLINK_WriteReg(R0, 0xFFFFFFFF)
T1658 001:203.831 - 0.005ms returns 0
T1658 001:203.837 JLINK_WriteReg(R1, 0x08000000)
T1658 001:203.841 - 0.004ms returns 0
T1658 001:203.846 JLINK_WriteReg(R2, 0x000035A8)
T1658 001:203.851 - 0.004ms returns 0
T1658 001:203.856 JLINK_WriteReg(R3, 0x04C11DB7)
T1658 001:203.861 - 0.004ms returns 0
T1658 001:203.866 JLINK_WriteReg(R4, 0x00000000)
T1658 001:203.871 - 0.004ms returns 0
T1658 001:203.876 JLINK_WriteReg(R5, 0x00000000)
T1658 001:203.881 - 0.004ms returns 0
T1658 001:203.886 JLINK_WriteReg(R6, 0x00000000)
T1658 001:203.891 - 0.004ms returns 0
T1658 001:203.896 JLINK_WriteReg(R7, 0x00000000)
T1658 001:203.901 - 0.004ms returns 0
T1658 001:203.906 JLINK_WriteReg(R8, 0x00000000)
T1658 001:203.911 - 0.004ms returns 0
T1658 001:203.916 JLINK_WriteReg(R9, 0x20000160)
T1658 001:203.921 - 0.004ms returns 0
T1658 001:203.926 JLINK_WriteReg(R10, 0x00000000)
T1658 001:203.931 - 0.004ms returns 0
T1658 001:203.936 JLINK_WriteReg(R11, 0x00000000)
T1658 001:203.941 - 0.004ms returns 0
T1658 001:203.946 JLINK_WriteReg(R12, 0x00000000)
T1658 001:203.950 - 0.004ms returns 0
T1658 001:203.956 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:203.961 - 0.005ms returns 0
T1658 001:203.966 JLINK_WriteReg(R14, 0x20000001)
T1658 001:203.971 - 0.004ms returns 0
T1658 001:203.976 JLINK_WriteReg(R15 (PC), 0x20000002)
T1658 001:203.981 - 0.004ms returns 0
T1658 001:203.986 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:203.991 - 0.004ms returns 0
T1658 001:203.996 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:204.001 - 0.004ms returns 0
T1658 001:204.006 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:204.010 - 0.004ms returns 0
T1658 001:204.016 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:204.020 - 0.004ms returns 0
T1658 001:204.026 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:204.031 - 0.005ms returns 0x00000022
T1658 001:204.036 JLINK_Go()
T1658 001:204.046 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:205.215 - 1.178ms
T1658 001:205.223 JLINK_IsHalted()
T1658 001:205.362 - 0.138ms returns FALSE
T1658 001:205.370 JLINK_HasError()
T1658 001:209.231 JLINK_IsHalted()
T1658 001:209.428 - 0.197ms returns FALSE
T1658 001:209.440 JLINK_HasError()
T1658 001:211.314 JLINK_IsHalted()
T1658 001:211.519 - 0.205ms returns FALSE
T1658 001:211.531 JLINK_HasError()
T1658 001:213.286 JLINK_IsHalted()
T1658 001:213.520 - 0.234ms returns FALSE
T1658 001:213.531 JLINK_HasError()
T1658 001:214.638 JLINK_IsHalted()
T1658 001:214.816 - 0.177ms returns FALSE
T1658 001:214.828 JLINK_HasError()
T1658 001:216.931 JLINK_IsHalted()
T1658 001:217.367 - 0.434ms returns FALSE
T1658 001:217.423 JLINK_HasError()
T1658 001:218.911 JLINK_IsHalted()
T1658 001:219.418 - 0.505ms returns FALSE
T1658 001:219.473 JLINK_HasError()
T1658 001:220.953 JLINK_IsHalted()
T1658 001:221.435 - 0.479ms returns FALSE
T1658 001:221.490 JLINK_HasError()
T1658 001:222.947 JLINK_IsHalted()
T1658 001:223.318 - 0.369ms returns FALSE
T1658 001:223.375 JLINK_HasError()
T1658 001:224.955 JLINK_IsHalted()
T1658 001:225.397 - 0.440ms returns FALSE
T1658 001:225.452 JLINK_HasError()
T1658 001:226.954 JLINK_IsHalted()
T1658 001:227.389 - 0.433ms returns FALSE
T1658 001:227.445 JLINK_HasError()
T1658 001:228.940 JLINK_IsHalted()
T1658 001:229.401 - 0.459ms returns FALSE
T1658 001:229.457 JLINK_HasError()
T1658 001:230.919 JLINK_IsHalted()
T1658 001:231.392 - 0.471ms returns FALSE
T1658 001:231.448 JLINK_HasError()
T1658 001:232.888 JLINK_IsHalted()
T1658 001:233.135 - 0.246ms returns FALSE
T1658 001:233.147 JLINK_HasError()
T1658 001:234.934 JLINK_IsHalted()
T1658 001:235.187 - 0.252ms returns FALSE
T1658 001:235.198 JLINK_HasError()
T1658 001:237.326 JLINK_IsHalted()
T1658 001:237.580 - 0.253ms returns FALSE
T1658 001:237.592 JLINK_HasError()
T1658 001:241.256 JLINK_IsHalted()
T1658 001:241.603 - 0.346ms returns FALSE
T1658 001:241.615 JLINK_HasError()
T1658 001:243.249 JLINK_IsHalted()
T1658 001:243.605 - 0.356ms returns FALSE
T1658 001:243.617 JLINK_HasError()
T1658 001:244.684 JLINK_IsHalted()
T1658 001:244.934 - 0.249ms returns FALSE
T1658 001:244.945 JLINK_HasError()
T1658 001:246.042 JLINK_IsHalted()
T1658 001:246.299 - 0.257ms returns FALSE
T1658 001:246.311 JLINK_HasError()
T1658 001:248.049 JLINK_IsHalted()
T1658 001:248.389 - 0.339ms returns FALSE
T1658 001:248.400 JLINK_HasError()
T1658 001:250.012 JLINK_IsHalted()
T1658 001:250.286 - 0.273ms returns FALSE
T1658 001:250.297 JLINK_HasError()
T1658 001:252.369 JLINK_IsHalted()
T1658 001:252.663 - 0.293ms returns FALSE
T1658 001:252.674 JLINK_HasError()
T1658 001:254.253 JLINK_IsHalted()
T1658 001:254.517 - 0.264ms returns FALSE
T1658 001:254.528 JLINK_HasError()
T1658 001:256.540 JLINK_IsHalted()
T1658 001:256.759 - 0.219ms returns FALSE
T1658 001:256.771 JLINK_HasError()
T1658 001:258.599 JLINK_IsHalted()
T1658 001:258.863 - 0.264ms returns FALSE
T1658 001:258.874 JLINK_HasError()
T1658 001:260.597 JLINK_IsHalted()
T1658 001:260.853 - 0.255ms returns FALSE
T1658 001:260.865 JLINK_HasError()
T1658 001:262.972 JLINK_IsHalted()
T1658 001:263.257 - 0.284ms returns FALSE
T1658 001:263.268 JLINK_HasError()
T1658 001:264.368 JLINK_IsHalted()
T1658 001:264.669 - 0.300ms returns FALSE
T1658 001:264.680 JLINK_HasError()
T1658 001:265.776 JLINK_IsHalted()
T1658 001:266.034 - 0.257ms returns FALSE
T1658 001:266.045 JLINK_HasError()
T1658 001:267.893 JLINK_IsHalted()
T1658 001:268.174 - 0.280ms returns FALSE
T1658 001:268.186 JLINK_HasError()
T1658 001:269.798 JLINK_IsHalted()
T1658 001:270.081 - 0.282ms returns FALSE
T1658 001:270.094 JLINK_HasError()
T1658 001:272.858 JLINK_IsHalted()
T1658 001:273.141 - 0.281ms returns FALSE
T1658 001:273.154 JLINK_HasError()
T1658 001:274.850 JLINK_IsHalted()
T1658 001:275.108 - 0.258ms returns FALSE
T1658 001:275.122 JLINK_HasError()
T1658 001:276.173 JLINK_IsHalted()
T1658 001:276.447 - 0.273ms returns FALSE
T1658 001:276.462 JLINK_HasError()
T1658 001:278.208 JLINK_IsHalted()
T1658 001:278.478 - 0.269ms returns FALSE
T1658 001:278.493 JLINK_HasError()
T1658 001:279.567 JLINK_IsHalted()
T1658 001:279.831 - 0.264ms returns FALSE
T1658 001:279.846 JLINK_HasError()
T1658 001:280.919 JLINK_IsHalted()
T1658 001:281.204 - 0.284ms returns FALSE
T1658 001:281.219 JLINK_HasError()
T1658 001:282.911 JLINK_IsHalted()
T1658 001:283.179 - 0.267ms returns FALSE
T1658 001:283.195 JLINK_HasError()
T1658 001:284.946 JLINK_IsHalted()
T1658 001:285.240 - 0.293ms returns FALSE
T1658 001:285.257 JLINK_HasError()
T1658 001:287.348 JLINK_IsHalted()
T1658 001:287.716 - 0.367ms returns FALSE
T1658 001:287.735 JLINK_HasError()
T1658 001:289.278 JLINK_IsHalted()
T1658 001:289.574 - 0.295ms returns FALSE
T1658 001:289.593 JLINK_HasError()
T1658 001:291.652 JLINK_IsHalted()
T1658 001:291.972 - 0.319ms returns FALSE
T1658 001:291.993 JLINK_HasError()
T1658 001:293.645 JLINK_IsHalted()
T1658 001:294.015 - 0.369ms returns FALSE
T1658 001:294.036 JLINK_HasError()
T1658 001:295.974 JLINK_IsHalted()
T1658 001:296.263 - 0.287ms returns FALSE
T1658 001:296.280 JLINK_HasError()
T1658 001:298.019 JLINK_IsHalted()
T1658 001:298.348 - 0.328ms returns FALSE
T1658 001:298.373 JLINK_HasError()
T1658 001:300.503 JLINK_IsHalted()
T1658 001:300.879 - 0.374ms returns FALSE
T1658 001:300.904 JLINK_HasError()
T1658 001:302.409 JLINK_IsHalted()
T1658 001:302.712 - 0.302ms returns FALSE
T1658 001:302.747 JLINK_HasError()
T1658 001:304.626 JLINK_IsHalted()
T1658 001:304.959 - 0.332ms returns FALSE
T1658 001:304.980 JLINK_HasError()
T1658 001:306.636 JLINK_IsHalted()
T1658 001:306.979 - 0.341ms returns FALSE
T1658 001:307.017 JLINK_HasError()
T1658 001:308.615 JLINK_IsHalted()
T1658 001:309.069 - 0.454ms returns FALSE
T1658 001:309.098 JLINK_HasError()
T1658 001:311.090 JLINK_IsHalted()
T1658 001:311.406 - 0.315ms returns FALSE
T1658 001:311.471 JLINK_HasError()
T1658 001:313.086 JLINK_IsHalted()
T1658 001:313.526 - 0.439ms returns FALSE
T1658 001:313.561 JLINK_HasError()
T1658 001:315.564 JLINK_IsHalted()
T1658 001:315.927 - 0.361ms returns FALSE
T1658 001:315.974 JLINK_HasError()
T1658 001:317.546 JLINK_IsHalted()
T1658 001:318.009 - 0.462ms returns FALSE
T1658 001:318.047 JLINK_HasError()
T1658 001:319.568 JLINK_IsHalted()
T1658 001:320.080 - 0.509ms returns FALSE
T1658 001:320.139 JLINK_HasError()
T1658 001:321.532 JLINK_IsHalted()
T1658 001:321.956 - 0.423ms returns FALSE
T1658 001:321.994 JLINK_HasError()
T1658 001:323.518 JLINK_IsHalted()
T1658 001:323.930 - 0.411ms returns FALSE
T1658 001:323.967 JLINK_HasError()
T1658 001:325.944 JLINK_IsHalted()
T1658 001:326.377 - 0.432ms returns FALSE
T1658 001:326.420 JLINK_HasError()
T1658 001:327.947 JLINK_IsHalted()
T1658 001:328.410 - 0.462ms returns FALSE
T1658 001:328.450 JLINK_HasError()
T1658 001:330.420 JLINK_IsHalted()
T1658 001:330.848 - 0.426ms returns FALSE
T1658 001:330.885 JLINK_HasError()
T1658 001:332.419 JLINK_IsHalted()
T1658 001:332.849 - 0.429ms returns FALSE
T1658 001:332.888 JLINK_HasError()
T1658 001:334.859 JLINK_IsHalted()
T1658 001:335.297 - 0.437ms returns FALSE
T1658 001:335.335 JLINK_HasError()
T1658 001:337.334 JLINK_IsHalted()
T1658 001:337.679 - 0.343ms returns FALSE
T1658 001:337.718 JLINK_HasError()
T1658 001:339.303 JLINK_IsHalted()
T1658 001:339.748 - 0.444ms returns FALSE
T1658 001:339.787 JLINK_HasError()
T1658 001:341.766 JLINK_IsHalted()
T1658 001:342.219 - 0.452ms returns FALSE
T1658 001:342.257 JLINK_HasError()
T1658 001:344.233 JLINK_IsHalted()
T1658 001:344.643 - 0.409ms returns FALSE
T1658 001:344.680 JLINK_HasError()
T1658 001:346.621 JLINK_IsHalted()
T1658 001:347.013 - 0.390ms returns FALSE
T1658 001:347.065 JLINK_HasError()
T1658 001:348.622 JLINK_IsHalted()
T1658 001:349.072 - 0.449ms returns FALSE
T1658 001:349.110 JLINK_HasError()
T1658 001:351.197 JLINK_IsHalted()
T1658 001:351.573 - 0.375ms returns FALSE
T1658 001:351.613 JLINK_HasError()
T1658 001:353.071 JLINK_IsHalted()
T1658 001:353.464 - 0.392ms returns FALSE
T1658 001:353.515 JLINK_HasError()
T1658 001:355.076 JLINK_IsHalted()
T1658 001:355.525 - 0.447ms returns FALSE
T1658 001:355.562 JLINK_HasError()
T1658 001:357.539 JLINK_IsHalted()
T1658 001:359.019 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:359.471 - 1.930ms returns TRUE
T1658 001:359.520 JLINK_ReadReg(R15 (PC))
T1658 001:359.551 - 0.029ms returns 0x20000000
T1658 001:359.579 JLINK_ClrBPEx(BPHandle = 0x00000022)
T1658 001:359.604 - 0.025ms returns 0x00
T1658 001:359.630 JLINK_ReadReg(R0)
T1658 001:359.655 - 0.023ms returns 0x613CA457
T1658 001:363.592 JLINK_HasError()
T1658 001:363.644 JLINK_WriteReg(R0, 0x00000003)
T1658 001:363.674 - 0.030ms returns 0
T1658 001:363.700 JLINK_WriteReg(R1, 0x08000000)
T1658 001:363.725 - 0.024ms returns 0
T1658 001:363.750 JLINK_WriteReg(R2, 0x000035A8)
T1658 001:363.773 - 0.022ms returns 0
T1658 001:363.799 JLINK_WriteReg(R3, 0x04C11DB7)
T1658 001:363.822 - 0.023ms returns 0
T1658 001:363.847 JLINK_WriteReg(R4, 0x00000000)
T1658 001:363.870 - 0.023ms returns 0
T1658 001:363.896 JLINK_WriteReg(R5, 0x00000000)
T1658 001:363.919 - 0.023ms returns 0
T1658 001:363.944 JLINK_WriteReg(R6, 0x00000000)
T1658 001:363.967 - 0.022ms returns 0
T1658 001:363.993 JLINK_WriteReg(R7, 0x00000000)
T1658 001:364.016 - 0.022ms returns 0
T1658 001:364.041 JLINK_WriteReg(R8, 0x00000000)
T1658 001:364.064 - 0.023ms returns 0
T1658 001:364.090 JLINK_WriteReg(R9, 0x20000160)
T1658 001:364.123 - 0.033ms returns 0
T1658 001:364.157 JLINK_WriteReg(R10, 0x00000000)
T1658 001:364.180 - 0.023ms returns 0
T1658 001:364.207 JLINK_WriteReg(R11, 0x00000000)
T1658 001:364.230 - 0.023ms returns 0
T1658 001:364.255 JLINK_WriteReg(R12, 0x00000000)
T1658 001:364.278 - 0.023ms returns 0
T1658 001:364.304 JLINK_WriteReg(R13 (SP), 0x20001000)
T1658 001:364.329 - 0.025ms returns 0
T1658 001:364.355 JLINK_WriteReg(R14, 0x20000001)
T1658 001:364.377 - 0.022ms returns 0
T1658 001:364.404 JLINK_WriteReg(R15 (PC), 0x2000006A)
T1658 001:364.427 - 0.023ms returns 0
T1658 001:364.453 JLINK_WriteReg(XPSR, 0x01000000)
T1658 001:364.476 - 0.023ms returns 0
T1658 001:364.508 JLINK_WriteReg(MSP, 0x20001000)
T1658 001:364.532 - 0.023ms returns 0
T1658 001:364.557 JLINK_WriteReg(PSP, 0x20001000)
T1658 001:364.580 - 0.023ms returns 0
T1658 001:364.606 JLINK_WriteReg(CFBP, 0x00000000)
T1658 001:364.629 - 0.023ms returns 0
T1658 001:364.658 JLINK_SetBPEx(Addr = 0x20000000, Type = 0xFFFFFFF2)
T1658 001:364.685 - 0.028ms returns 0x00000023
T1658 001:364.710 JLINK_Go()
T1658 001:364.761 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:366.714 - 2.001ms
T1658 001:366.769 JLINK_IsHalted()
T1658 001:368.183 CPU_ReadMem(2 bytes @ 0x20000000)
T1658 001:368.680 - 1.908ms returns TRUE
T1658 001:368.735 JLINK_ReadReg(R15 (PC))
T1658 001:368.768 - 0.031ms returns 0x20000000
T1658 001:368.795 JLINK_ClrBPEx(BPHandle = 0x00000023)
T1658 001:368.821 - 0.025ms returns 0x00
T1658 001:368.847 JLINK_ReadReg(R0)
T1658 001:368.871 - 0.023ms returns 0x00000000
T1658 001:422.846 JLINK_WriteMemEx(0x20000000, 0x00000002 Bytes, Flags = 0x02000000)
T1658 001:422.870 Data: FE E7
T1658 001:422.892 CPU_WriteMem(2 bytes @ 0x20000000)
T1658 001:423.191 - 0.345ms returns 0x2
T1658 001:423.206 JLINK_HasError()
T1658 001:423.214 JLINK_HasError()
T1658 001:423.222 JLINK_SetResetType(JLINKARM_CM3_RESET_TYPE_NORMAL)
T1658 001:423.229 - 0.006ms returns JLINKARM_CM3_RESET_TYPE_NORMAL
T1658 001:423.236 JLINK_Reset()
T1658 001:425.147 Memory map 'before startup completion point' is active
T1658 001:425.167 JLINK_GetResetTypeDesc
T1658 001:425.173 - 0.006ms
T1658 001:427.110 Reset type: NORMAL (https://wiki.segger.com/J-Link_Reset_Strategies)
T1658 001:427.129 CPU_WriteMem(4 bytes @ 0xE000EDF0)
T1658 001:427.434 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 001:429.632 Reset: Halt core after reset via DEMCR.VC_CORERESET.
T1658 001:431.552 Reset: Reset device via AIRCR.SYSRESETREQ.
T1658 001:431.571 CPU_WriteMem(4 bytes @ 0xE000ED0C)
T1658 001:483.083 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 001:483.493 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 001:483.964 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 001:490.265 CPU_ReadMem(4 bytes @ 0xE000EDF0)
T1658 001:492.200 CPU_WriteMem(4 bytes @ 0xE000EDFC)
T1658 001:492.758 CPU_WriteMem(4 bytes @ 0xE0001028)
T1658 001:493.175 CPU_WriteMem(4 bytes @ 0xE0001038)
T1658 001:493.589 CPU_WriteMem(4 bytes @ 0xE0001048)
T1658 001:493.982 CPU_WriteMem(4 bytes @ 0xE0001058)
T1658 001:494.374 CPU_WriteMem(4 bytes @ 0xE0002000)
T1658 001:494.745 CPU_ReadMem(4 bytes @ 0xE000EDFC)
T1658 001:495.096 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:495.486 - 72.249ms
T1658 001:495.499 JLINK_Go()
T1658 001:495.511 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:495.688 CPU_WriteMem(4 bytes @ 0xE0002008)
T1658 001:495.697 CPU_WriteMem(4 bytes @ 0xE000200C)
T1658 001:495.704 CPU_WriteMem(4 bytes @ 0xE0002010)
T1658 001:495.711 CPU_WriteMem(4 bytes @ 0xE0002014)
T1658 001:495.717 CPU_WriteMem(4 bytes @ 0xE0002018)
T1658 001:495.727 CPU_WriteMem(4 bytes @ 0xE000201C)
T1658 001:496.378 CPU_WriteMem(4 bytes @ 0xE0001004)
T1658 001:498.499 Memory map 'after startup completion point' is active
T1658 001:498.512 - 3.013ms
T1658 001:502.510 JLINK_Close()
T1658 001:502.827 CPU is running
T1658 001:502.841 CPU_WriteMem(4 bytes @ 0xE0002008)
T1658 001:503.097 CPU is running
T1658 001:503.110 CPU_WriteMem(4 bytes @ 0xE000200C)
T1658 001:503.327 CPU is running
T1658 001:503.341 CPU_WriteMem(4 bytes @ 0xE0002010)
T1658 001:503.632 CPU is running
T1658 001:503.645 CPU_WriteMem(4 bytes @ 0xE0002014)
T1658 001:503.920 CPU is running
T1658 001:503.933 CPU_WriteMem(4 bytes @ 0xE0002018)
T1658 001:504.217 CPU is running
T1658 001:504.226 CPU_WriteMem(4 bytes @ 0xE000201C)
T1658 001:507.031 OnDisconnectTarget() start
T1658 001:507.044 J-Link Script File: Executing OnDisconnectTarget()
T1658 001:507.055 CPU_WriteMem(4 bytes @ 0xE0042004)
T1658 001:508.798 OnDisconnectTarget() end - Took 197us
T1658 001:508.814 CPU_ReadMem(4 bytes @ 0xE0001000)
T1658 001:514.759 - 12.247ms
T1658 001:514.769
T1658 001:514.773 Closed

View File

@@ -1,47 +0,0 @@
[BREAKPOINTS]
ForceImpTypeAny = 0
ShowInfoWin = 1
EnableFlashBP = 2
BPDuringExecution = 0
[CFI]
CFISize = 0x00
CFIAddr = 0x00
[CPU]
MonModeVTableAddr = 0xFFFFFFFF
MonModeDebug = 0
MaxNumAPs = 0
LowPowerHandlingMode = 0
OverrideMemMap = 0
AllowSimulation = 1
ScriptFile=""
[FLASH]
RMWThreshold = 0x400
Loaders=""
EraseType = 0x00
CacheExcludeSize = 0x00
CacheExcludeAddr = 0x00
MinNumBytesFlashDL = 0
SkipProgOnCRCMatch = 1
VerifyDownload = 1
AllowCaching = 1
EnableFlashDL = 2
Override = 0
Device="ARM7"
[GENERAL]
MaxNumTransfers = 0x00
WorkRAMSize = 0x00
WorkRAMAddr = 0x00
RAMUsageLimit = 0x00
[SWO]
SWOLogFile=""
[MEM]
RdOverrideOrMask = 0x00
RdOverrideAndMask = 0xFFFFFFFF
RdOverrideAddr = 0xFFFFFFFF
WrOverrideOrMask = 0x00
WrOverrideAndMask = 0xFFFFFFFF
WrOverrideAddr = 0xFFFFFFFF
[RAM]
VerifyDownload = 0x00
[DYN_MEM_MAP]
NumUserRegion = 0x00

View File

@@ -0,0 +1,21 @@
/*
* Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'uksvep_2_2_v1'
* Target: 'bootloader'
*/
#ifndef RTE_COMPONENTS_H
#define RTE_COMPONENTS_H
/*
* Define the Device Header File:
*/
#define CMSIS_device_header "stm32f10x.h"
#endif /* RTE_COMPONENTS_H */

View File

@@ -0,0 +1,16 @@
; *************************************************************
; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************
LR_IROM1 0x08000000 0x0000C000 { ; load region size_region
ER_IROM1 0x08000000 0x0000C000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
.ANY (+XO)
}
RW_IRAM1 0x20000000 0x0000C000 { ; RW data
.ANY (+RW +ZI)
}
}

View File

@@ -2,8 +2,8 @@
; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************
LR_IROM1 0x08000000 0x00040000 { ; load region size_region
ER_IROM1 0x08000000 0x00040000 { ; load address = execution address
LR_IROM1 0x0800C000 0x00040000 { ; load region size_region
ER_IROM1 0x0800C000 0x00040000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)

File diff suppressed because one or more lines are too long

View File

@@ -12,7 +12,7 @@
<lExt>*.lib</lExt>
<tExt>*.txt; *.h; *.inc; *.md</tExt>
<pExt>*.plm</pExt>
<CppX>*.cpp</CppX>
<CppX>*.cpp; *.cc; *.cxx</CppX>
<nMigrate>0</nMigrate>
</Extensions>
@@ -25,6 +25,161 @@
<TargetName>uksvep_2_2_v1</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<TargetOption>
<CLKADS>8000000</CLKADS>
<OPTTT>
<gFlags>0</gFlags>
<BeepAtEnd>1</BeepAtEnd>
<RunSim>0</RunSim>
<RunTarget>1</RunTarget>
<RunAbUc>0</RunAbUc>
</OPTTT>
<OPTHX>
<HexSelection>1</HexSelection>
<FlashByte>65535</FlashByte>
<HexRangeLowAddress>0</HexRangeLowAddress>
<HexRangeHighAddress>0</HexRangeHighAddress>
<HexOffset>0</HexOffset>
</OPTHX>
<OPTLEX>
<PageWidth>79</PageWidth>
<PageLength>66</PageLength>
<TabStop>8</TabStop>
<ListingPath></ListingPath>
</OPTLEX>
<ListingPage>
<CreateCListing>1</CreateCListing>
<CreateAListing>1</CreateAListing>
<CreateLListing>1</CreateLListing>
<CreateIListing>0</CreateIListing>
<AsmCond>1</AsmCond>
<AsmSymb>1</AsmSymb>
<AsmXref>0</AsmXref>
<CCond>1</CCond>
<CCode>0</CCode>
<CListInc>0</CListInc>
<CSymb>0</CSymb>
<LinkerCodeListing>0</LinkerCodeListing>
</ListingPage>
<OPTXL>
<LMap>1</LMap>
<LComments>1</LComments>
<LGenerateSymbols>1</LGenerateSymbols>
<LLibSym>1</LLibSym>
<LLines>1</LLines>
<LLocSym>1</LLocSym>
<LPubSym>1</LPubSym>
<LXref>0</LXref>
<LExpSel>0</LExpSel>
</OPTXL>
<OPTFL>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>0</IsCurrentTarget>
</OPTFL>
<CpuCode>18</CpuCode>
<DebugOpt>
<uSim>0</uSim>
<uTrg>1</uTrg>
<sLdApp>1</sLdApp>
<sGomain>1</sGomain>
<sRbreak>1</sRbreak>
<sRwatch>1</sRwatch>
<sRmem>1</sRmem>
<sRfunc>1</sRfunc>
<sRbox>1</sRbox>
<tLdApp>1</tLdApp>
<tGomain>1</tGomain>
<tRbreak>1</tRbreak>
<tRwatch>1</tRwatch>
<tRmem>1</tRmem>
<tRfunc>0</tRfunc>
<tRbox>1</tRbox>
<tRtrace>1</tRtrace>
<sRSysVw>1</sRSysVw>
<tRSysVw>1</tRSysVw>
<sRunDeb>0</sRunDeb>
<sLrtime>0</sLrtime>
<bEvRecOn>1</bEvRecOn>
<bSchkAxf>0</bSchkAxf>
<bTchkAxf>0</bTchkAxf>
<nTsel>0</nTsel>
<sDll></sDll>
<sDllPa></sDllPa>
<sDlgDll></sDlgDll>
<sDlgPa></sDlgPa>
<sIfile></sIfile>
<tDll></tDll>
<tDllPa></tDllPa>
<tDlgDll></tDlgDll>
<tDlgPa></tDlgPa>
<tIfile></tIfile>
<pMon>BIN\UL2CM3.DLL</pMon>
</DebugOpt>
<TargetDriverDllRegistry>
<SetRegEntry>
<Number>0</Number>
<Key>UL2CM3</Key>
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM))</Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
<DebugFlag>
<trace>0</trace>
<periodic>0</periodic>
<aLwin>0</aLwin>
<aCover>0</aCover>
<aSer1>0</aSer1>
<aSer2>0</aSer2>
<aPa>0</aPa>
<viewmode>0</viewmode>
<vrSel>0</vrSel>
<aSym>0</aSym>
<aTbox>0</aTbox>
<AscS1>0</AscS1>
<AscS2>0</AscS2>
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
<StkLoc>0</StkLoc>
<TrcWin>0</TrcWin>
<newCpu>0</newCpu>
<uProt>0</uProt>
</DebugFlag>
<LintExecutable></LintExecutable>
<LintConfigFile></LintConfigFile>
<bLintAuto>0</bLintAuto>
<bAutoGenD>0</bAutoGenD>
<LntExFlags>0</LntExFlags>
<pMisraName></pMisraName>
<pszMrule></pszMrule>
<pSingCmds></pSingCmds>
<pMultCmds></pMultCmds>
<pMisraNamep></pMisraNamep>
<pszMrulep></pszMrulep>
<pSingCmdsp></pSingCmdsp>
<pMultCmdsp></pMultCmdsp>
<DebugDescription>
<Enable>1</Enable>
<EnableFlashSeq>1</EnableFlashSeq>
<EnableLog>0</EnableLog>
<Protocol>2</Protocol>
<DbgClock>10000000</DbgClock>
</DebugDescription>
</TargetOption>
</Target>
<Target>
<TargetName>bootloader</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<TargetOption>
<CLKADS>8000000</CLKADS>
<OPTTT>
@@ -93,7 +248,7 @@
<tRbreak>1</tRbreak>
<tRwatch>1</tRwatch>
<tRmem>1</tRmem>
<tRfunc>1</tRfunc>
<tRfunc>0</tRfunc>
<tRbox>1</tRbox>
<tRtrace>1</tRtrace>
<sRSysVw>1</sRSysVw>
@@ -140,20 +295,55 @@
<SetRegEntry>
<Number>0</Number>
<Key>JL2CM3</Key>
<Name>-U60145543 -O14 -S10 -ZTIFSpeedSel25000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight JTAG-DP") -D00(3BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06414041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512.FLM -FS08000000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
<Name>-U60145543 -O14 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight JTAG-DP") -D00(3BA00477) -L00(4) -N01("Unknown JTAG device") -D01(06414041) -L01(5) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512.FLM -FS08000000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>UL2CM3</Key>
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM))</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
<Key>ST-LINKIII-KEIL_SWO</Key>
<Name>-U-O142 -O2190 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL040000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<Breakpoint>
<Bp>
<Number>0</Number>
<Type>0</Type>
<LineNumber>368</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134230816</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>1</BreakIfRCount>
<Filename>..\Core\Bootloader\Src\bootloader.c</Filename>
<ExecCommand></ExecCommand>
<Expression>\\bootloader\../Core/Bootloader/Src/bootloader.c\368</Expression>
</Bp>
</Breakpoint>
<WatchWindow1>
<Ww>
<count>0</count>
<WinNumber>1</WinNumber>
<ItemText>boot</ItemText>
</Ww>
</WatchWindow1>
<MemoryWindow1>
<Mm>
<WinNumber>1</WinNumber>
<SubType>0</SubType>
<ItemText>0x0800c000</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow1>
<MemoryWindow2>
<Mm>
<WinNumber>2</WinNumber>
<SubType>0</SubType>
<ItemText>0x08009800</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow2>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
@@ -178,7 +368,7 @@
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
<StkLoc>1</StkLoc>
<StkLoc>0</StkLoc>
<TrcWin>0</TrcWin>
<newCpu>0</newCpu>
<uProt>0</uProt>
@@ -198,7 +388,7 @@
<pMultCmdsp></pMultCmdsp>
<DebugDescription>
<Enable>1</Enable>
<EnableFlashSeq>0</EnableFlashSeq>
<EnableFlashSeq>1</EnableFlashSeq>
<EnableLog>0</EnableLog>
<Protocol>2</Protocol>
<DbgClock>10000000</DbgClock>
@@ -228,7 +418,7 @@
<Group>
<GroupName>Application/User/Core</GroupName>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
@@ -236,7 +426,43 @@
<GroupNumber>2</GroupNumber>
<FileNumber>2</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Src\crc16.c</PathWithFileName>
<FilenameWithoutPath>crc16.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>3</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Src\eeprom.c</PathWithFileName>
<FilenameWithoutPath>eeprom.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>4</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Src\lampa.c</PathWithFileName>
<FilenameWithoutPath>lampa.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>../Core/Src/main.c</PathWithFileName>
@@ -246,7 +472,19 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>3</FileNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Src\message.c</PathWithFileName>
<FilenameWithoutPath>message.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>7</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -258,7 +496,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>4</FileNumber>
<FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -270,7 +508,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>5</FileNumber>
<FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -282,7 +520,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>6</FileNumber>
<FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -294,7 +532,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>7</FileNumber>
<FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -306,7 +544,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>8</FileNumber>
<FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -318,7 +556,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>9</FileNumber>
<FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -330,7 +568,7 @@
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>10</FileNumber>
<FileNumber>14</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -350,7 +588,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>11</FileNumber>
<FileNumber>15</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -362,7 +600,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>12</FileNumber>
<FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -374,7 +612,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>13</FileNumber>
<FileNumber>17</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -386,7 +624,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>14</FileNumber>
<FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -398,7 +636,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>15</FileNumber>
<FileNumber>19</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -410,7 +648,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>16</FileNumber>
<FileNumber>20</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -422,7 +660,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>17</FileNumber>
<FileNumber>21</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -434,7 +672,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>18</FileNumber>
<FileNumber>22</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -446,7 +684,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>19</FileNumber>
<FileNumber>23</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -458,7 +696,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>20</FileNumber>
<FileNumber>24</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -470,7 +708,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>21</FileNumber>
<FileNumber>25</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -482,7 +720,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>22</FileNumber>
<FileNumber>26</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -494,7 +732,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>23</FileNumber>
<FileNumber>27</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -506,7 +744,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>24</FileNumber>
<FileNumber>28</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -518,7 +756,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>25</FileNumber>
<FileNumber>29</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -530,7 +768,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>26</FileNumber>
<FileNumber>30</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -550,7 +788,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>27</FileNumber>
<FileNumber>31</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -562,6 +800,110 @@
</File>
</Group>
<Group>
<GroupName>Bootloader</GroupName>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>32</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Inc\boot_project_setup.h</PathWithFileName>
<FilenameWithoutPath>boot_project_setup.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>33</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_main.c</PathWithFileName>
<FilenameWithoutPath>boot_main.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>34</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\bootloader.c</PathWithFileName>
<FilenameWithoutPath>bootloader.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>35</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_uart.c</PathWithFileName>
<FilenameWithoutPath>boot_uart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>36</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_can.c</PathWithFileName>
<FilenameWithoutPath>boot_can.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>37</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_flash.c</PathWithFileName>
<FilenameWithoutPath>boot_flash.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>38</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_gpio.c</PathWithFileName>
<FilenameWithoutPath>boot_gpio.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>39</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Core\Bootloader\Src\boot_jump.c</PathWithFileName>
<FilenameWithoutPath>boot_jump.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
<tvExp>0</tvExp>

View File

@@ -81,9 +81,9 @@
<nStopB2X>0</nStopB2X>
</BeforeMake>
<AfterMake>
<RunUserProg1>0</RunUserProg1>
<RunUserProg2>1</RunUserProg2>
<UserProg1Name></UserProg1Name>
<RunUserProg1>1</RunUserProg1>
<RunUserProg2>0</RunUserProg2>
<UserProg1Name>fromelf.exe --bin --output .\Listings\@L.bin !L</UserProg1Name>
<UserProg2Name></UserProg2Name>
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
@@ -138,7 +138,7 @@
<DriverSelection>4101</DriverSelection>
</Flash1>
<bUseTDR>1</bUseTDR>
<Flash2>BIN\UL2V8M.DLL</Flash2>
<Flash2>BIN\UL2CM3.DLL</Flash2>
<Flash3></Flash3>
<Flash4></Flash4>
<pFcarmOut></pFcarmOut>
@@ -277,7 +277,7 @@
</OCR_RVCT3>
<OCR_RVCT4>
<Type>1</Type>
<StartAddress>0x8000000</StartAddress>
<StartAddress>0x800c000</StartAddress>
<Size>0x40000</Size>
</OCR_RVCT4>
<OCR_RVCT5>
@@ -330,7 +330,7 @@
<uC99>1</uC99>
<uGnu>0</uGnu>
<useXO>0</useXO>
<v6Lang>5</v6Lang>
<v6Lang>3</v6Lang>
<v6LangP>5</v6LangP>
<vShortEn>1</vShortEn>
<vShortWch>1</vShortWch>
@@ -341,7 +341,7 @@
<MiscControls></MiscControls>
<Define>USE_HAL_DRIVER,STM32F103xE</Define>
<Undefine></Undefine>
<IncludePath>../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include</IncludePath>
<IncludePath>../Core/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include;..\Core\Bootloader\Inc</IncludePath>
</VariousControls>
</Cads>
<Aads>
@@ -395,11 +395,31 @@
<Group>
<GroupName>Application/User/Core</GroupName>
<Files>
<File>
<FileName>crc16.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\crc16.c</FilePath>
</File>
<File>
<FileName>eeprom.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\eeprom.c</FilePath>
</File>
<File>
<FileName>lampa.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\lampa.c</FilePath>
</File>
<File>
<FileName>main.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/main.c</FilePath>
</File>
<File>
<FileName>message.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\message.c</FilePath>
</File>
<File>
<FileName>gpio.c</FileName>
<FileType>1</FileType>
@@ -639,6 +659,874 @@
</File>
</Files>
</Group>
<Group>
<GroupName>Bootloader</GroupName>
<Files>
<File>
<FileName>boot_project_setup.h</FileName>
<FileType>5</FileType>
<FilePath>..\Core\Bootloader\Inc\boot_project_setup.h</FilePath>
</File>
<File>
<FileName>boot_main.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_main.c</FilePath>
<FileOption>
<CommonProperty>
<UseCPPCompiler>2</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>0</IncludeInBuild>
<AlwaysBuild>2</AlwaysBuild>
<GenerateAssemblyFile>2</GenerateAssemblyFile>
<AssembleAssemblyFile>2</AssembleAssemblyFile>
<PublicsOnly>2</PublicsOnly>
<StopOnExitCode>11</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>1</ComprImg>
</CommonProperty>
<FileArmAds>
<Cads>
<interw>2</interw>
<Optim>0</Optim>
<oTime>2</oTime>
<SplitLS>2</SplitLS>
<OneElfS>2</OneElfS>
<Strict>2</Strict>
<EnumInt>2</EnumInt>
<PlainCh>2</PlainCh>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<wLevel>0</wLevel>
<uThumb>2</uThumb>
<uSurpInc>2</uSurpInc>
<uC99>2</uC99>
<uGnu>2</uGnu>
<useXO>2</useXO>
<v6Lang>0</v6Lang>
<v6LangP>0</v6LangP>
<vShortEn>2</vShortEn>
<vShortWch>2</vShortWch>
<v6Lto>2</v6Lto>
<v6WtE>2</v6WtE>
<v6Rtti>2</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Cads>
</FileArmAds>
</FileOption>
</File>
<File>
<FileName>bootloader.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\bootloader.c</FilePath>
</File>
<File>
<FileName>boot_uart.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_uart.c</FilePath>
</File>
<File>
<FileName>boot_can.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_can.c</FilePath>
</File>
<File>
<FileName>boot_flash.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_flash.c</FilePath>
</File>
<File>
<FileName>boot_gpio.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_gpio.c</FilePath>
</File>
<File>
<FileName>boot_jump.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_jump.c</FilePath>
<FileOption>
<CommonProperty>
<UseCPPCompiler>2</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>1</IncludeInBuild>
<AlwaysBuild>2</AlwaysBuild>
<GenerateAssemblyFile>2</GenerateAssemblyFile>
<AssembleAssemblyFile>2</AssembleAssemblyFile>
<PublicsOnly>2</PublicsOnly>
<StopOnExitCode>11</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>1</ComprImg>
</CommonProperty>
<FileArmAds>
<Cads>
<interw>2</interw>
<Optim>0</Optim>
<oTime>2</oTime>
<SplitLS>2</SplitLS>
<OneElfS>2</OneElfS>
<Strict>2</Strict>
<EnumInt>2</EnumInt>
<PlainCh>2</PlainCh>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<wLevel>0</wLevel>
<uThumb>2</uThumb>
<uSurpInc>2</uSurpInc>
<uC99>2</uC99>
<uGnu>2</uGnu>
<useXO>2</useXO>
<v6Lang>0</v6Lang>
<v6LangP>0</v6LangP>
<vShortEn>2</vShortEn>
<vShortWch>2</vShortWch>
<v6Lto>2</v6Lto>
<v6WtE>2</v6WtE>
<v6Rtti>2</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Cads>
</FileArmAds>
</FileOption>
</File>
</Files>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
</Group>
</Groups>
</Target>
<Target>
<TargetName>bootloader</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<pArmCC>6190000::V6.19::ARMCLANG</pArmCC>
<pCCUsed>6190000::V6.19::ARMCLANG</pCCUsed>
<uAC6>1</uAC6>
<TargetOption>
<TargetCommonOption>
<Device>STM32F103RC</Device>
<Vendor>STMicroelectronics</Vendor>
<PackID>Keil.STM32F1xx_DFP.2.4.0</PackID>
<PackURL>http://www.keil.com/pack/</PackURL>
<Cpu>IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x803FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") TZ</Cpu>
<FlashUtilSpec></FlashUtilSpec>
<StartupFile></StartupFile>
<FlashDriverDll></FlashDriverDll>
<DeviceId>0</DeviceId>
<RegisterFile></RegisterFile>
<MemoryEnv></MemoryEnv>
<Cmp></Cmp>
<Asm></Asm>
<Linker></Linker>
<OHString></OHString>
<InfinionOptionDll></InfinionOptionDll>
<SLE66CMisc></SLE66CMisc>
<SLE66AMisc></SLE66AMisc>
<SLE66LinkerMisc></SLE66LinkerMisc>
<SFDFile>$$Device:STM32F103RC$SVD\STM32F103xx.svd</SFDFile>
<bCustSvd>0</bCustSvd>
<UseEnv>0</UseEnv>
<BinPath></BinPath>
<IncludePath></IncludePath>
<LibPath></LibPath>
<RegisterFilePath></RegisterFilePath>
<DBRegisterFilePath></DBRegisterFilePath>
<TargetStatus>
<Error>0</Error>
<ExitCodeStop>0</ExitCodeStop>
<ButtonStop>0</ButtonStop>
<NotGenerated>0</NotGenerated>
<InvalidFlash>1</InvalidFlash>
</TargetStatus>
<OutputDirectory>.\bootloader\</OutputDirectory>
<OutputName>bootloader</OutputName>
<CreateExecutable>1</CreateExecutable>
<CreateLib>0</CreateLib>
<CreateHexFile>1</CreateHexFile>
<DebugInformation>1</DebugInformation>
<BrowseInformation>0</BrowseInformation>
<ListingPath></ListingPath>
<HexFormatSelection>1</HexFormatSelection>
<Merge32K>0</Merge32K>
<CreateBatchFile>0</CreateBatchFile>
<BeforeCompile>
<RunUserProg1>0</RunUserProg1>
<RunUserProg2>0</RunUserProg2>
<UserProg1Name></UserProg1Name>
<UserProg2Name></UserProg2Name>
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
<nStopU1X>0</nStopU1X>
<nStopU2X>0</nStopU2X>
</BeforeCompile>
<BeforeMake>
<RunUserProg1>0</RunUserProg1>
<RunUserProg2>0</RunUserProg2>
<UserProg1Name></UserProg1Name>
<UserProg2Name></UserProg2Name>
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
<nStopB1X>0</nStopB1X>
<nStopB2X>0</nStopB2X>
</BeforeMake>
<AfterMake>
<RunUserProg1>1</RunUserProg1>
<RunUserProg2>0</RunUserProg2>
<UserProg1Name>fromelf.exe --bin --output .\Listings\@L.bin !L</UserProg1Name>
<UserProg2Name></UserProg2Name>
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
<nStopA1X>0</nStopA1X>
<nStopA2X>0</nStopA2X>
</AfterMake>
<SelectedForBatchBuild>1</SelectedForBatchBuild>
<SVCSIdString></SVCSIdString>
</TargetCommonOption>
<CommonProperty>
<UseCPPCompiler>0</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>1</IncludeInBuild>
<AlwaysBuild>0</AlwaysBuild>
<GenerateAssemblyFile>0</GenerateAssemblyFile>
<AssembleAssemblyFile>0</AssembleAssemblyFile>
<PublicsOnly>0</PublicsOnly>
<StopOnExitCode>3</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>0</ComprImg>
</CommonProperty>
<DllOption>
<SimDllName>SARMCM3.DLL</SimDllName>
<SimDllArguments>-REMAP</SimDllArguments>
<SimDlgDll>DCM.DLL</SimDlgDll>
<SimDlgDllArguments>-pCM3</SimDlgDllArguments>
<TargetDllName>SARMCM3.DLL</TargetDllName>
<TargetDllArguments></TargetDllArguments>
<TargetDlgDll>TCM.DLL</TargetDlgDll>
<TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
</DllOption>
<DebugOption>
<OPTHX>
<HexSelection>1</HexSelection>
<HexRangeLowAddress>0</HexRangeLowAddress>
<HexRangeHighAddress>0</HexRangeHighAddress>
<HexOffset>0</HexOffset>
<Oh166RecLen>16</Oh166RecLen>
</OPTHX>
</DebugOption>
<Utilities>
<Flash1>
<UseTargetDll>1</UseTargetDll>
<UseExternalTool>0</UseExternalTool>
<RunIndependent>0</RunIndependent>
<UpdateFlashBeforeDebugging>1</UpdateFlashBeforeDebugging>
<Capability>1</Capability>
<DriverSelection>4101</DriverSelection>
</Flash1>
<bUseTDR>1</bUseTDR>
<Flash2>BIN\UL2CM3.DLL</Flash2>
<Flash3></Flash3>
<Flash4></Flash4>
<pFcarmOut></pFcarmOut>
<pFcarmGrp></pFcarmGrp>
<pFcArmRoot></pFcArmRoot>
<FcArmLst>0</FcArmLst>
</Utilities>
<TargetArmAds>
<ArmAdsMisc>
<GenerateListings>0</GenerateListings>
<asHll>1</asHll>
<asAsm>1</asAsm>
<asMacX>1</asMacX>
<asSyms>1</asSyms>
<asFals>1</asFals>
<asDbgD>1</asDbgD>
<asForm>1</asForm>
<ldLst>0</ldLst>
<ldmm>1</ldmm>
<ldXref>1</ldXref>
<BigEnd>0</BigEnd>
<AdsALst>1</AdsALst>
<AdsACrf>1</AdsACrf>
<AdsANop>0</AdsANop>
<AdsANot>0</AdsANot>
<AdsLLst>1</AdsLLst>
<AdsLmap>1</AdsLmap>
<AdsLcgr>1</AdsLcgr>
<AdsLsym>1</AdsLsym>
<AdsLszi>1</AdsLszi>
<AdsLtoi>1</AdsLtoi>
<AdsLsun>1</AdsLsun>
<AdsLven>1</AdsLven>
<AdsLsxf>1</AdsLsxf>
<RvctClst>0</RvctClst>
<GenPPlst>0</GenPPlst>
<AdsCpuType>"Cortex-M3"</AdsCpuType>
<RvctDeviceName></RvctDeviceName>
<mOS>0</mOS>
<uocRom>0</uocRom>
<uocRam>0</uocRam>
<hadIROM>1</hadIROM>
<hadIRAM>1</hadIRAM>
<hadXRAM>0</hadXRAM>
<uocXRam>0</uocXRam>
<RvdsVP>0</RvdsVP>
<RvdsMve>0</RvdsMve>
<RvdsCdeCp>0</RvdsCdeCp>
<nBranchProt>0</nBranchProt>
<hadIRAM2>0</hadIRAM2>
<hadIROM2>0</hadIROM2>
<StupSel>8</StupSel>
<useUlib>0</useUlib>
<EndSel>0</EndSel>
<uLtcg>0</uLtcg>
<nSecure>0</nSecure>
<RoSelD>3</RoSelD>
<RwSelD>4</RwSelD>
<CodeSel>0</CodeSel>
<OptFeed>0</OptFeed>
<NoZi1>0</NoZi1>
<NoZi2>0</NoZi2>
<NoZi3>0</NoZi3>
<NoZi4>0</NoZi4>
<NoZi5>0</NoZi5>
<Ro1Chk>0</Ro1Chk>
<Ro2Chk>0</Ro2Chk>
<Ro3Chk>0</Ro3Chk>
<Ir1Chk>1</Ir1Chk>
<Ir2Chk>0</Ir2Chk>
<Ra1Chk>0</Ra1Chk>
<Ra2Chk>0</Ra2Chk>
<Ra3Chk>0</Ra3Chk>
<Im1Chk>1</Im1Chk>
<Im2Chk>0</Im2Chk>
<OnChipMemories>
<Ocm1>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm1>
<Ocm2>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm2>
<Ocm3>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm3>
<Ocm4>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm4>
<Ocm5>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm5>
<Ocm6>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</Ocm6>
<IRAM>
<Type>0</Type>
<StartAddress>0x20000000</StartAddress>
<Size>0xc000</Size>
</IRAM>
<IROM>
<Type>1</Type>
<StartAddress>0x8000000</StartAddress>
<Size>0x40000</Size>
</IROM>
<XRAM>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</XRAM>
<OCR_RVCT1>
<Type>1</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT1>
<OCR_RVCT2>
<Type>1</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT2>
<OCR_RVCT3>
<Type>1</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT3>
<OCR_RVCT4>
<Type>1</Type>
<StartAddress>0x8000000</StartAddress>
<Size>0xc000</Size>
</OCR_RVCT4>
<OCR_RVCT5>
<Type>1</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT5>
<OCR_RVCT6>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT6>
<OCR_RVCT7>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT7>
<OCR_RVCT8>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT8>
<OCR_RVCT9>
<Type>0</Type>
<StartAddress>0x20000000</StartAddress>
<Size>0xc000</Size>
</OCR_RVCT9>
<OCR_RVCT10>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</OCR_RVCT10>
</OnChipMemories>
<RvctStartVector></RvctStartVector>
</ArmAdsMisc>
<Cads>
<interw>1</interw>
<Optim>1</Optim>
<oTime>0</oTime>
<SplitLS>0</SplitLS>
<OneElfS>1</OneElfS>
<Strict>0</Strict>
<EnumInt>0</EnumInt>
<PlainCh>0</PlainCh>
<Ropi>0</Ropi>
<Rwpi>0</Rwpi>
<wLevel>3</wLevel>
<uThumb>0</uThumb>
<uSurpInc>0</uSurpInc>
<uC99>1</uC99>
<uGnu>0</uGnu>
<useXO>0</useXO>
<v6Lang>3</v6Lang>
<v6LangP>5</v6LangP>
<vShortEn>1</vShortEn>
<vShortWch>1</vShortWch>
<v6Lto>0</v6Lto>
<v6WtE>0</v6WtE>
<v6Rtti>0</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define>USE_HAL_DRIVER,STM32F103xE</Define>
<Undefine></Undefine>
<IncludePath>..\Core\Inc;../Drivers/STM32F1xx_HAL_Driver/Inc;../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F1xx/Include;../Drivers/CMSIS/Include;..\Core\Bootloader\Inc</IncludePath>
</VariousControls>
</Cads>
<Aads>
<interw>1</interw>
<Ropi>0</Ropi>
<Rwpi>0</Rwpi>
<thumb>0</thumb>
<SplitLS>0</SplitLS>
<SwStkChk>0</SwStkChk>
<NoWarn>0</NoWarn>
<uSurpInc>0</uSurpInc>
<useXO>0</useXO>
<ClangAsOpt>1</ClangAsOpt>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Aads>
<LDads>
<umfTarg>1</umfTarg>
<Ropi>0</Ropi>
<Rwpi>0</Rwpi>
<noStLib>0</noStLib>
<RepFail>1</RepFail>
<useFile>0</useFile>
<TextAddressRange></TextAddressRange>
<DataAddressRange></DataAddressRange>
<pXoBase></pXoBase>
<ScatterFile></ScatterFile>
<IncludeLibs></IncludeLibs>
<IncludeLibsPath></IncludeLibsPath>
<Misc></Misc>
<LinkerInputFile></LinkerInputFile>
<DisabledWarnings></DisabledWarnings>
</LDads>
</TargetArmAds>
</TargetOption>
<Groups>
<Group>
<GroupName>Application/MDK-ARM</GroupName>
<Files>
<File>
<FileName>startup_stm32f103xe.s</FileName>
<FileType>2</FileType>
<FilePath>startup_stm32f103xe.s</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>Application/User/Core</GroupName>
<GroupOption>
<CommonProperty>
<UseCPPCompiler>0</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>0</IncludeInBuild>
<AlwaysBuild>2</AlwaysBuild>
<GenerateAssemblyFile>2</GenerateAssemblyFile>
<AssembleAssemblyFile>2</AssembleAssemblyFile>
<PublicsOnly>2</PublicsOnly>
<StopOnExitCode>11</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>1</ComprImg>
</CommonProperty>
<GroupArmAds>
<Cads>
<interw>2</interw>
<Optim>0</Optim>
<oTime>2</oTime>
<SplitLS>2</SplitLS>
<OneElfS>2</OneElfS>
<Strict>2</Strict>
<EnumInt>2</EnumInt>
<PlainCh>2</PlainCh>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<wLevel>0</wLevel>
<uThumb>2</uThumb>
<uSurpInc>2</uSurpInc>
<uC99>2</uC99>
<uGnu>2</uGnu>
<useXO>2</useXO>
<v6Lang>0</v6Lang>
<v6LangP>0</v6LangP>
<vShortEn>2</vShortEn>
<vShortWch>2</vShortWch>
<v6Lto>2</v6Lto>
<v6WtE>2</v6WtE>
<v6Rtti>2</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Cads>
<Aads>
<interw>2</interw>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<thumb>2</thumb>
<SplitLS>2</SplitLS>
<SwStkChk>2</SwStkChk>
<NoWarn>2</NoWarn>
<uSurpInc>2</uSurpInc>
<useXO>2</useXO>
<ClangAsOpt>0</ClangAsOpt>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Aads>
</GroupArmAds>
</GroupOption>
<Files>
<File>
<FileName>crc16.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\crc16.c</FilePath>
</File>
<File>
<FileName>eeprom.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\eeprom.c</FilePath>
</File>
<File>
<FileName>lampa.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\lampa.c</FilePath>
</File>
<File>
<FileName>main.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/main.c</FilePath>
</File>
<File>
<FileName>message.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Src\message.c</FilePath>
</File>
<File>
<FileName>gpio.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/gpio.c</FilePath>
</File>
<File>
<FileName>can.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/can.c</FilePath>
</File>
<File>
<FileName>iwdg.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/iwdg.c</FilePath>
</File>
<File>
<FileName>tim.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/tim.c</FilePath>
</File>
<File>
<FileName>usart.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/usart.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_it.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/stm32f1xx_it.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_msp.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/stm32f1xx_hal_msp.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_timebase_tim.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/stm32f1xx_hal_timebase_tim.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>Drivers/STM32F1xx_HAL_Driver</GroupName>
<Files>
<File>
<FileName>stm32f1xx_hal_gpio_ex.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_can.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_rcc.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_rcc_ex.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_gpio.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_dma.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_cortex.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_pwr.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_flash.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_flash_ex.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_exti.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_iwdg.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_iwdg.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_tim.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_tim_ex.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c</FilePath>
</File>
<File>
<FileName>stm32f1xx_hal_uart.c</FileName>
<FileType>1</FileType>
<FilePath>../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c</FilePath>
<FileOption>
<CommonProperty>
<UseCPPCompiler>2</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>1</IncludeInBuild>
<AlwaysBuild>2</AlwaysBuild>
<GenerateAssemblyFile>2</GenerateAssemblyFile>
<AssembleAssemblyFile>2</AssembleAssemblyFile>
<PublicsOnly>2</PublicsOnly>
<StopOnExitCode>11</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>1</ComprImg>
</CommonProperty>
<FileArmAds>
<Cads>
<interw>2</interw>
<Optim>0</Optim>
<oTime>2</oTime>
<SplitLS>2</SplitLS>
<OneElfS>2</OneElfS>
<Strict>2</Strict>
<EnumInt>2</EnumInt>
<PlainCh>2</PlainCh>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<wLevel>0</wLevel>
<uThumb>2</uThumb>
<uSurpInc>2</uSurpInc>
<uC99>2</uC99>
<uGnu>2</uGnu>
<useXO>2</useXO>
<v6Lang>0</v6Lang>
<v6LangP>0</v6LangP>
<vShortEn>2</vShortEn>
<vShortWch>2</vShortWch>
<v6Lto>2</v6Lto>
<v6WtE>2</v6WtE>
<v6Rtti>2</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Cads>
</FileArmAds>
</FileOption>
</File>
</Files>
</Group>
<Group>
<GroupName>Drivers/CMSIS</GroupName>
<Files>
<File>
<FileName>system_stm32f1xx.c</FileName>
<FileType>1</FileType>
<FilePath>../Core/Src/system_stm32f1xx.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>Bootloader</GroupName>
<Files>
<File>
<FileName>boot_project_setup.h</FileName>
<FileType>5</FileType>
<FilePath>..\Core\Bootloader\Inc\boot_project_setup.h</FilePath>
</File>
<File>
<FileName>boot_main.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_main.c</FilePath>
</File>
<File>
<FileName>bootloader.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\bootloader.c</FilePath>
</File>
<File>
<FileName>boot_uart.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_uart.c</FilePath>
</File>
<File>
<FileName>boot_can.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_can.c</FilePath>
</File>
<File>
<FileName>boot_flash.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_flash.c</FilePath>
</File>
<File>
<FileName>boot_gpio.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_gpio.c</FilePath>
</File>
<File>
<FileName>boot_jump.c</FileName>
<FileType>1</FileType>
<FilePath>..\Core\Bootloader\Src\boot_jump.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
</Group>
@@ -652,6 +1540,7 @@
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0" condition="ARMv6_7_8-M Device">
<package name="CMSIS" schemaVersion="1.7.7" url="http://www.keil.com/pack/" vendor="ARM" version="5.9.0"/>
<targetInfos>
<targetInfo name="bootloader"/>
<targetInfo name="uksvep_2_2_v1"/>
</targetInfos>
</component>
@@ -659,4 +1548,13 @@
<files/>
</RTE>
<LayerInfo>
<Layers>
<Layer>
<LayName>uksvep_2_2_v1</LayName>
<LayPrjMark>1</LayPrjMark>
</Layer>
</Layers>
</LayerInfo>
</Project>

View File

@@ -1,2 +0,0 @@
[EXTDLL]
Count=0

View File

@@ -1,32 +0,0 @@
uksvep_2_2_v1/can.o: ..\Core\Src\can.c ..\Core\Inc\can.h \
..\Core\Inc\main.h ..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h \
..\Core\Inc\stm32f1xx_hal_conf.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xe.h \
..\Drivers\CMSIS\Include\core_cm3.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stdint.h \
..\Drivers\CMSIS\Include\cmsis_version.h \
..\Drivers\CMSIS\Include\cmsis_compiler.h \
..\Drivers\CMSIS\Include\cmsis_armclang.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_compat.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_acle.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stddef.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_can.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_iwdg.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h

Binary file not shown.

View File

@@ -1,32 +0,0 @@
uksvep_2_2_v1/gpio.o: ..\Core\Src\gpio.c ..\Core\Inc\gpio.h \
..\Core\Inc\main.h ..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h \
..\Core\Inc\stm32f1xx_hal_conf.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xe.h \
..\Drivers\CMSIS\Include\core_cm3.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stdint.h \
..\Drivers\CMSIS\Include\cmsis_version.h \
..\Drivers\CMSIS\Include\cmsis_compiler.h \
..\Drivers\CMSIS\Include\cmsis_armclang.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_compat.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_acle.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stddef.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_can.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_iwdg.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h

Binary file not shown.

View File

@@ -1,32 +0,0 @@
uksvep_2_2_v1/iwdg.o: ..\Core\Src\iwdg.c ..\Core\Inc\iwdg.h \
..\Core\Inc\main.h ..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h \
..\Core\Inc\stm32f1xx_hal_conf.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xe.h \
..\Drivers\CMSIS\Include\core_cm3.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stdint.h \
..\Drivers\CMSIS\Include\cmsis_version.h \
..\Drivers\CMSIS\Include\cmsis_compiler.h \
..\Drivers\CMSIS\Include\cmsis_armclang.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_compat.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\arm_acle.h \
..\Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h \
C:\Keil_v5\ARM\ARMCLANG\Bin\..\include\stddef.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_can.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_iwdg.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h \
..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h

Some files were not shown because too many files have changed in this diff Show More