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

📄 adc.c

📁 CCS_ADC 16f877用法,通到一为RA0;
💻 C
字号:
#include<18f258.h>
#fuses XT,NOWDT,PUT,NOPROTECT,BROWNOUT,NOLVP
#device ADC=10
#use delay(clock=4000000)
#use fast_io(B)
static int digit0,digit1;
int const LED_SEG[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
#int_timer1
void isr1()
{
	static int flag=0;
	set_timer1(0xFF06);
	output_low(PIN_C0);
	output_low(PIN_C5);
	if(flag)
	{
		flag=0;
		output_b(LED_SEG[digit1]);
		output_high(PIN_C5);
	}
	else
	{
		flag=1;
		output_b(LED_SEG[digit0]);
		output_high(PIN_C0);		
	}
}

void main()
{
	long data;	
	setup_adc_ports(RA0_ANALOG_RA3_RA2_REF);
	setup_adc(ADC_CLOCK_DIV_64);
	set_tris_b(0);
	set_tris_a(0x0f);
	SETUP_TIMER_1(T1_INTERNAL|T1_DIV_BY_8);
	set_timer1(0xFF06);
	enable_interrupts(INT_TIMER1);
	enable_interrupts(INT_AD);
	enable_interrupts(GLOBAL);
	while(1)
	{
		set_adc_channel(0);
		delay_us(50);
		data=read_adc();
		data=(data*50)/1024;
	//	data=29;
		digit0=data%10;
		digit1=data/10;
		delay_ms(200);
	}
}

⌨️ 快捷键说明

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