TC3xx启动过程概述
TC3xx的启动过程大致可以分为三个阶段。首先,当外部电源上电后,MCU进入复位状态,这个阶段主要是进行芯片供电选择、时钟开启和各个IP复位释放。接着,硬件将PC(程序计数器)指向BootRom中代码(称为Firmware)的首地址,开始软件工作,包括用户配置参数的加载、特定寄存器状态判断等。最后,Firmware执行完成后,会跳转至用户的启动代码(如start.s),用户进行定制化开发,进一步初始化软硬件,并最终跳转至不同Core的应用代码。 Firmware执行具体是做什么的?复位阶段:
当外部电源上电后,MCU进入复位状态。
在这个阶段,主要进行以下操作:
芯片供电选择:选择合适的电源电压和工作模式。
时钟开启:启动系统时钟,包括内部和外部时钟源的初始化。
IP复位释放:释放所有内部外设的复位状态,确保它们能够正常工作。
TC3xx系列是英飞凌(Infineon)公司生产的一系列高性能汽车微控制器,广泛应用于汽车电子控制单元(ECU)中。这些微控制器基于TriCore架构,集成了处理器核心、外设和专用硬件加速器,以满足汽车应用中的实时性和可靠性要求 一般来说启动都是从BootLoader启动吧,然后跳转到自己写的程序之中 当TC3xx微控制器上电或接收到复位信号时,芯片会进入复位状态。复位状态会初始化所有内部寄存器和外设到预定义的状态 复位后,处理器核心会从预定义的启动地址开始执行代码。对于TC3xx系列,这个地址通常是Flash存储器的起始地址。启动代码(也称为引导加载程序或启动加载程序)是存储在非易失性存储器中的一段代码,负责初始化系统硬件和软件环境 启动代码会初始化处理器核心的寄存器,包括设置堆栈指针、中断向量表等。启动代码还会初始化系统时钟、外设时钟、内存控制器和其他关键外设 启动代码会设置软件运行环境,包括初始化全局变量、静态变量和堆内存。如果需要,启动代码还会配置操作系统的运行环境,如任务调度器、内存管理单元(MMU)等 在硬件和软件环境初始化完成后,启动代码会加载并跳转到主应用程序的入口点。主应用程序是用户编写的代码,负责执行特定的控制任务和处理外设输入输出 主应用程序开始执行后,会根据需要配置和使用各种外设,如ADC、PWM、CAN、SPI、UART等。应用程序会进入主循环或事件驱动模式,处理实时任务和中断 TC3xx微控制器的启动过程是一个精心设计的序列,确保了系统的正确初始化和应用程序的顺利执行。在汽车电子系统中,这个过程对于确保系统的实时响应和故障安全操作至关重要 TC3xx的启动过程涉及三个关键阶段,每个阶段都有特定的操作和任务,确保芯片的顺利启动和后续的应用运行。 Firmware是不是类似于计算机的BIOS? 硬复位是整个单片机的复位。软复位,仅仅是让程序从用户的程序开始处执行? 学习思路很好,感谢 TC3xx的启动过程大致可以分为三个阶段
页:
[1]