• PIC452外部中断进不去的原因?


      开了两个中断,一个定时,另一个为外部中断,

    void TIMER0INIT()
    {
     T0CON=0B10001000;//1000 0011,PSA=0,分频16;
     TMR0L=0xDC;
     TMR0H=0x0B;
     //INTCON=0B10100000 ;//GIE=1;TMR0IE=1;TMR0IF=0;(=1须软件清零)     这里有两种方式都对的。 
     GIE=1;
     TMR0IF=0;
     TMR0IE=1;
    }

    但是,打开另外一个中断时,为了模块化编程,一般另外建一个函数进行外部中断初始化,然而如果采用寄存器字节形式,编写会带来很大麻烦,不能正常中断。采用位的形式设置中断,为比较好的方式。如下:

    void key_init()
    {
     //初始化中断
     RBIE=0;     //(RB7~4具有电平变化中断功能)RB口电平变化中断禁止
     GIE=1;
     INTEDG0=0;//下降沿
     INT0IF=0;
     INT0IE=1;
    }

  • 相关阅读:
    Git的环境搭建
    AmazeUI HTML元素
    AmazeUI布局
    AmazeUI基本样式
    Bash简介
    Linux下拷贝目录和删除
    linux下的定时任务
    缓存
    隔离
    DEDECMS使用SQL命令批量替换语句
  • 原文地址:https://www.cnblogs.com/wangh0802PositiveANDupward/p/2599760.html
Copyright © 2020-2023  润新知