标题: 为何ADC显示不出来 pic单片机 [打印本页]

作者: qiweiaitian    时间: 2017-2-8 20:25
标题: 为何ADC显示不出来 pic单片机
#include <pic.h>
#define uchar   unsigned char
#define uint  unsigned int
__CONFIG(0x3B31);
void init(void);
void init();
void delay(int x);
void disp(uchar num1,uchar num2,uchar num3,uchar num4);
uint get_ad();
unsigned char table[]={0b11000000,0b11111001,0b10100100,
               0b10110000,0b10011001,0b10010010,0b10000010,
               0b11111000,0b10000000,0b10010000};  //字形码数组
void main()
{
        uint lednum;
        uchar a1,a2,a3,a4;
        init();

        while(1)
        {
        lednum=get_ad();
        a1=lednum/1000;
        a2=lednum&1000/100;
        a3=lednum&100/10;
        a4=lednum&10;
        disp(a1,a2,a3,a4);        
        }
}        
void init()
{        
        TRISA0=1,
        TRISD=0;
        TRISC=0;
        PORTA=0;
        PORTC=0;
        PORTD=0;
        ADCON1=0x8e;
        ADCON0=0x41;
        delay(10);
}
uint get_ad()
{
        uint adval;
        GO=1;
        while(GO);
        adval=ADRESH;
        adval=adval<<8|ADRESL;
        return (adval);
}
void disp(uchar num1,uchar num2,uchar num3,uchar num4)
{
PORTC=table[num1];
PORTD=0x08;
delay(2);
PORTC=table[num1];
PORTD=0x04;
delay(2);
PORTC=table[num1];
PORTD=0x02;
delay(2);
PORTC=table[num1];
PORTD=0x01;
delay(2);
}
void delay (int x)
{
        uint a,b;
        for(a=x;a>0;a--)
                for(b=110;b>0;b--);
}


作者: sZhou    时间: 2020-3-1 09:46
没有在你的main函数看到ADC函数加进去啊!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1