Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (790.86 KB, 33 trang )
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
}
// ham khai bao dung ngat timer 0& 1
void Setup_Timer0(void)
{
TMOD = 0x11;
// timer0 & 1 : CHE DO 1
TH0 = 0xEC;
TL0 = 0x77;
TH1 = 0x3C;
TL1 = 0xAF;
ET0 = 1;
ET1 = 1;
EA = 1;
TF0 = 0;
TF1 = 0;
TR0 = 1;
TR1 = 1;
}
// ham ngat timer 0
void T0_ISR(void)
== quet led
interrupt1
{ TR0 = 0;
TH0 = 0xEC;
TL0 = 0x76;
if (td == 0)
{// qui doi gia tri
if (d1)
{
n1 = tg_d1 / 10;
n2 = tg_d1 % 10;
};
if (x1)
{
n1 = tg_x1 / 10;
n2 = tg_x1 % 10;
};
Đồ Án Môn Học Vi Xử Lý
23
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
if (v1){
n1 = tg_v1 / 10;
n2 = tg_v1 % 10;
};
if (d2)
{
n3 = tg_d2 / 10;
n4 = tg_d2 % 10;
};
if (x2){
n3 = tg_x2 / 10;
n4 = tg_x2 % 10;
};
if (v2){
n3 = tg_v2 / 10;
n4 = tg_v2 % 10;
};
P2_7 = 1; // KHOA TRANZITOR
P2_6 = 1;
P2_5 = 1;
P2_4 = 1;
dem++;
if (dem == 1)
{
P0 = bang_ma[n1];
P2_7 = 0;
};
if (dem == 2)
{
P0 = bang_ma[n2];
P2_6 = 0;
};
if (dem == 3)
Đồ Án Môn Học Vi Xử Lý
24
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
{
P0 = bang_ma[n3];
P2_5 = 0;
};
if (dem == 4) {
P0 = bang_ma[n4];
P2_4 = 0;
dem = 0;
};
}
else
{
P2_7 = 1;
P2_6 = 1;
P2_5 = 1;
P2_4 = 1;
}
TF0 = 0;
TR0 = 1;
}
// ham ngat timer 1 = tạo clock
void T1_ISR(void)
interrupt
3
{
TR1 = 0;
TH1 = 0x3C; //TIMER 1 CHAY TU 15.535 DEN 65.535 = 50.000 MICRO
SECOND TUONG UNG 1 LAN TIMER1 1 TRÀN
TL1 = 0xAF;
time++;
if (time == 20)
{
time = 0;
if (td == 0)
{
// nga tu 1
Đồ Án Môn Học Vi Xử Lý
25
Trường CĐ CNTT Hữu Nghị Việt - Hàn
if (d1)
tg_d1--;
if (v1)
tg_v1--;
if (x1)
Hệ Thống Đèn Giao Thông
tg_x1--;
if (tg_d1 < 0)
{
if (bt)
tg_x1 = 20;
if (cd)
tg_x1 = 30;
tg_d1 = 0;
d1 = 0;
x1 = 1;
LED_D_1 = 1; // OFF
LED_X_1 = 0; // ON
LED_DBX1 = 1;
LED_DBD1 = 0;
LED_DBX2 = 0;
LED_DBD2 = 1;
};
if (tg_x1 < 0) {
tg_v1 = 3;
tg_x1 = 0;
x1 = 0;
v1 = 1;
LED_X_1 = 1;
LED_V_1 = 0;
LED_DBX1 = 1;
LED_DBD1 = 0;
LED_DBX2 = 0;
LED_DBD2 = 1;
};
if (tg_v1 < 0) {
if (bt)
tg_d1 = 24;
if (cd)
tg_d1 = 34;
Đồ Án Môn Học Vi Xử Lý
26
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
tg_v1 = 0;
v1 = 0;
d1 = 1;
LED_V_1 = 1;
LED_D_1 = 0;
LED_DBX1 = 0;
LED_DBD1 = 1;
LED_DBX2 = 1;
LED_DBD2 = 0;
};
// nga tu 2
if (d2)
tg_d2--;
if (v2)
tg_v2--;
if (x2)
tg_x2--;
if (tg_d2 < 0)
{
if (bt)
tg_x2 = 20;
if (cd)
tg_x2 = 30;
tg_d2 = 0;
d2 = 0;
x2 = 1;
LED_D_2 = 1;
LED_X_2 = 0;
LED_DBX1 = 0;
LED_DBD2 = 0;
LED_DBX2 = 1;
LED_DBD1 = 1;
};
if (tg_x2 < 0) {
tg_v2 = 3;
tg_x2 = 0;
x2 = 0;
Đồ Án Môn Học Vi Xử Lý
27
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
v2 = 1;
LED_X_2 = 1;
LED_V_2 = 0;
LED_DBX1 = 0;
LED_DBD2 = 0;
LED_DBX2 = 1;
LED_DBD1 = 1;
};
if (tg_v2 < 0) {
if (bt)
tg_d2 = 24;
if (cd)
tg_d2 = 34;
tg_v2 = 0;
v2 = 0;
d2 = 1;
LED_V_2 = 1;
LED_D_2 = 0;
LED_DBX1 = 1;
LED_DBD1 = 0;
LED_DBX2 = 0;
LED_DBD2 = 1;
};
}
else
{
LED_V_1 = !LED_V_1;
LED_V_2 = !LED_V_2;
}
};
TF1 = 0;
TR1 = 1;
}
// chuong trinh chinh
void main(void)
Đồ Án Môn Học Vi Xử Lý
{
28
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
dem = 0;
time = 0;
bt = 1;
cd = td = 0;
tg_d1 = tg_d2 = 24;
tg_x1 = tg_x2 = 20;
d1 = 1;
v1 = x1 = 0;
x2 = 1;
v2 = d2 = 0;
LED_D_1 = 0;
LED_X_2 = 0;
LED_DBX1 = 0;
LED_DBD1 = 1;
LED_DBX2 = 1;
LED_DBD2 = 0;
Setup_Timer0();
while(1)
{
// phim cao diem
if (!P1_0)
{
while(!P1_0);
delay(10);
tg_d1 = tg_d2 = 34;
tg_x1 = tg_x2 = 30;
cd = 1;
td = bt = 0;
d1 = 1;
v1 = x1 = 0;
x2 = 1;
v2 = d2 = 0;
OFF_LED;
LED_D_1 = 0;
Đồ Án Môn Học Vi Xử Lý
29
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
LED_X_2 = 0;
LED_DBX1 = 0;
LED_DBD1 = 1;
LED_DBX2 = 1;
LED_DBD2 = 0;
};
// phim binh thuong
if (!P1_1)
{
while(!P1_1);
delay(10);
tg_d1 = tg_d2 = 24;
tg_x1 = tg_x2 = 20;
bt = 1;
cd = td = 0;
d1 = 1;
v1 = x1 = 0;
x2 = 1;
v2 = d2 = 0;
OFF_LED;
LED_D_1 = 0;
LED_X_2 = 0;
LED_DBX1 = 0;
LED_DBD1 = 1;
LED_DBX2 = 1;
LED_DBD2 = 0;
};
// phim thap diem
if (!P1_2)
{
while(!P1_2);
delay(10);
OFF_LED;
td = 1;
Đồ Án Môn Học Vi Xử Lý
30
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
cd = bt = 0;
};
}
}
Đồ Án Môn Học Vi Xử Lý
31
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
KẾT LUẬN
Đồ Án Môn Học Vi Xử Lý
32
Trường CĐ CNTT Hữu Nghị Việt - Hàn
Hệ Thống Đèn Giao Thông
TÀI LIỆU THAM KHẢO
[1] Tống Văn On – Hoàng Đức Hải, Họ Vi Điều Khiển 8051, Nhà Xuất Bản Lao
Động – Xã Hội.
[2] R.H.WARRING, Sổ Tay Linh Kiện Điện Tử Cho Người Thiết Kế Mạch, NXB
Thống Kê, 1996.
[3] Website: dientuvietnam.net
[4] Website: dientuvienthong.net
[5] Website: dtvt.org
Đồ Án Môn Học Vi Xử Lý
33