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

📄 ejem_34.c

📁 Varios ejemplos para utilizar la PIC 16F876 en assembrer y CCS
💻 C
字号:
//								EJEMPLO 34
//						Autor: Mikel Etxebarria
//			(c) Ingenier韆 de Microsistemas Programados S.L.
//						www.microcontroladores.com
//								Bilbao 2006
//
//El m骴ulo conversor ADC. 
//
//Los dispositivos PIC16F87X disponen de un convertidor A/D de 10 bits de resoluci髇 y 5 u 8 
//canales de entrada anal骻ica. La tensi髇 de referencia determina la resoluci髇 por bit:
//(Res. = Vref/1024). Con 5 Vref=4.8 mV/Bit; con 2.5 Vref=2.4 mV/Bit
//
//El ejemplo propone realizar la conversi髇 de la tensi髇 presente en el canal RA0/AN0. Esta
//se puede variar con el potenci髆etro P1 del laboratorio. El resultado de la conversi髇 se 
//visualiza, en decimal, sobre la pantalla LCD.
	
#include <16f876A.h>

#device ADC=10	//Los ADC de los dispositivos 16F87X devuelven 10 bits

//Ajusta los valores de la palabra de configuraci髇 durante el ensamblaje:
//Protecci髇 de c骴igo y datos=OFF, LVP=OFF, WDT=OFF y OSC=XT

#fuses NOPROTECT,NOCPD,NOLVP,NOWDT,XT

// Con estas directivas las funciones "input" y "output_bit" no reprograman
// el pin de la puerta cada vez que son utilizadas. Si no se indica el
// modo fast_io se asume por defecto standard_io el cual reprograma el pin
// siempre antes de ser utilizadas estas funciones.

#use fast_io (A)
#use fast_io (B)
#use delay(clock=4000000)

#include <lcd2.c>		//Incluye funciones del manejo del LCD

int16 resultado;		//Variable para el resultado de la conversi髇 AD
main()
{  
	lcd_init();		//Inicia la pantalla LCD

//Se activa el ADC y se selecciona el canal RA0/AN0. Frecuencia de trabajo Fosc/32
	
	setup_adc(adc_clock_div_32);	//Ajusta frecuencia de muestreo del ADC

	while(1)
	{	
		setup_adc_ports(AN0);	//RA0 entrada anal骻ica
		set_adc_channel(0);		//Selecci髇 del canal 0 (RA0)
		delay_us(10);			//Temporiza 10uS
		resultado=read_adc();	//Inicia la conversi髇 y lee el resultado
		lcd_enviar(LCD_COMANDO,LCD_HOME);	//Colocar el cursor
		printf(lcd_putc,"%04Lu",resultado);	//Visualiza el resultado

	}
}	

⌨️ 快捷键说明

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