stm8s 无法进入定时器中断程序
#include"stm8s.h"main(){GPIO_DeInit(GPIOD);GPIO_Init(GPIOD,GPIO_PIN_4,GPIO_MODE_OUT_P...
#include "stm8s.h"
main()
{
GPIO_DeInit(GPIOD);
GPIO_Init(GPIOD, GPIO_PIN_4, GPIO_MODE_OUT_PP_LOW_FAST); //关闭LED
GPIO_Init(GPIOD, GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_FAST);
TIM4->ARR = 0xff; //自动重装数值为 256
TIM4->PSCR = 0x07; //128分频
TIM4->IER = 0x01; //使能溢出中断
TIM4->CR1 = 0x01; //启动定时器
enableInterrupts(); //开启总中断
while (1){
}
}
@near @interrupt void TIM4_UPD_OVF_IRQHandler (void)
{
GPIO_Init(GPIOD, GPIO_PIN_4, GPIO_MODE_OUT_PP_HIGH_FAST); //打开LED
TIM4->SR1 = ~0x01;
return;
}
如上面程式所示。我想通过定时器的方式来点亮LED 但是调试 很久依然没有办法进入定时器4中断程式内部。无法点亮LED 芯片是STM8S103F3P 展开
main()
{
GPIO_DeInit(GPIOD);
GPIO_Init(GPIOD, GPIO_PIN_4, GPIO_MODE_OUT_PP_LOW_FAST); //关闭LED
GPIO_Init(GPIOD, GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_FAST);
TIM4->ARR = 0xff; //自动重装数值为 256
TIM4->PSCR = 0x07; //128分频
TIM4->IER = 0x01; //使能溢出中断
TIM4->CR1 = 0x01; //启动定时器
enableInterrupts(); //开启总中断
while (1){
}
}
@near @interrupt void TIM4_UPD_OVF_IRQHandler (void)
{
GPIO_Init(GPIOD, GPIO_PIN_4, GPIO_MODE_OUT_PP_HIGH_FAST); //打开LED
TIM4->SR1 = ~0x01;
return;
}
如上面程式所示。我想通过定时器的方式来点亮LED 但是调试 很久依然没有办法进入定时器4中断程式内部。无法点亮LED 芯片是STM8S103F3P 展开
展开全部
itc_setsoftwarepriority(itc_irq_tim2_ovf,
itc_prioritylevel_0);//定时器tim2溢出中断
itc_setsoftwarepriority(itc_irq_adc2,
itc_prioritylevel_1);//adc2中断优先级为1,比tim2高
你确定有adc1?itc_setsoftwarepriority的中断源中,我没有看到adc1也。
望采纳~
itc_prioritylevel_0);//定时器tim2溢出中断
itc_setsoftwarepriority(itc_irq_adc2,
itc_prioritylevel_1);//adc2中断优先级为1,比tim2高
你确定有adc1?itc_setsoftwarepriority的中断源中,我没有看到adc1也。
望采纳~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
TIM4->SR1 = ~0x01;这个错了?
TIM4->SR1& = ~0x01;
TIM4->SR1& = ~0x01;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以到--------电子世家网址导航 里面的那些电子技术网站的论坛搜索下,很多的这方面的资料啦!应该适合你的用的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询