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

📄 lesson6.c

📁 PIC单片机的AD使用
💻 C
字号:
#include<pic.h>
#define uchar unsigned char
#define uint  unsigned int
__CONFIG(0x3B31);
const uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
const uchar table1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,
                        0x87,0xff,0xef};
void delay(uint x);
void init();
void xianshi(uchar a1,uchar a2,uchar a3,uchar a4);
uint get_tem();
void main()
{
	uint add1;
	uchar a1,a2,a3,a4;
	init();
	while(1)
	{
		add1=get_tem();
		a1=add1/1000;
		a2=add1%1000/100;
		a3=add1%100/10;
		a4=add1%10;
		xianshi(a1,a2,a3,a4);	
	}	
}
void delay(uint x)
{
	uint a,b;
	for(a=x;a>0;a--)
		for(b=110;b>0;b--);
}
void init()
{
	TRISD=0;
	TRISB=0;
	PORTD=0;
	PORTB=0;
	TRISA=0X01;
	ADCON0=0X41;
	ADCON1=0X8E;
	delay(1);
}
void xianshi(uchar a1,uchar a2,uchar a3,uchar a4)
{
	TRISD=0X7f;	
	PORTB=table1[a1];
	delay(2);
	
	TRISD=0Xbf;
	PORTB=table[a2];
	delay(2);	

	TRISD=0Xdf;
	PORTB=table[a3];
	delay(2);	

	TRISD=0Xe7;
	PORTB=table[a4];
	delay(2);
}
uint get_tem()
{
	uint advale;
	float add0;
	ADGO=1;
	while(ADGO);
	advale=ADRESH;
	advale=advale<<8|ADRESL;
	add0=(advale/1023.0)*5.0;
	advale=(int)(add0*1000);
	return advale;
}

⌨️ 快捷键说明

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