打印
[STM8]

STM8中断向量表,有哪位朋友详细描述一下。

[复制链接]
5928|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jgphu|  楼主 | 2010-10-21 17:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
例如: 1、_stext是什么意思?
          2、这个地址可能改吗?如果程序里有BOOTLOADER是不是要改。
          3、typedef void @far (*interrupt_handler_t)(void);是什么意思。有什么作用
沙发
IJK| | 2010-10-22 11:40 | 只看该作者
例如: 1、_stext是什么意思?
          2、这个地址可能改吗?如果程序里有BOOTLOADER是不是要改。
          3、typedef void @far (*interrupt_handler_t)(void);是什么意思。有什么作用 ...
jgphu 发表于 2010-10-21 17:10


1、_stext是什么意思?
我的理解,这个标号只代表 ST 的 extension

2、这个地址可能改吗?如果程序里有BOOTLOADER是不是要改。
作为1个标号,这个地址可以改

3、typedef void @far (*interrupt_handler_t)(void);是什么意思。
定义中断向量 的类型

使用特权

评论回复
板凳
jgphu|  楼主 | 2010-10-22 12:46 | 只看该作者
1、_stext是什么意思?
我的理解,这个标号只代表 ST 的 extension
这是什么意思呢

使用特权

评论回复
地板
jgphu|  楼主 | 2010-10-22 16:54 | 只看该作者
有谁知道吗

使用特权

评论回复
5
香水城| | 2010-10-22 17:00 | 只看该作者
请说明一下你是在哪里看到这个概念?

使用特权

评论回复
6
jgphu|  楼主 | 2010-10-22 18:23 | 只看该作者
struct interrupt_vector const _vectab[] = {
        {0x82, (interrupt_handler_t)_stext}, /* reset */
        {0x82, NonHandledInterrupt}, /* trap  */
        {0x82, NonHandledInterrupt}, /* irq0  */
        {0x82, NonHandledInterrupt}, /* irq1  */
        {0x82, NonHandledInterrupt}, /* irq2  */
        {0x82, NonHandledInterrupt}, /* irq3  */
        {0x82, NonHandledInterrupt}, /* irq4  */

1、_stext是什么意思?
我的理解,这个标号只代表 ST 的 extension

这是2楼的观点。

使用特权

评论回复
7
dadodo| | 2010-10-23 00:17 | 只看该作者
_stext跟你用的编译器有关,在编译器的帮助里找吧。

使用特权

评论回复
8
8bit_MCU| | 2010-10-28 13:44 | 只看该作者
_stext是一段初始化的启动文件的入口地址。这个初始化文件做的事情跟你在项目设置里面选择的STARTUP file有关。无非是做一些RAM区的初始化之类的工作。

如果你不需要COSMIC帮你配置的初始文件,可以将_stext换成main.那么上电复位后程序不会运行启动文件,而会直接跳转到main开始运行。那么你需要自己对RAM区做初始化。

具体的还是看COSMIC手册,上面对各种启动文件做了什么事情都有详细描述。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

642

帖子

2

粉丝