Tải bản đầy đủ - 22 (trang)
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 đủ - 22trang

ĐỒ Á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



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

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

Tải bản đầy đủ ngay(22 tr)

×