1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị

20 1,1K 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 0,97 MB

Nội dung

Trong thực tế các bộ Vi Điều Khiển được ứng dụng vào mọi lĩnh vực của đời sống từ các thiết bị nhỏ như điện thoại di động , máy nhắn tin, trò chơi điện tử , các thiết bị gia dụng như má

Trang 1

Ngành kỹ thuật Điện tử hiện nay đang phát triển mạnh mẽ , kỹ thuật Vi Điều Khiển đã trở nên quen thuộc trong các nghành kỹ thuật và trong dân dụng Trong thực tế các bộ Vi Điều Khiển được ứng dụng vào mọi lĩnh vực của đời sống từ các thiết bị nhỏ như điện thoại di động , máy nhắn tin, trò chơi điện tử , các thiết bị gia dụng như ( máy giặt, điều hoà , tủ lạnh…) đến những thiết bị có quy mô lớn như các bộ điều khiển tự động trong các nhà máy , xi nghiệp, hệ thống thông tin liên lạc… Vi điều khiển đã góp phần đưa con người đến đỉnh cao của nhân loại

Qua quá trình học lý thuyết cũng như đi thực hành chúng em được sự chỉ bảo tận tình của các thầy cô trong Khoa Để nắm được kiến thức sâu hơn chúng em được các thầy giao cho làm đồ án môn học nhằm nghiên cứu và học hỏi nhiều hơn nữa

Dưới đây chúng em xin giới thiệu một ứng dụng nhỏ của Vi Điều Khiển 8051

( cụ thể là vi điều khiển AT89S52) mà các thầy đã giao cho với đề tài: “ THIẾT

KẾ BỘ HẸN GIỜ DÙNG CHO 1 THIẾT BI.” Đây là một ứng dụng nhỏ của

Vi Điều Khiển nhưng được sử dụng rất nhiều trong chuyên nghành Điện _ Điện tử

Đồ án đã hoàn thành, song cũng không thể tránh nổi những sai sót và thiếu sót Chúng em rất mong được sự đóng góp ý kiến quý báu của các thầy cô cùng các bạn để đề tài lần sau được hoàn chỉnh hơn nữa

Chúng em xin chân thành cám ơn!

Hà Nội ngày :07/2/2010

ĐỀ THI KẾT THÚC HỌC PHẦN

Đề Số :07

Môn Học: Vi Điều Khiển Hình Thức : Làm Bài Tập Lớn

Số Lượng Sinh Viên : 03

Trang 2

STT Họ và Tên Sinh Viên Lớp / Khoa Ghi chú

1

ĐINH HUY BẮC CDT _K9

2

ĐÀO MINH KHA CDT _K9

3

MAI QUANG TIẾN CDT _K9

NỘI DUNG ĐỀ TÀI :THIẾT KẾ MẠCH HẸN GIỜ CHO MỘT THIẾT BỊ

A Cơ Sở Lý Thuyết

I Giới thiệu tổng quan về họ vi điều khiển 8051

Họ vi điều khiển 8051 là một trong những họ vi điều khiển thông dụng nhất Đây

là họ vi điều khiển được sản xuất theo công nghệ CMOS Có tốc độ cao và công suất thấp, bộ nhớ Flash có thể lập trình được

1 Sơ đồ khối của AT89S52

Trang 3

 4 Kbyte bộ nhớ Flash có thể lập trình lặp vơi 1000 chu kỳ đọc xoá

 Hoạt động tĩnh đầy đủ : Từ 0 HZ đến 24 MHZ

 Khoá bộ nhớ chương trình ba cấp

 128x8 bit RAM nội

 32 đường xuất nhập lập trình được

 Hai timer / counter khoong bit

 Một port nối tiếp sang công có thể lập trình được

 Mạch đồng hồ và bộ dao động trên chíp

3 Sơ đồ chân và chức năng của AT89S52

Như vậy theo sơ đồ trên AT89S52 có 40 chân mỗi chân có chức năng như các đường I/O (xuất nhập ) , trong đó 24 chân có công dụng kép,mỗi đường có thể hoạt động như một đường I/O hoặc như đường điều khiển hoặc như thành phần của bus điều khiển và bus dữ liệu

3.1 Port 0 ( P0.0- P0.7)

Trang 4

Port 0 gồm 8 chân, ngoài các chức năng xuất nhập, Port 0 còn là bus đa hợp

dữ liệu và địa chỉ(AD0-AD7), chức năng này sẽ được sử dụng khi 8051 giao tiếp với các thiết bị ngoài có kiến trúc bus như các vi mạch nhớ, mạch nhớ PIO…

3.2 Port 1 ( P1.0- P1.7)

Port 1 có chức năng xuất nhập theo bit và byte Ngoài ra, ba chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn ISP, hai chân P1.0, và P1.1 được dùng cho bộ Timer 2

Trang 5

3.3 Port 2 (P2.0-P2.7)

Là một port có công dụng kép, là đường xuất nhập hoặc là byte cao của bus dịa chỉ đối vớo các thiết bị đồng bộ nhớ mở rộng

3.4 Port 3 (P3.0- P3.7)

Mỗi chân trên Port 3 ngoai chớc năng xuất nhập còn có chớc năng riêng,

cụ thể như sau :

Bit Tên Chức năng

P3.0 RXD Dữ liệu nhận cho port nối tiếp

P3.1 TXD Dữ liệu truyền cho port nối tiếp

P3.2 INT0 Ngắt bên ngoài 0

P3.3 INT1 Ngắt bên ngoài 1

P3.4 T0 Ngõ vào của Timer/counter 0

P3.5 T1 Ngõ vào của Timer/ counter 1

P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài

P3.7 /RD Xung đọc bộ nhớ dữ liệu ngoài

3.5 Chân /PSEN ( Program store Enable)

/PSEN là chân điều khiển đọc chương trình ở bộ nhớ ngoài, nó được nối với chân /OE để cho phép đọc các byte mã lệnh trên ROM ngoài /PSEN sẽ ở mức thấp trong thời gian đọc mã lệnh Mã lẹnh được đọc từ bộ nhớ ngoài qua bus dữ liệu (Port 0) thanh ghi lệnh để được giải mã Khi thực hiện chương trình trong ROM nội thì /PSEN ở mức cao

Trang 6

3.6 Chân ALE (Address Latch Enable)

ALE là tín hiệu điều chỉnh chốt địa chỉ có tần số bằng 1/6 tần số dao động của

vi điều khiển tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như

74373, 74573 chốt byte địa chỉ thấp ra khỏi bus đa hợp địa chỉ / dữ liệu (Port 0)

3.7 Chân /EA (External Access)

Tín hiệu /EA cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài vi điều khiển Nếu EA ở mức cao (nối với Vcc), thì vi điều khiển thi hành chương trình trong ROM nội Nếu /EA ở mức thấp (nối với GND), thì vi điều khiển thi hành chương trình từ bộ nhớ ngoài

3.8 RST (Reset)

Ngõ vào RST trên chân 9 la f ngõ Reset của 8051 Khi tín hiệu này được đưa lên mức cao , các thanh ghi trong bộ vi điều khiển được tải những giá trị thích hợp

để khởi động hệ thống

3.9 XTAL1, XTAL2

AT89S52 có một bộ dao động trên chíp, nó thường được nối với với bộ dao động bằng thạch anh có tần số lớn nhất là 33MHZ, thông thường là 12MHZ

Hình trên là cách nối bộ dao động thạch anh

3.10 Vcc, GND

AT89s52 dùng nguồn điện áp một chiều có dải điện áp từ 4v đến 5,5v được cấp qua chân 20 và 40

Trang 7

IC 7805

Dung để biến đổi nguồn cấp vào nó là 12V thành 5V.Để cung cấp cho mạch

B Bản thiết kế đề tài mạch hẹn giờ dung cho một thiết bị

Khối khuếch đại-chuyển đổi

Khối

Motor 1 chiều

Trang 8

Hình 1:sơ đồ nguyên lý khối nguồn

Dòng điện 12v vào chân (CON2) sau đó cho qua bộ ổn áp( IC 7805) được điện áp + 5v ổn định cấp cho : Vi điều khiển AT89s52,

Trong sơ đồ gồm có diot dung để ngăn dòng điện chạy ngược lại

C4,C5 dùng để lọc dòng điện soay chiều va cho ra dòng một chiều

Khi dòng qua LM 7805 ra được điên áp 5v và cấp nguồn cho vi điều khiển khi đo LED d4 sáng để nhận biết dòng điện

2 KHỐI ROLE

ROLE là thiết bị điện tự động mà tín hiệu ra thay đổi cấp khi tín hiệu đầu vào đạt những giá trị xác định

ROLE là thiết bị điện dung để đóng cắt mạch điện điều khiển bảo vệ và điều khiển sự làm việc của mach điện

Các bộ phận chính trong ROLE

Cơ cấu tiếp thu : có nhiệm vụ nhận những tín hiệu đầu vào và biến đổi nó thành đại lượng cần thiết cung cấp tín hiệu phù hơp cho khối trung gian

Cơ cấu trung gian : làm nhiềm vụ nhận nhưng tín hiệu đưa đến từ khối tiếp thu và biến đổi nó thành đại lương cần thiết

Cơ cấu chấp hành : làm nhiêm vụ phát tín hiệu cho mạch vi điều khi

Trang 9

SƠ ĐỒ CHÂN LED

Ta sử dụng 2 con led 7seg dung để hiển thi

2 led này là led anot

2 led này thông qua 8 transitor để cấp nguồn cho led

Vì nguồn sử dụng trong vi điều khiển không đủ để cấp nguồn cho led

3.SƠ ĐỒ TOÀN MẠCH

Trang 10

Trong mạch gồm có 4 nút ấn điều khiển và một nút ấn reset lại toàn bộ

chương trình

4 nút ấn trong đó dung để điều khiển led đếm tiến hay đếm lùi

Trang 11

5 SƠ ĐỒ MẠCH MÔ PHỎNG

Trang 12

6 CHƯƠNG TRÌNH NẠP CHO VI ĐIỀU KHIỂN

#include <REGX52.H>

#include <RTX51TNY.H>

sbit OK=P3^0; //OK

sbit MODE=P3^1;//MODE

sbit UP=P3^2;//UP

sbit DOW=P3^3;//DOW

Trang 13

sbit l5=P2^4;

sbit l4=P2^3;

sbit l3=P2^2;

sbit l2=P2^1;

sbit l1=P2^0;

sbit role=P3^7;

unsigned char so1,so2,so3,so4,so5,so6,so7,so8;

unsigned char font[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

// font led7 thanh

unsigned int a=0,sec=0,min=0,hour=0,b=0,c=0,d,i;

void time (void) _task_ 1 //chay thoi gian thuc

{

while(1)

{

os_wait(K_TMO,10,0);

a ;

if(a==-1)

{

sec ;

if(sec==-1)

{ min ;

if(min==-1)

{ hour ;

if(hour==0)hour=0;

min=59;

} sec=59;

} a=9;

}

}

}

void key (void)

{

if(OK==0) //chay chuong trinh

Trang 14

b++;

if(b==2) b=0;

} if(MODE==0) //lua chon chinh

{ while(MODE==0){;}

c++;

if(c==4) c=0;

} }

void delay(void) //ham tre quet led 7

{

for(i=0;i<100;i++);

}

//set time

void set_time(void)

{

switch (c)

{

case 0://HOUR

{ key();

if(UP==0)

{

while(UP==0){;}

hour++;

if(hour==24) hour=0;

}

if(DOW==0)

{

while(DOW==0){;}

hour ;

if(hour==-1) hour=23;

}

so1=hour/10;

so2=hour%10;

for(d=0;d<10;d++)

{

Trang 15

l2=0;

l1=l3=l4=l5=l6=l7=l8=1; P0=font[so2];

delay();

} break;

}

case 1: //MIN

{ key();

if(UP==0)

{

while(UP==0){;}

min++;

if(min==60) min=0;

}

if(DOW==0)

{

while(DOW==0){;}

min ;

if(min==-1) min=59;

}

so3=min/10;

so4=min%10;

for(d=0;d<10;d++) {

l3=0;

l2=l1=l4=l5=l6=l7=l8=1;

P0=font[so3];

delay();

l4=0;

l2=l3=l1=l5=l6=l7=l8=1;

P0=font[so4];

delay();

} break;

}

Trang 16

{ key();

if(UP==0)

{

while(UP==0){;}

sec++;

if(sec==60) sec=0;

}

if(DOW==0)

{

while(DOW==0){;}

sec ;

if(sec==-1) sec=59;

}

so5=sec/10;

so6=sec%10;

for(d=0;d<10;d++) {

l5=0;

l2=l1=l4=l3=l6=l7=l8=1;

P0=font[so5];

delay();

l6=0;

l2=l3=l1=l5=l4=l7=l8=1;

P0=font[so6];

delay();

} break;

}

case 3: //a { key();

if(UP==0)

{

while(UP==0){;}

a++;

if(a==10) a=0;

}

if(DOW==0)

{

while(DOW==0){;}

Trang 17

so7=a/10;

so8=a%10;

for(d=0;d<10;d++) {

l7=0;

l2=l1=l4=l5=l6=l3=l8=1;

P0=font[so7];

delay();

l8=0;

l2=l3=l1=l5=l6=l7=l4=1;

P0=font[so8];

delay();

} break;

} }

}

void hien_thi (void) _task_ 2 //hien thi led 7

{

while(1)

{

key();

while(b==0)//vao chuong trinh set

{ role=0;

os_delete_task (1);//xoa task 1

key();

set_time();

}

key();

while(b==1)//chay chuong trinh

{

key();

if((hour!=0)||(min!=0)||(sec!=0)||(a!=0)) {

os_create_task(1);//khoi tao task 1 role=1;

Trang 18

if((hour==0)&&(min==0)&&(sec==0)&&(a==0))//dung chuong trinh khi chay het

{ os_delete_task (1);//xoa task 1 role=0;

} so1=hour/10;

so2=hour%10;

so3=min/10;

so4=min%10;

so5=sec/10;

so6=sec%10;

so7=a/10;

so8=a%10;

for(d=0;d<10;d++ ) {

l1=0;

l2=l3=l4=l5=l6=l7=l8=1;

P0=font[so1];

delay();

l2=0;

l1=l3=l4=l5=l6=l7=l8=1;

P0=font[so2];

delay();

l3=0;

l2=l1=l4=l5=l6=l7=l8=1;

P0=font[so3];

delay();

l4=0;

l2=l3=l1=l5=l6=l7=l8=1;

P0=font[so4];

delay();

l5=0;

l2=l3=l1=l4=l6=l7=l8=1;

Trang 19

l2=l3=l1=l5=l4=l7=l8=1;

P0=font[so6];

delay();

l7=0;

l2=l3=l1=l5=l6=l4=l8=1;

P0=font[so7];

delay();

l8=0;

l2=l3=l1=l5=l6=l7=l4=1;

P0=font[so8];

delay();

} }

}

}

void start_up (void) _task_ 0

{

os_create_task(1);

os_create_task(2);

os_delete_task (0);

}

CHÚNG EM XIN KẾT THÚC CHƯƠNG TRÌNH TAI ĐÂY

CÓ GÌ THIẾU SÓT MONG ĐƯỢC THẦY CÔ VÀ BẠN BÈ GIÚP ĐỠ

Trang 20

VI Tài liệu tham khảo

1.vi điều khiển NXB GIÁO DỤC

(cấu trúc -lập trình và ứng dụng)

2.vi điều khiển TỐNG VĂN ON

Ngày đăng: 13/05/2016, 23:00

HÌNH ẢNH LIÊN QUAN

1. Sơ đồ khối của AT89S52 - Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị
1. Sơ đồ khối của AT89S52 (Trang 2)
3. Sơ đồ chân và chức năng của AT89S52 - Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị
3. Sơ đồ chân và chức năng của AT89S52 (Trang 3)
Hình trên là cách nối bộ dao động thạch anh 3.10 Vcc, GND - Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị
Hình tr ên là cách nối bộ dao động thạch anh 3.10 Vcc, GND (Trang 6)
SƠ ĐỒ CHÂN LED - Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị
SƠ ĐỒ CHÂN LED (Trang 9)
5. SƠ ĐỒ MẠCH MÔ PHỎNG - Đồ Án Vi Điều Khiển - Thiết Kế Bộ Hẹn Giờ Dùng Cho 1 Thiết Bị
5. SƠ ĐỒ MẠCH MÔ PHỎNG (Trang 11)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w