BẠN SỬ DỤNG DS18B20 THỬ SAO,
#include <16F877A.h>
#include <def_877a.h>
#FUSES HS
#use delay (clock=8000000)
#include "LCD.c"
float NHIETDO;
INT16 NHIETDONGUYEN, giantiep;
#INT_RDA
Receive_isr()
{
}
void main()
{
setup_ccp1(CCP_PWM); //khoi tao bo PWM1
setup_ccp2(CCP_PWM); //khoi tao bo PWM2
setup_timer_2(T2_div_by_16,255,1);
enable_interrupts(int_rda);
enable_interrupts(GLOBAL);
lcd_init();
lcd_putc("\f");
while (TRUE)
{
NHIETDO = ds1820_read();
NHIETDONGUYEN = (INT8)NHIETDO ;
set_pwm1_duty(35*(NHIETDONGUYEN - 35));
set_pwm2_duty(0);
lcd_gotoxy(1,1);
printf(lcd_putc,"NHIETDO: %3.1f ", NHIETDO);
lcd_putc(223);
lcd_putc("C ");
}
}
|