⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ad.c

📁 该程序利用pic单片机的A/D模块实现模拟信号的采集
💻 C
字号:
#include<pic.h>
void  iniIO();
void iniAD();
void  display();
void  delay1ms();
void count();
unsigned char buffer;
unsigned char i;
unsigned char m[3];
float n,k;
unsigned char table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void iniIO()
{TRISB=0x0;
TRISC=0xf8;
}
void iniAD()
{ADCON0=0x41;
ADCON1=0x0e;
ADIE=1;
ADIF=0;
}

void interrupt ad(void)
{
buffer=ADRESH;
ADIF=0;
    
     
void delay1ms()
{OPTION=0x02;
TMR0=131;
while(TMR0IF==0);
TMR0IF=0;}

void count()
{m[0]=buffer/51;
 n=(float)buffer;
n=n/51;
n=n*100;
n=(n-100*m[0])/10;
k=n;
m[1]=(char)n;
k=k*10-10*m[1];
 m[2]=(char)k;
   }
void display()
{RC0=0;
RC1=1;
RC2=1;
PORTB=table[m[0]];
for(i=0;i<12;i++)
{
delay1ms();}

RC0=1;
RC1=0;
RC2=1;
PORTB=table[m[1]];
for(i=0;i<12;i++)
{
delay1ms();}
RC0=1;
RC1=1;
RC2=0;
PORTB=table[m[2]];
for(i=0;i<12;i++)
{
delay1ms();}

}
main()
{iniIO();
	iniAD();
	ei();
	PEIE=1;
	while(1)
	{delay1ms();
	  ADGO=1;
      count();
	  display();
	  }	}	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -