打印

PIC12F1571 RA0-RA2做输入口功能不正常

[复制链接]
339|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pengf|  楼主 | 2021-2-7 21:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PIC12F1571 RA0-RA2做输入口功能不正常;做输出口功能。软件用MPLAB X IDE V5.15,有配置外设触发。void main(void)
{   
    OPTION_REG=0X47;
    ANSELA=0x00;
    INTCON=0x00;        //中断控制寄存器
    PORTA=0x00;         //1100 1111
    WPUA =0xFF;
    TRISA=0xCF;                    //1100 1111=RA0-3输入=1;RA4-5输出=0
    OpenWinFB=0;
    CloseWinFB=0;
    ADIE=1;                     //1 = 允许ADC 中断
    TMR1GIE=1;      //1 = 允许Timer1 门控采集中断
    TMR1IE=1;       //1 = 允许Timer1 上溢中断
    INTCONbits.IOCIE = 1;       //1 = 允许电平变化中断
    INTCONbits.IOCIF = 1;       //1 = 至少有一个电平变化中断引脚改变了状态
    INTCONbits.PEIE = 1;        //外设中断允许
    INTCONbits.INTE = 1;        //允许INT 外部中断
        INTCONbits.GIE  = 1;        //系统中断允许
        TMR0IE = 1;                                //TMR0使能
    while (1)
    {   
    //    ADC_PowerForward  = get_adc_contiue(0);//电源正方向取样AN0
    //    ADC_PowerReverse  = get_adc_contiue(1);//电源反方向取样AN1
        NOP();
        NOP();
        if(RA0)//判断电压的方向=正方向
        {        
                PowerForwardFlag=1;
                OpenWinFB=1;   
        }
        
        if( RA1 )//判断电压的方向=正方向
        {         
                PowerReverseFlag=1;
                CloseWinFB=1;   
        }
      
      
        
       /*     
        if( (ADC_PowerForward > 150 ) && ( ADC_PowerReverse < 8 ) )//判断电压的方向=正方向
        {        
            __delay_ms(5);
            if(ADC_PowerForward > 150 )
            {
                PowerForwardFlag=1;
                OpenWinFB=1;
            }
        }
        else{ PowerForwardFlag=0;OpenWinFB=0;}
        if( (ADC_PowerReverse > 150 ) && ( ADC_PowerForward < 8 ) )//判断电压的方向=正方向
        {        
            __delay_ms(5);
            if(ADC_PowerReverse > 150 )
            {
                PowerReverseFlag=1;
                CloseWinFB=1;
            }
        }
        else{PowerReverseFlag=0; CloseWinFB=0;}
        * /
        /*
                if(PowerForwardFlag)//正方向
                {        
                        OpenWinFB=1;
        }
        if(PowerReverseFlag)//反方向
                {        
                        CloseWinFB=1;
        }
       */
    }
}

使用特权

评论回复
沙发
liliang9554| | 2021-2-7 21:47 | 只看该作者
RA0-RA2做输入口功能不正常是指做模拟ADC输入口不正常还是数字输入不正常?

使用特权

评论回复
板凳
zhaoxqi| | 2021-2-7 21:53 | 只看该作者
具体怎么不正常

使用特权

评论回复
地板
pengf|  楼主 | 2021-2-7 21:55 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

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

本版积分规则

718

主题

10129

帖子

3

粉丝