Добрый день всем, дождался STM8S_discovery,решил поиграться, для начала сделал "Hello Led " c циклической задержкой,затем решил попробовать на прерывании от таймеров ,для пробы взял проект с
http://eugenemcu.ru/publ/11-1-0-67 тот который с таймером 4,
но при отладке не заходит в обработчик прерывания, подумал что чего-то не допер со стандартной Либой, после чего описал обработчик "влоб"(см-ниже), но проблема осталась та же.
Для работы скачал среду Резонанс (Отладку провожу в Ride7 )
Ткните носом где искать оплошности, если не затруднит
//===============================
/* Try led_blink_with_interrupt*/
//===============================
#include ‹stdio.h›
#include "STM8S105C_S.h"
#include ‹intrins.h›
//Interrupt vector definition
#define TIM_4_OVF 23
// TIM4_CR1---------------
#define CEN 0
#define UDIS 1
//--Interrupt enable register (TIM4_IER)
#define TIE 6
#define UIE 0
/
/--Status register 1 (TIM4_SR)
#define UIF 0
#define ARPE 7
void _ISR_(
void)
interrupt TIM_4_OVF
{
TIM4_SR|=~(1‹‹UIF);
PA_ODR=~PA_ODR;
}
int main(
void)
{
//PORTA init
PA_DDR=0xff ;
//all pins to output
PA_ODR=0x0f;
//timer_4 init
TIM4_SR|=~(1‹‹UIF);
//clear Update interrupt flag
TIM4_PSCR=0x01;
//prescaler register
TIM4_ARR=250;
TIM4_IER|=(1‹‹UIE);
//interrupt enable
TIM4_CR1|=(1‹‹CEN);
//Enable counter_4
_rim_();
//enable interrupt
while(1)
{
_nop_();
_nop_();
_nop_();
_nop_();
//infinity cycle
//waiting for interrupt;
}
return 0;
}