1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/yocop-chip_sc5654

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
trap_c.c 1.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
shuta.lst Отправлено 22.02.2021 16:23 755ac3c
/*
* Copyright (C) 2019-2020 Alibaba Group Holding Limited
*/
/******************************************************************************
* @file trap_c.c
* @brief source file for the trap process
* @version V1.0
* @date 12. December 2017
******************************************************************************/
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <csi_core.h>
void (*trap_c_callback)(void);
void trap_c(uint32_t *regs)
{
int i;
uint32_t vec = (__get_PSR() & PSR_VEC_Msk) >> PSR_VEC_Pos;
printf("CPU Exception: NO.%u", vec);
printf("\n");
for (i = 0; i < 32; i++) {
printf("r%d: %08x\t", i, regs[i]);
if ((i % 4) == 3) {
printf("\n");
}
}
printf("\n");
for (i = 0; i < 16; i++) {
printf("vr%d: %08x\t", i, regs[i + 32]);
if ((i % 4) == 3) {
printf("\n");
}
}
printf("\n");
printf("epsr: %8x\n", regs[48]);
printf("epc : %8x\n", regs[49]);
if (trap_c_callback) {
trap_c_callback();
}
while (1);
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/yocop-chip_sc5654.git
git@api.gitlife.ru:oschina-mirror/yocop-chip_sc5654.git
oschina-mirror
yocop-chip_sc5654
yocop-chip_sc5654
master