Tải bản đầy đủ (.docx) (30 trang)

mạch đèn giao thông ở ngã 4

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 (396.53 KB, 30 trang )

BẢNG NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Giáo viên hướng dẫn: NGUYỄN HUY HÙNG
Sinh viên thực hiện: PHAN THANH LỢI
Lớp: 08DDT1
MSSV: 0851010037
Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH ĐÈN GIAO THÔNG













Điểm đánh giá : Xếp loại:
TP. Hồ Chí Minh, ngày tháng năm 2011
Giáo viên hướng dẫn
(Ký và ghi rõ họ tên)
1
BẢNG NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Giáo viên phản biện :
Họ tên sinh viên: PHAN THANH LỢI
Lớp: 08DDT1
MSSV: 0851010037
Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH ĐÈN GIAO THÔNG















Điểm đánh giá : Xếp loại:
TP. Hồ Chí Minh, ngày tháng năm 2011
Giáo viên phản biện
(Ký và ghi rõ họ tên)
2
- Lời đầu tiên em xin chân thành cảm ơn thầy Nguyễn Huy Hùng cùng quý
thầy cô bộ môn khoa Cơ-Điện-Điện Tử Trường Đại Học Kỹ Thuật Công Nghệ
Thành Phố Hồ Chí Minh.
- Trong quá trình thực hiện đồ án em gặp không ít khó khăn và thiếu sót.
Nhưng được sự hướng dẫn và chỉ dạy nhiệt tình của quý thầy cô đã giúp em khắc
phục được những thiếu sót đó và có thể hoàn thành được đề tài đúng thời hạn,
giúp em học tốt hơn.
- Do kiến thức của em còn hạn chế nên trong đồ án còn nhiều sai xót em
rất mong được sự thông cảm của quý thầy cô. Chúng Em xin chân thành cảm ơn.
Thành phố Hồ Chí Minh, tháng 5 năm 2011
Sv thực hiện: Phan Thanh Lợi
Lớp: 08DDT1

MSSV: 0851010037
3
LỜI CẢM ƠN
CHƯƠNG 1: GIỚI THIỆU CHUNG
I/ GIỚI THIỆU ĐỀ TÀI :
1/ Các chế độ hoạt động:
 Chế độ bình thường: đèn xanh ở 2 hướng bằng nhau.
 Chế độ ưu tiên: đèn xanh ở đường ưu tiên dài hơn đường không ưu tiên.
 Chế độ đèn vàng nhấp nháy ở cả 2 hướng
 Có 4 led 7 đoạn hiển thị thời gian đếm ngược ở 2 ngã đường.
 Có hệ thống led đơn hiển thị cho các đèn xanh, đèn vàng, đèn đỏ tại các ngã tư thực.
 Hệ thống nút nhấn: gồm 4 nút
 1 nút chuyển chế độ bình thường.
 1 nút chuyển chế độ ưu tiên hướng A
 1 nút chuyển chế độ ưu tiên hướng B
 1 nút chuyển chế độ nhấp nháy đèn vàng
Ngoài ra còn có 1 nút reset các chế độ
2/ Các linh kiện sử dụng:
 Vi xử lí AT89S52.
 Hiển thị: Các led 7 đoạn (anode chung), các led đơn xanh, vàng, đỏ.
 Các transistor A1015(PNP), để khuyếch đại và điều khiển.
 Nút nhấn điểu khiển.
 Điện trở thanh và các điện trở cần dùng.
II/ ỨNG DỤNG:
Một ứng dụng cơ bản của mạch đèn giao thông ngày nay là giải quyết vấn đề nạn
kẹt xe, đang diễn ra hàng ngày trong các tỉnh thành có mật độ dân số lớn như thành
phố Hồ Chí Minh… mà các nhà chức năng đang phải đâu đầu hiện nay.
4
CHƯƠNG 2: LINH KIỆN VÀ KIẾN THỨC BỔ TRỢ
1. VI ĐIỀU KHIỂN AT89S52

1.1 Giới thiệu:
AT89S52 là vi điều khiển do hãng Intel sản xuất,chế tạo theo công nghệ CMOS. Có các
đặc tính sau:
 8K Bytes of In-System Programmable (ISP) Flash Memory, có khả năng tới
1000 chu kỳ ghi/xoá
 Điện áp hoạt động từ: 4.0 đến 5.5V
 Tần số hoạt động từ: 0Hz đến 33 MHz
 Có 3 mức khóa bộ nhớ lập trình
 256 x 8-bit RAM nội
 4 Port xuất /nhập I/O 8 bit.
 3 bộ Timer/counter 16 Bit.
 8 nguồn ngắt.
 Có khả năng giao tiếp nối tiếp và song song qua đường SPI
 64 KB vùng nhớ mã ngoài
 64 KB vùng nhớ dữ liệu ngoài.
 Xử lý Boolean
1.2 Sơ đồ khối của họ vi điều khiển 8051
5
1.3 Chức năng từng chân:
 Port 0: là port hai chức năng ở các chân 32 đến 39 của AT89S52:
 Chức năng IO (xuất / nhập): dùng cho các thiết kế nhỏ (không
dùng bộ nhớ ngoài ). đối với các thiết kế lớn với bộ nhớ ngoài, port
0 được dồn kênh giữa bus dữ liệu (D0: D7) và byte thấp của bus
địa chỉ (A0:A7).
 Khi dùng làm ngõ vào, Port 0 phải được set mức logic 1 trước đó.
 Chức năng địa chỉ / dữ liệu đa hợp: khi dùng các thiết kế lớn, đòi
hỏi phải sử dụng bộ nhớ ngoài thì Port 0 vừa là bus dữ liệu (8 bit)
vừa là bus địa chỉ (8 bit thấp).
 Ngoài ra khi lập trình cho AT89S52, Port 0 còn dùng để nhận mã
khi lập trình và xuất mà khi kiểm tra (quá trình kiểm tra đòi hỏi

phải có điện trở kéo lên).
 Port1 (chân 1 – 8): chỉ có một chức năng là I/O, không dùng cho mục
đích khác (chỉ trong 8032/8052/8952 thì dùng thêm P1.0 và P1.1 cho bộ
định thời thứ 3). Tại Port 1 đã có điện trở kéo lên nên không cần thêm
điện trở ngoài.
 Port 1 có khả năng kéo được 4 ngõ TTL và còn dùng làm 8 bit địa
chỉ thấp trong quá trình lập trình hay kiểm tra.
 Port 2 (chân 21 – 28) là port có 2 chức năng:
 Chức năng IO (xuất / nhập)
 Chức năng địa chỉ: dùng làm 8 bit địa chỉ cao khi cần bộ nhớ ngoài
có địa chỉ 16 bit. Khi đó, Port 2 không được dùng cho mục đích
I/O.
Khi dùng làm ngõ vào, Port 2 phải được set mức logic 1 trước đó.
Khi lập trình, Port 2 dùng làm 8 bit địa chỉ cao hay một số tín hiệu
điều khiển.
 Port 3 (chân 10 – 17): là port có 2 chức năng:
 Chức năng I/O.
6
 Chức năng khác: ta có bảng chức năng của từng chân sau:
Bit Tên Chức năng
P3.0 RxD Ngõ vào port nối tiếp
P3.1 TxD Ngõ ra port nối tiếp
P3.2 INT0 Ngắt ngoài 0
P3.3 INT1 Ngắt ngoài 1
P3.4 T0 Ngõ vào của bộ định thời 0
P3.5 T1 Ngõ vào của bộ định thời 1
P3.6 WR
Tín hiệu điều khiển ghi dữ liệu lên bộ nhớ ngoài.
P3.7 RD
Tín hiệu điều khiển đọc từ bộ nhớ dữ liệu ngoài.

 Nguồn:
Chân 40: VCC = 5V ± 20%
Chân 20: GND
 PSEN (Program Store Enable):
 PSEN (chân 29) cho phép đọc bộ nhớ chương trình mở rộng đối
với các ứng dụng sử dụng ROM ngoài, thường được nối đến chân
OC (Output Control) của ROM để đọc các byte mã lệnh. PSEN sẽ
ở mức logic 0 trong thời gian AT89S52 lấy lệnh. Trong quá trình
này, PSEN sẽ tích cực 2 lần trong 1 chu kỳ máy.
 Mã lệnh của chương trình được đọc từ ROM thông qua bus dữ liệu
(Port0) và bus địa chỉ (Port0 + Port2).
 Khi 8952 thi hành chương trình trong ROM nội, PSEN sẽ ở mức
logic 1.
 ALE/PROG (Address Latch Enable / Program):
 ALE/PROG (chân 30) cho phép tách các đường địa chỉ và dữ liệu
tại Port 0 khi truy xuất bộ nhớ ngoài. ALE thường nối với chân
Clock của IC chốt (74373, 74573).
 Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên
chip và có thể được dùng làm tín hiệu clock cho các phần khác của
hệ thống.
 Xung này có thể cấm bằng cách set bit 0 của SFR tại địa chỉ 8Eh
lên 1. Khi đó, ALE chỉ có tác dụng khi dùng lệnh MOVX hay
7
MOVC. Ngoài ra, chân này còn được dùng làm ngõ vào xung lập
trình cho ROM nội ( PROG).
 EA /VPP (External Access) :
 EA (chân 31) dùng để cho phép thực thi chương trình từ ROM
ngoài. Khi nối chân 31 với Vcc, AT89S52 sẽ thực thi chương trình
từ ROM nội (tối đa 8KB), ngược lại thì thực thi từ ROM ngoài (tối
đa 64KB).

 Ngoài ra, chân EA được lấy làm chân cấp nguồn 12V khi lập trình
cho ROM.
 RST (Reset):
 RST (chân 9) cho phép reset
AT89S52 khi ngõ vào tín hiệu
đưa lên mức 1 trong ít nhất là 2
chu kỳ máy.
 XTAL1,XTAL2:
 Ngõ vào và ngõ ra bộ dao
động, khi sử dụng có thể chỉ cần kết nối thêm thạch anh và các tụ
như hình vẽ trong sơ đồ. Tần số thạch anh thường sử dụng cho
AT89S52 là 12Mhz.
 Chu kì máy (TM) = 1 / (fOSC/12) = 12 / fOSC
 Nếu tần số thạch anh là 12Mhz thì số chu kì máy bằng 1us.

8

2. LED 7 ĐOẠN:
2.1 Các khái niệm cơ bản
Trong các thiết bị, để báo trạng thái hoạt động của thiết bị đó cho
người sử dụng với thông số chỉ là các dãy số đơn thuần, thường người ta sử
dụng "led 7 đoạn". Led 7 đoạn được sử dụng khi các dãy số không đòi hỏi quá
phức tạp, chỉ cần hiện thị số là đủ, chẳng hạn led 7 đoạn được dùng để hiển thị
nhiệt độ phòng, trong các đồng hồ treo tường bằng điện tử, hiển thị số lượng
sản phẩm được kiểm tra sau một công đoạn nào đó
Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo hình
và có thêm một led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên
phải của led 7 đoạn
8 led đơn trên led 7 đoạn có Anode(cực +) hoặc Cathode(cực -) được nối
chung với nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch

điện. 8 cực còn lại trên mỗi led đơn được đưa thành 8 chân riêng, cũng được
đưa ra ngoài để kết nối với mạch điện. Nếu led 7 đoạn có Anode(cực +) chung,
đầu chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng
thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở
mức 0. Nếu led 7 đoạn có Cathode(cực -) chung, đầu chung này được nối
xuống Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái sáng
tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1.
Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm bảo dòng
qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu kết nối với nguồn
5V có thể hạn dòng bằng điện trở 330Ω trước các chân nhận tín hiệu điều khiển.
9

Sơ đồ vị trí các led được trình bày như hình dưới:
Các điện trở 330Ω là các điện trở
bên ngoài được kết nối để giới hạn
dòng điện qua led nếu led 7 đoạn
được nối với nguồn 5V.
Chân nhận tín hiệu a điều khiển led a sáng
tắt, ngõ vào b để điều khiển led b. Tương tự
với các chân và các led còn lại.
2.2 Kết nối với Vi điều khiển
Ngõ nhận tín hiệu điều khiển của led 7 đoạn có 8 đường, vì vậy có thể dùng 1
Port nào đó của Vi điều khiển để điều khiển led 7 đoạn. Như vậy led 7 đoạn nhận
một dữ liệu 8 bit từ Vi điều khiển để điều khiển hoạt động sáng tắt của từng led led
đơn trong nó, dữ liệu được xuất ra điều khiển led 7 đoạn thường được gọi là "mã
hiển thị led 7 đoạn". Có hai kiểu mã hiển thị led 7 đoạn: mã dành cho led 7 đoạn có
Anode(cực +) chung và mã dành cho led 7 đoạn có Cathode(cực -) chung.
Chẳng hạn, để hiện thị số 1 cần làm cho các led ở vị trí b và c sáng, nếu sử dụng
led 7 đoạn có Anode chung thì phải đặt vào hai chân b và c điện áp là 0V(mức 0)
các chân còn lại được đặt điện áp là 5V(mức 1), nếu sử dụng led 7 đoạn có Cathode

chung thì điện áp(hay mức logic) hoàn toàn ngược lại, tức là phải đặt vào chân b
và c điện áp là 5V(mức 1).
2.3 Giao tiếp Vi điều khiển với nhiều led 7 đoạn :
Nếu kết nối mỗi một Port của Vi điều khiển với 1 led 7 đoạn thì tối đa kết nối
được 4 led 7 đoạn. Mặt khác nếu kết nối như trên sẽ hạn chế khả năng thực hiện các
công việc khác của Vi điều khiển. Cho nên cần phải kết nối, điều khiển nhiều led 7
đoạn với số lượng chân điều khiển từ Vi điều khiển càng ít càng tốt. Có hai giải
pháp: một là sử dụng các IC chuyên dụng cho việc hiện thị led 7 đoạn, hai là kết nối
10
nhiều led 7 đoạn vào cùng một đường xuất tín hiệu hiển thị. Sau đây sẽ đề cập đến
cách kết nối nhiều led 7 đoạn theo giải pháp thứ 2.
Để kết nối nhiều led 7 đoạn vào vi điều khiển thực hiện như sau: nối tất cả các
chân nhận tín hiệu của tất cả các led 7 đoạn (chân abcdefgh) cần sử dụng vào
cùng 1 Port. Dùng các ngõ ra còn lại của Vi điều khiển điều khiển on/off cho led
7 đoạn, mỗi ngõ ra điều khiển ON/OFF cho 1 led 7 đoạn,(ON: led 7 đoạn được
cấp nguồn để hiển thị, OFF: led 7 đoạn bị ngắt nguồn nên không hiển thị được)
3.TRANSISTOR
3.1 Cấu tạo của Transistor.
Transistor gồm ba lớp bán dẫn ghép với nhau hình thành hai mối tiếp
giáp P-N, nếu ghép theo thứ tự PNP ta được Transistor thuận, nếu ghép theo thứ
tự NPN ta được Transistor ngược. về phương diện cấu tạo Transistor tương
đương với hai Diode đấu ngược chiều nhau.

Ba lớp bán dẫn được nối ra thành ba cực , lớp giữa gọi là cực gốc ký
hiệu là B (Base), lớp bán dẫn B rất mỏng và có nồng độ tạp chất thấp.
Hai lớp bán dẫn bên ngoài được nối ra thành cực phát (Emitter) viết tắt
là E, và cực thu hay cực góp (Collector) viết tắt là C, vùng bán dẫn E và C có
cùng loại bán dẫn (loại N hay P) nhưng có kích thước và nồng độ tạp chất khác
nhau nên không hoán vị cho nhau được.
11

3.2 Nguyên tắc hoạt động của Transistor.
* Xét hoạt động của Transistor NPN .

Mạch khảo sát về nguyên tắc hoạt động của transistor NPN
Ta cấp một nguồn một chiều U
CE
vào hai cực C và E trong đó (+)
nguồn vào cực C và (-) nguồn vào cực E.
Cấp nguồn một chiều U
BE
đi qua công tắc và trở hạn dòng vào hai cực
B và E, trong đó cực (+) vào chân B, cực (-) vào chân E.
Khi công tắc mở , ta thấy rằng, mặc dù hai cực C và E đã được cấp
điện nhưng vẫn không có dòng điện chạy qua mối C E (lúc này dòng I
C
= 0).
Khi công tắc đóng, mối P-N được phân cực thuận do đó có một dòng
điện chạy từ (+) nguồn UBE qua công tắc => qua R hạn dòng => qua mối BE về
cực (-) tạo thành dòng I
B
.
Ngay khi dòng I
B
xuất hiện => lập tức cũng có dòng I
C
chạy qua mối
CE làm bóng đèn phát sáng, và dòng I
C
mạnh gấp nhiều lần dòng I
B

.
Như vậy rõ ràng dòng I
C
hoàn toàn phụ thuộc vào dòng I
B
và phụ thuộc theo một
công thức . I
c
= β.I
b
Trong đó: I
C
là dòng chạy qua mối CE
I
B
là dòng chạy qua mối BE
β là hệ số khuyếch đại của Transistor
Giải thích: Khi có điện áp U
CE
nhưng các điện tử và lỗ trống không
thể vượt qua mối tiếp giáp P-N để tạo thành dòng điện, khi xuất hiện dòng I
BE
12
do lớp bán dẫn P tại cực B rất mỏng và nồng độ pha tạp thấp, vì vậy số điện tử tự
do từ lớp bán dẫn N (cực E) vượt qua tiếp giáp sang lớp bán dẫn P (cực B) lớn
hơn số lượng lỗ trống rất nhiều, một phần nhỏ trong số các điện tử đó thế vào lỗ
trống tạo thành dòng I
B
còn phần lớn số điện tử bị hút về phía cực C dưới tác
dụng của điện áp U

CE
=> tạo thành dòng I
CE
chạy qua Transistor.
* Xét hoạt động của Transistor PNP.
Sự hoạt động của Transistor PNP hoàn toàn tương tự Transistor NPN
nhưng cực tính của các nguồn điện U
CE
và U
BE
ngược lại. Dòng I
C
đi từ E sang
C còn dòng I
B
đi từ E sang B.



13
Khối nguồn
Khối xử lý trung tâm AT89S52
Khối hiển thị
Khối điều khiển
(nút nhấn)
Chương 3: THIẾT KẾ VÀ THI CÔNG
I/ Sơ đồ khối:
II/ Chức năng thực hiện từng khối:
2.1/ Khối xử lí trung tâm AT89S52:
IC AT89S52 có tất cả 40 chân có chức năng như các đường xuất nhập.Trong đó có

24 chân có tác dụng kép (có nghĩa một chân có hai chức năng), mỗi đường có thể hoạt
động như đường xuất nhập hoặc như đường diều khiển hoặc là thành phần của các bus
dữ liệu và bus dịa chỉ.
Mặt khác khối này nó được lập trình để điều khiển các khối con của mạch.
14
P 1 . 4
P 0 . 7
P 0 . 0
V C C _ A R R O W
P 1 . 6
S W 1
R E S E T
P 1 . 5
P 2 . 0
P 0 . 1
P 1 . 7
P 1 . 6
P 2 . 1
P 0 . 2
P 3 . 0
P 1 . 7
P 2 . 2
P 2 . 4
P 3 . 0
U 1
A T 8 9 C 5 1
9
1 8
1 9
2 0

2 9
3 0
3 1
4 0
1
2
3
4
5
6
7
8
2 1
2 2
2 3
2 4
2 5
2 6
2 7
2 8
1 0
1 1
1 2
1 3
1 4
1 5
1 6
1 7
3 9
3 8

3 7
3 6
3 5
3 4
3 3
3 2
R S T
X T A L 2
X T A L 1
G N D
P S E N
A L E / P R O G
E A / V P P
V C C
P 1 . 0
P 1 . 1
P 1 . 2
P 1 . 3
P 1 . 4
P 1 . 5
P 1 . 6
P 1 . 7
P 2 . 0 / A 8
P 2 . 1 / A 9
P 2 . 2 / A 1 0
P 2 . 3 / A 1 1
P 2 . 4 / A 1 2
P 2 . 5 / A 1 3
P 2 . 6 / A 1 4
P 2 . 7 / A 1 5

P 3 . 0 / R X D
P 3 . 1 / T X D
P 3 . 2 / I N T O
P 3 . 3 / I N T 1
P 3 . 4 / T O
P 3 . 5 / T 1
P 3 . 6 / W R
P 3 . 7 / R D
P 0 . 0 / A D 0
P 0 . 1 / A D 1
P 0 . 2 / A D 2
P 0 . 3 / A D 3
P 0 . 4 / A D 4
P 0 . 5 / A D 5
P 0 . 6 / A D 6
P 0 . 7 / A D 7
P 3 . 1
C
R 1 5
R E S I S T O R S I P 9
1 2
3
4
5
6
7
8
9
P 2 . 3
P 2 . 5

P 3 . 1
P 3 . 2
P 2 . 4
P 2 . 6
P 3 . 2
P 3 . 3
P 2 . 5
P 2 . 7
P 3 . 3
P 3 . 4
V C C _ A R R O W
P 2 . 6
P 2 . 0
P 3 . 4
C
R 1 3
R E S I S T O R S I P 9
12
3
4
5
6
7
8
9
P 3 . 5
P 2 . 7
P 2 . 1
P 3 . 5
P 0 . 0

P 3 . 6
P 1 . 0
P 2 . 2
P 3 . 6
P 0 . 1
P 3 . 7
Y 1
1 2 M h z
P 1 . 1
P 2 . 3
P 3 . 7
V C C _ A R R O W
P 0 . 2
P 0 . 3
P 1 . 2
P 1 . 0
C
R 1 6
R E S I S T O R S I P 9
1 2
3
4
5
6
7
8
9
P 0 . 3
P 0 . 4
C 3

1 0 M F
P 1 . 3
P 1 . 1
R 1
1 0 K
V C C _ A R R O W
P 0 . 4
P 0 . 5
P 1 . 2
V C C _ A R R O W
P 0 . 5
P 0 . 6
P 1 . 4
C 2
C A P N P
P 1 . 3
C
R 1 4
R E S I S T O R S I P 9
12
3
4
5
6
7
8
9
P 0 . 6
P 0 . 7
V C C _ A R R O W

P 1 . 5
C 1 C A P N P
P 1 . 3
L E D A 0
L E D 7 S E G
7
6
4
2
1
9
1 0
5
8
3
a
b
c
d
e
f
g
p
A N O D E
A *
R 1 1
E
G
Q 1
A 1 0 1 5

P 1 . 2
F
P 0 . 0
G
P 0 . 1
R 7
G
CP 0 . 2
F
L E D B 1
L E D 7 S E G
7
6
4
2
1
9
1 0
5
8
3
a
b
c
d
e
f
g
p
A N O D E

A *
A
P 0 . 3
E
R 2
4 K 7
B
R 4
4 K 7
P 0 . 4
D
2 2 0
D
P 0 . 5
R 3
4 K 7
C
E
P 0 . 6
A
P 1 . 1
Q 2
A 1 0 1 5
R 9
F
L E D A 1
L E D 7 S E G
7
6
4

2
1
9
1 0
5
8
3
a
b
c
d
e
f
g
p
A N O D E
A *
B
P 1 . 0
G
F
Q 3
A 1 0 1 5
A
C
R 1 0
G
B
V C C _ A R R O W
A

R 5
4 K 7
C
R 1 2
C
B
A
D
R 8
R 6
D
L E D B 0
L E D 7 S E G
7
6
4
2
1
9
1 0
5
8
3
a
b
c
d
e
f
g

p
A N O D E
A *
B
E
Q 4
A 1 0 1 5
E
D
F
2.2/ Khối hiển thị thời gian đếm ngược trên led 7 đoạn và hiển thị led
đơn:
a) Khối hiển thị đếm ngược led 7 đoạn: hiển thị thời gian của các chế độ
thời gian, được hiển thị trên led 7 đoạn, các chân của led được nối thông qua một
điện trở thanh để nối với IC vi điều khiển. Việc giải mã nhị phân sang led 7 đoạn
điều được thực hiện trên vi điều khiển.
Led 7 đoạn được nối theo kiểu anode chung. Nghĩa là : chân E của transistor
được nối lên nguồn. Led hoạt động với dòng tối thiểu là 20mA.
Sử dụng port (P0): P0.0, P0.1, P0.2, P0.3, P0.4, P0.5, P0.6, P0.7.
Với các chân điều khiển hoạt động thông qua các transistor PNP A1015 điều
khiển hoạt động ở chế độ bão hòa cung cấp dòng cho led sáng.
Transistor PNP A1015 được nối với port (P1) của vi điều khiển có chức năng
khuyếch đại dòng cho led hoạt động bình thường. thông thường ta chọn hệ số
khuyếch đại β = (40÷100). Vì vậy ta cần tính các giá trị điện trở như sau:
Dòng nhỏ nhất mà một led đơn có thể sáng là 10mA và dòng giới hạn là: 20mA.
Khi một led sáng thì nó sẽ mất một điện áp là 2V trên 1led.
Từ đó , để tất cả 7 led sáng cùng một lúc thì dòng Ic=7*15mA=105mA.
Ta có: 5 = V
d
+ I

c
× R
hd7seg
⇒ R
hd7seg
= = (5-2) / 105=286 Ohm
Chọn R
hd7seg
=220(Ohm)
Vì transistor A1015 có H
fe
=100
I
b
=I
c
/h
fe
=105 / 100=1mA
Ta lại có:
5= V
eb
+I
b
*R1
⇒ R
2
=(5-V
eb
) / I

b
=4,7k
( với V
eb
=
0,3v)
Chọn R
2
= 4.7k
Các điện trở 4.7K và điện trở treo 4.7K đảm bảo transitor luôn hoạt động ở chế độ
ngắt/dẫn(đảm bảo khi led 7 đoạn đang ở trạng thái OFF sẽ bị tắt hoàn toàn, không bị
sáng mờ mờ)
15
Tại mỗi thời điểm, chỉ nên cho Vi điều khiển điều khiển cho 1 led 7 đoạn hoạt
động, do đó tại mỗi thời điểm chỉ nên có 1 ngõ ra duy nhất nối với transitor ở mức 0.
Tại mỗi thời điểm chỉ có một led 7 đoạn được ON nên sẽ không xảy ra tình trạng quá
tải cho tải và quá tải cho vi điều khiển khi điều khiển nhiều led 7 đoạn b) Khối
hiện thị báo đèn: báo hiệu các đèn xanh, vàng, đỏ ở ngã tư.
+ P2.0 : Nối với đèn đỏ ở đường bên A.
+ P2.1 : Nối với đèn vàng ở đường bên A.
+ P2.2 : Nối với đèn xanh ở đường bên A.
+ P2.3 : Nối với đèn đỏ ở đường bên B.
+ P2.4 : Nối với đèn vàng ở đường bên B.
+ P2.5 : Nối với đèn xanh ở đường bên B.
Sử dụng các led đơn nối anode chung. Còn các chân cathode thì được nối vào điện
trở R. Và nó được điều khiển bởi các chân P2.0, P2.1, P2.2, P2.3, P2.4, P2.5 của port
P2. Dòng qua Led đơn: I
d
= 10mA- 20mA.
Vì led đơn có dòng hoạt động khoảng 10mA trở lên nên ta có thể chọn điện trở R

sao cho phù hợp với từng loại led đơn.
Nguồn được cấp Vcc = +5V.
Điện áp phân cực thuận của các Led :
+ Led xanh: Vx= 2V -2.8V
+ Led vàng: Vv= 2V- 2.5V
+ Led đỏ:Vd= 1.4V- 1.8V
Điện trở hạn dòng trung bình:
 chọn R = 220ohm
16
P 2 . 4 P 2 . 5
R 2 2
2 2 0
R 2 3
2 2 0
D 4
V A N G - A
D 7
V A N G - B
D 3
D O - A
D 5
X A N H - A
V C C _ A R R O W
R 1 8
2 2 0
P 2 . 0
D 6
D O - B
P 2 . 1
R 2 0

2 2 0
R 1 9
2 2 0
P 2 . 2 P 2 . 3
R 2 1
2 2 0
D 8
X A N H - B
17
R 1 7
3 3 0
D 2
L E D
C 5
0 . 1 m F
C 4
1 0 0 0 m F
U 4
L M 7 8 0 5
1 3
2
I N O U T
G N D
V C C _ A R R O W
- +
D 1
D I O D E B R I D G E
2
1
3

4
C 6
0 . 1 m F
J 1
J A C - D C
1
2
2.3/ Khối nút nhấn:
Khối nút nhấn ở đây là các công tắc
nút ấn dùng để thay đổi các chế độ hoạt
động của đèn giao thông:
SW1: reset
SW2: chế độ bình thường
SW3: chế độ ưu tiên A
SW4: chế độ ưu tiên B
SW5: chế độ nhấp nháy đèn vàng
Như ta đã biết giá trị mặt định của các chân port của vi điều khiển là ở mức 1,
vì vây sử dụng tính chất này chúng ta sẻ nối các chân port với các công tắc và nối
công tắc với đất.
2.4/ Khối nguồn :
Cung cấp nguồn nuôi cho vi điều khiển hoạt động theo yêu cầu đề tài. ở đây
ta tạo ra nguồn 5v cấp cho vi điều khiển.
III/ HOẠT ĐỘNG CỦA MẠCH:

Khi ta cấp nguồn cho vi xử lí thì vi xử lí sẽ hoạt động. Nó sẽ tích cực và cấp
nguồn cho các chân của vi xử lí. Và mạch sẽ hoạt động theo chế độ đã định sẵn.Nghĩa
là các led đơn ở 2 ngã đường sẽ sáng lên và led 7 đoạn sẽ được khuyếch đại dòng bởi
transistor A1015 và thực hiện việc quét led để lần lượt được tích cực nhờ vào port P0
của vi xử lí. Đồng thời sẽ hiện số giây đếm ngược ở 2 ngã đường theo chế độ mặc
định (chế độ bình thường), số giây đếm ngược ở 2 ngã đường lúc này là bằng nhau

(đỏ 25s, vàng 3s, và xanh là 22s). Và ta có thể điều chỉnh chế độ ưu tiên khác thông
qua điều chỉnh các nút nhấn. Chế độ ưu tiên: thời gian ở đường ưu tiên ( đỏ 30s, vàng
3s, xanh 35s) và ở đường không ưu tiên ( đỏ 38s, vàng 3s, xanh 27s).
IV/ Sơ đồ nguyên lý toàn mạch:
18
P 3 . 0
S W 2
C D - B T
P 3 . 1 P 3 . 2 P 3 . 3
S W 5
C D - V A N G
S W 3
C D - U T A
S W 4
C D - U T B
Bbhgjghhắt đầu
Chạy chế độ 1
Chạy chế độ 2
Chạy chế độ 3
Chạy chế độ 4
Kết thúc
Kiểm tra nút nhấn 1
Kiểm tra nút nhấn 2
Kiểm tra nút nhấn 3
Kiểm tra nút nhấn 4
V/ Lưu đồ giải thuật:
4.1 Chương trình chính:
Đúng
Sai
Đúng

Sai
Đúng
Sai
Đúng
19
Bắt đầu
Bắt đầu
Bắt đầu
20
4.2 Chương trình chế độ 1 (chế độ 2, 3 cũng tương tự)
Sai
Đúng
Sai
Đúng Sai
Sai
Đúng Sai
Đúng
Sai
Đúng
Sai
Sai
21
Giảm Đỏ A+Vàng B
Chương trình
chế độ 1
Xanh A + Đỏ B
Cài đặt ban đầu
Xanh A=25, Vàng A=3
Xanh B=25, Vàng B=3
Kiểm tra

ngắt T0
Đỏ A + Xanh B
Giảm Xanh A + Đỏ B
Kiểm tra
ngắt T0
Xanh A=0
Giảm giá trị ô nhớ
Đỏ A + Xanh B
Vàng A+Đỏ B
Xanh B=0
Kiểm tra
ngắt T0
Đỏ A+ Vàng B
Giảm Vàng A+ Đỏ B
Kiểm tra
ngắt T0
Vàng A=0
Vàng B=0
4.3 Chương trình chế độ đèn vàng nhấp nháy:
22
Kiểm tra
ngắt T0
Kiểm tra
ngắt T0
Kiểm tra
Ngắt T0
Kiểm tra
Ngắt T0
Chế độ nhấp nháy
đèn vàng

Sáng đèn vàng A
Kiểm tra
Ngắt T0
Sáng đèn vàng B
Kiểm tra
Ngắt T0
VI/ Chương trình nạp cho IC
include reg_51.pdf
k1 bit p3.0
k2 bit p3.1
k3 bit p3.2
k4 bit p3.3
ld1 bit p2.0
lv1 bit p2.1
lx1 bit p2.2
ld2 bit p2.3
lv2 bit p2.4
lx2 bit p2.5
b_giay equ r2
tg1 equ r3
tg2 equ r4
b_mode equ r5
trangthai equ r6
org 00h
jmp main
ORG 00BH
JMP NGAT_T0
main:
; KHOI TAO BAN DAU
MOV TMOD,#01H

MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
CLR TF0
SETB TR0
MOV IE,#82H
;====================================
chedobinhthuong:
;thoi gian ban dau
mov 10h,#22 ;xanh1
mov 11h,#3 ; vang 1
mov 12h,#22 ; xanh 2
mov 13h,#3 ; vang 2
mov b_giay,#0
23
mov b_mode,#0
mov trangthai,#1
mov tg1,10h
mov a,10h
add a,11h
mov tg2,a
jmp tthai1
;===============================
chedouutiena:
;thoi gian ban dau
mov 10h,#35 ;xanh1
mov 11h,#3 ; vang 1
mov 12h,#27 ; xanh 2
mov 13h,#3 ; vang 2
mov b_giay,#0
mov b_mode,#0

mov trangthai,#1
mov tg1,10h
mov a,10h
add a,11h
mov tg2,a
jmp tthai1
;===============================
chedouutienb:
;thoi gian ban dau
mov 10h,#27 ;xanh1
mov 11h,#3 ; vang 1
mov 12h,#35 ; xanh 2
mov 13h,#3 ; vang 2
mov b_giay,#0
mov b_mode,#0
mov trangthai,#1
mov tg1,10h
mov a,10h
add a,11h
mov tg2,a
jmp tthai1 ;==================
;===============================
24
tthai1:
cjne trangthai,#1,tthai2
mov p2,#255 ;tat het led xanh do
clr lx1
clr ld2
cjne b_giay,#20,hthi1
dec tg1

dec tg2
mov b_giay,#0
cjne tg1,#0,hthi1 ;
mov tg1,11h
mov trangthai,#2
jmp hthi1
tthai2:
cjne trangthai,#2,tthai3
mov p2,#255 ;tat het led xanh do
clr lv1
clr ld2
cjne b_giay,#20,hthi1
dec tg1
dec tg2
mov b_giay,#0
cjne tg1,#0,hthi1 ;
mov tg2,12h
mov a,12h
add a,13h
mov tg1,a
mov trangthai,#3
jmp hthi1
tthai3:
cjne trangthai,#3,tthai4
mov p2,#255 ;tat het led xanh do
clr ld1
clr lx2
cjne b_giay,#20,hthi1
dec tg1
dec tg2

mov b_giay,#0
cjne tg2,#0,hthi1 ;
mov tg2,13h
mov trangthai,#4
25

×