嵌入式开发基础从启动例程到硬件之main函数以前(启动)

嵌入式程序在启动时,首先执行启动例程,包括复位中断、堆栈设置、数据初始化、硬件初始化等步骤。在启动程序中,会调用main函数并进行标准库初始化。理解启动程序对嵌入式软件开发至关重要,因为它涉及设备初始化和硬件交互,错误的初始化设置可能导致程序运行异常。
摘要由CSDN通过智能技术生成

概述

在Windows和Linux/UNIX的环境中使用C语言进行编程时,对main函数以后进行编码。但是,程序并不是从main函数开始的。作为其前一阶段,存在着启动程序。
在编入系统中,为了运行程序,需要理解启动程序。如果不把握启动程序在做什么而进行调试,这很有可能是做无用的工作。作为嵌入式软件技术人员开始学习,这是一定要理解的内容。

当你打开电源时,启动程序首先运行

嵌入式程序通常在微型计算机上运行。微型计算机开始动作时的动作根据微型计算机的不同而不同,在此对其中的一个例子进行说明。
嵌入机器开始动作,也就是接通电源,按下复位按钮时,微型计算机就会出现复位造成的强制性中断(图2-1的(1))。该中断对微型计算机说:“不管现在的状态如何,从初始状态开始动作“的强制性指令。当复位的强制中断进入时,微型计算机在某个固定的地址(被称为中断向量区的特别存储区域中,读取被分配给复位的向量地址)的内容。写在那里的内容根据微型计算机的不同而不同,是跳转目标的地址,或者是短的程序。写的内容是跳转目标地址的情况下,控制转移到该地址(图2-1的(2))。另外,写的内容是程序的情况下,执行写在那里的程序,其内容和刚才一样,将控制转移到某个地址。无论如何,程序都会开始运行。此时调用的程序被称为启动例程。
图2-1微型计算机开始动作时的操作
插入机器接通电源后,首先进入(1)复位中断,微型计算机读取中断向量域内的某个

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值