Vous êtes sur la page 1sur 2

#include <16f877a.

h>

#device adc=10

#fuses xt, nowdt, noprotect

#use delay(clock=4m)

#include <lcd.c>

void main() {

int16 fotoresistencia;

int16 luminosidad;

float voltaje;

set_tris_b(0x00);

output_b (0b00000);

set_tris_a(0b00000111);

setup_adc_ports(all_analog);

setup_adc(adc_clock_internal);

lcd_init();

while (true)

set_adc_channel(0);

delay_us(20);

fotoresistencia=read_adc();

voltaje=(5.0*fotoresistencia)/1024.0;

luminosidad = (100 * voltaje)/5;

if(luminosidad < 40){

output_high(pin_b0);

printf(lcd_putc,"\f nivel luz=%ld %%\n ",luminosidad);

printf(lcd_putc,"bombillo on ");

else{

output_low(pin_b0);
printf(lcd_putc,"\f nivel luz=%ld %%\n",luminosidad);

printf(lcd_putc,"bombillo off ");

delay_ms(1000);

Vous aimerez peut-être aussi