打印
[STM8]

stm8外部中断配置哪里错了

[复制链接]
1203|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangch_sh|  楼主 | 2013-12-7 12:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我写stm8外部中断,老是不成功。
现贴一部分代码,请大侠指教。
int main(void)
{
  /* Infinite loop */
  //long int i;
  /*设置内部高速时钟16M为主时钟*/
  Clk_conf();
  LED_conf();
  Set_Led_Off();
  Buttom_conf();
  EnableInterrupt;
  while(1)
  {
    /* 添加你的代码  */
    //PD0_out=~PD0_out;
    //for(i=0;i<200000;i++);
  }
}
以上是主程序
void Buttom_conf(void)
{
  PD_DDR&=0x1f;/*设置数据方向寄存器 1为输出,0为输入*/
  PD_CR1|=0xe0;/*设置上拉输入*/
  PD_CR2|=0xe0;/*设置中断*/
  CPU_CCR|=0X28;
  EXTI_CR1 &= (uint8_t)(~MASK_EXTI_CR1_PDIS);
  EXTI_CR1 |= (uint8_t)((uint8_t)(0x02) << 6);/*设置为下降沿触发中断*/
}
以上是按键中断配置
#pragma vector=8
__interrupt void EXTI_PORTD_IRQHandler(void)
{
//if(!PD7_In)
  PD0_out=~PD0_out;
  
}
以上是外部中断服务程序
请大神指教,谢谢!
沙发
wangch_sh|  楼主 | 2013-12-7 12:58 | 只看该作者
高手支招啊!

使用特权

评论回复
板凳
wangch_sh|  楼主 | 2013-12-7 14:07 | 只看该作者
我换了一个腿,PE3就好了。为什么PD7不可以呢?

使用特权

评论回复
地板
wangch_sh|  楼主 | 2013-12-7 14:20 | 只看该作者
知道了。

使用特权

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

本版积分规则

个人签名:为江山踏坏了乌骓马,为社稷拉断了宝雕弓。

318

主题

2817

帖子

5

粉丝