Tải bản đầy đủ
3 Những vấn đề đạt được và không đạt được:

3 Những vấn đề đạt được và không đạt được:

Tải bản đầy đủ

ĐỒ ÁN 2
trang 18 / 20

TÀI LIỆU THAM KHẢO
Tiếng việt
[1] Sử dụng cảm biến nhiệt độ LM35Tại diễn đàn http://arduino.vn
[2] Điều khiển LCD người đăng robotchomoingui tại youtube trannel
[3] Thông tin cơ bản về linh kiện điện tử tại trang web tae.vn
[4] Cảm biến siêu âm hồng ngoại, ánh sáng ,nhiệt độ của Thanh Dâng Nguyễn tại
youtube trannel

CLASS SMART ROOM

NGUYỂN DANH TIẾN

ĐỒ ÁN 2
trang 19 / 20

PHỤ LỤC
Code chương trình:
#include
#include
#include
#define cb1 PINB.0
#define cb2 PINB.1
#define LDR PINB.2
#define den PORTC.3
#define quat PORTC.2
#define ADC_VREF 0xe0 //Lay ap 2.56V, ADLAR=1
unsigned char soNguoi = 0,chuc = 0,dv = 0,nhiet_do = 0;
unsigned char read_adc(unsigned char adc_input){
ADMUX=adc_input | ADC_VREF; //Chon kenh ADC va ap so sanh
ADCSRA|=0x40; //Start ADC
while (!(ADCSRA & 0x10)); //Kiem tra co ADC
ADCSRA|=0x10;
return ADCH; //ADC 8bit
}
void temp(unsigned char z){ //Chuyen doi hien thi
lcd_puts("T:");
lcd_putchar((z%100/10)+48);
lcd_putchar((z%10)+48);
lcd_puts("oC");

CLASS SMART ROOM

NGUYỂN DANH TIẾN

ĐỒ ÁN 2
trang 20 / 20

}
void HTsoNguoi(unsigned char x){
lcd_puts("SN:");
lcd_putchar((x/10)+48);
lcd_putchar((x%10)+48);
}
void TrangThai(){
lcd_gotoxy(0,1);
lcd_puts("Den:");
if(den == 0)lcd_puts("ON ");else lcd_puts("OFF");
lcd_gotoxy(8,1);
lcd_puts("Quat:");
if(quat == 0)lcd_puts("ON ");else lcd_puts("OFF");
}
void main(void){
PORTB=0x00;
DDRB=0x00;
DDRC = 0x0c;
cb1 = cb2 = 1;
LDR = 0;
den = 1;
quat = 1;
LDR = 1;
ADMUX=ADC_VREF;

CLASS SMART ROOM

NGUYỂN DANH TIẾN

ĐỒ ÁN 2
trang 21 / 20

ADCSRA=0x86; //Fosc/64
lcd_init(16);
lcd_puts("Mach Dem Nguoi");
delay_ms(2000);
lcd_clear();
while (1){
lcd_gotoxy(0,0);
nhiet_do = read_adc(0);
temp(nhiet_do);
lcd_gotoxy(10,0);
HTsoNguoi(soNguoi);
TrangThai();

if(nhiet_do > 35)quat = 0;else quat = 1;
if(cb1 == 0)
{
while(cb2 == 1){}
if(soNguoi < 100)soNguoi++;
while(cb2 == 0){}
}
if(cb2 == 0)
{
while(cb1 == 1){}
if(soNguoi > 0)soNguoi--;

CLASS SMART ROOM

NGUYỂN DANH TIẾN

ĐỒ ÁN 2
trang 22 / 20

while(cb1 == 0){}
}
if(LDR == 0)den = 1;
else
{
if(soNguoi > 0)den = 0;else den = 1;
}
}
}

CLASS SMART ROOM

NGUYỂN DANH TIẾN