打印

STM8S 中断向量表在哪里呢?怎么找不到呀

[复制链接]
4947|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chrise23|  楼主 | 2016-3-10 08:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
magicoctoy| | 2016-3-10 11:10 | 只看该作者
STM8不清楚,STM32是在那个startup.s里面

使用特权

评论回复
板凳
Creas_Tall| | 2016-3-10 18:46 | 只看该作者
STM8没有启动文件的吧好像?

使用特权

评论回复
地板
MTCN2013| | 2016-3-11 10:22 | 只看该作者
Creas_Tall 发表于 2016-3-10 18:46
STM8没有启动文件的吧好像?

任何芯片应该都有启动文件的,不过STM8的中断向量表确实不在启动文件中

使用特权

评论回复
5
叶覃| | 2016-3-11 20:42 | 只看该作者
是在it.h中的,或者是在it.c中,具体哪个我忘记啦

使用特权

评论回复
6
manaok12345| | 2016-3-11 21:12 | 只看该作者
你们都说错啦,STM8的中断向量表在stm8_interrupt_vector.c文件中,不在中断文件中

使用特权

评论回复
7
songlaijun| | 2016-3-11 23:05 | 只看该作者
IAR和STVD两个的地方好像是不一样的,我见IAR是在.h中有定义的

使用特权

评论回复
8
haokeer| | 2016-3-13 21:51 | 只看该作者
// Redirected constant section to usr_tab: 0x8100-0x8180  
#pragma section const {usr_tab}  
struct interrupt_vector const UserISR_IRQ[32]  = {  
        {0x8200, (interrupt_handler_t)_stext},                                                                                                         // reset  
        {0x8200, (interrupt_handler_t)TRAP_IRQHandler},                                                                 // trap  - Software interrupt  
        {0x8200, (interrupt_handler_t)TLI_IRQHandler},                                                                         // irq0  - External Top Level interrupt (TLI)   
        {0x8200, (interrupt_handler_t)AWU_IRQHandler},                                                                         // irq1  - Auto Wake Up from Halt interrupt   
        {0x8200, (interrupt_handler_t)CLK_IRQHandler},                                                                         // irq2  - Clock Controller interrupt   
        {0x8200, (interrupt_handler_t)EXTI_PORTA_IRQHandler},                                         // irq3  - External interrupt 0 (GPIOA)   
        {0x8200, (interrupt_handler_t)EXTI_PORTB_IRQHandler},                                         // irq4  - External interrupt 1 (GPIOB)   
        {0x8200, (interrupt_handler_t)EXTI_PORTC_IRQHandler},                                         // irq5  - External interrupt 2 (GPIOC)   
        {0x8200, (interrupt_handler_t)EXTI_PORTD_IRQHandler},                                         // irq6  - External interrupt 3 (GPIOD)   
        {0x8200, (interrupt_handler_t)EXTI_PORTE_IRQHandler},                                         // irq7  - External interrupt 4 (GPIOE)   
        {0x8200, (interrupt_handler_t)CAN_RX_IRQHandler},                                                         // irq8  - CAN Rx interrupt   
        {0x8200, (interrupt_handler_t)CAN_TX_IRQHandler},                                                         // irq9  - CAN Tx/ER/SC interrupt   
        {0x8200, (interrupt_handler_t)SPI_IRQHandler},                                                                         // irq10 - SPI End of transfer interrupt  
        {0x8200, (interrupt_handler_t)TIM1_UPD_OVF_TRG_BRK_IRQHandler}, // irq11 - TIM1 Update/Overflow/Trigger/Break interrupt  
        {0x8200, (interrupt_handler_t)TIM1_CAP_COM_IRQHandler},                                 // irq12 - TIM1 Capture/Compare interrupt   
        {0x8200, (interrupt_handler_t)TIM2_UPD_OVF_BRK_IRQHandler},                 // irq13 - TIM2 Update/Overflow/Break interrupt   
        {0x8200, (interrupt_handler_t)TIM2_CAP_COM_IRQHandler},                                 // irq14 - TIM2 Capture/Compare interrupt   
        {0x8200, (interrupt_handler_t)TIM3_UPD_OVF_BRK_IRQHandler},                 // irq15 - TIM3 Update/Overflow/Break interrupt   
        {0x8200, (interrupt_handler_t)TIM3_CAP_COM_IRQHandler},                                 // irq16 - TIM3 Capture/Compare interrupt   
        {0x8200, (interrupt_handler_t)USART_TX_IRQHandler},                                                 // irq17 - USART Tx complete interrupt  
        {0x8200, (interrupt_handler_t)USART_RX_IRQHandler},                                                 // irq18 - USART Rx interrupt  
        {0x8200, (interrupt_handler_t)I2C_IRQHandler},                                                                         // irq19 - I2C interrupt  
        {0x8200, (interrupt_handler_t)LINUART_TX_IRQHandler},                                         // irq20 - LINUART Tx interrupt  
        {0x8200, (interrupt_handler_t)LINUART_RX_IRQHandler},                                         // irq21 - LINUART Rx interrupt  
        {0x8200, (interrupt_handler_t)ADC_IRQHandler},                                                                         // irq22 - ADC end of conversion interrupt  
        {0x8200, (interrupt_handler_t)TIM4_UPD_OVF_IRQHandler},                                 // irq23 - TIM4 Update/Overflow interrupt  
        {0x8200, (interrupt_handler_t)FLASH_IRQHandler},                                                                 // irq24 - FLASH interrupt  
        {0x8200, (interrupt_handler_t)NonHandledInterrupt},                                                 // irq25 - Reserved  
        {0x8200, (interrupt_handler_t)NonHandledInterrupt},                                                 // irq26 - Reserved  
        {0x8200, (interrupt_handler_t)NonHandledInterrupt},                                                 // irq27 - Reserved  
        {0x8200, (interrupt_handler_t)NonHandledInterrupt},                                                 // irq28 - Reserved  
        {0x8200, (interrupt_handler_t)NonHandledInterrupt},                                                 // irq29 - Reserved  
};  
楼主说的是这个吧

使用特权

评论回复
9
yysforever| | 2016-3-14 14:06 | 只看该作者
在IAR环境下,好像是在.icf文件中修改的。

使用特权

评论回复
10
yesherecn| | 2016-3-14 21:32 | 只看该作者
STM8S是否可以使用ISP下载呢?我见网上有的说可以,有的说不可以

使用特权

评论回复
11
playergatsby| | 2016-3-16 16:09 | 只看该作者
yesherecn 发表于 2016-3-14 21:32
STM8S是否可以使用ISP下载呢?我见网上有的说可以,有的说不可以

STM8S分两种,一种没有内置Boot,型号记得是STM8S103以下的;内置Boot的是STM8S105以上的 在这里有内置Boot和没有其实没有多大区别。有Boot的启动位置是0x006000,没有Boot的启动位置是0x008000 由于不使用内部Boot,启动后也会跳转到0x008000开始。前者不可以用ISP下载,后者可以上ISP。

使用特权

评论回复
12
原味_郭| | 2016-3-17 11:53 | 只看该作者
playergatsby 发表于 2016-3-16 16:09
STM8S分两种,一种没有内置Boot,型号记得是STM8S103以下的;内置Boot的是STM8S105以上的 在这里有内置Bo ...

我觉得有没有boot和是否可以用ISP没有关系吧。低端型号的单片机,都是用串口来下载的。

使用特权

评论回复
13
enginezhong| | 2016-3-17 22:44 | 只看该作者
playergatsby 发表于 2016-3-16 16:09
STM8S分两种,一种没有内置Boot,型号记得是STM8S103以下的;内置Boot的是STM8S105以上的 在这里有内置Bo ...

相反,越是地段的产品,基本上都是用串口来下载的。boot的作用是可以在线升级

使用特权

评论回复
14
小葱521| | 2016-3-18 20:45 | 只看该作者
都是高手啊!

佩服!!

使用特权

评论回复
15
bairurui0713| | 2016-3-19 21:09 | 只看该作者
enginezhong 发表于 2016-3-17 22:44
相反,越是地段的产品,基本上都是用串口来下载的。boot的作用是可以在线升级 ...

是低端吧,确实,基本的51都是拿串口下载的。但我估计更早的芯片,只需要有1根线就可以下载了,用的是专用的下载器。

使用特权

评论回复
16
playergatsby| | 2016-4-27 15:57 | 只看该作者
enginezhong 发表于 2016-3-17 22:44
相反,越是地段的产品,基本上都是用串口来下载的。boot的作用是可以在线升级 ...

是了,用串口的话不影响外设的使用,其他下载口用作普通Io的话,就会所以的,必须要解锁。

使用特权

评论回复
17
playergatsby| | 2016-4-27 16:00 | 只看该作者
原味_郭 发表于 2016-3-17 11:53
我觉得有没有boot和是否可以用ISP没有关系吧。低端型号的单片机,都是用串口来下载的。 ...

是了。看单片机的设置了,有的厂家会内置了。

使用特权

评论回复
18
yesherecn| | 2016-4-28 09:02 | 只看该作者
playergatsby 发表于 2016-3-16 16:09
STM8S分两种,一种没有内置Boot,型号记得是STM8S103以下的;内置Boot的是STM8S105以上的 在这里有内置Bo ...

学习了。觉得这种说法有道理!

使用特权

评论回复
19
chrise23|  楼主 | 2017-4-18 19:42 | 只看该作者
叶覃 发表于 2016-3-11 20:42
是在it.h中的,或者是在it.c中,具体哪个我忘记啦

这个文件中没有,应该是在stm8_interrupt_vector.c中的

使用特权

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

本版积分规则

24

主题

153

帖子

1

粉丝