Thiết kế mạch đèn giao thông thông minh dùng AVR Trong thời đại ngày nay khi nhân loại đang có những bước tiến vượt bậc về khoa học công nghệ thì ngành điện tử cũng có nhiều bước tiến rất quan trọng, đặc biệt là lĩnh vực vi điều khiển. Các bộ vi xử lý ngày càng phát triển hoàn thiện hơn và được sử dụng phổ biến trong hầu hết các hệ thống điều khiển tự động trong công nghiệp, khoa học kĩ thuật cũng như các thiết bị dân dụng. Vi xử lý đã đem lại những ưu điểm, những chức năng đặc biệt đã hộ trợ con người trong những hệ thống phức tạp đòi hỏi yêu cầu kĩ thuật cao. Để ứng dụng những tính năng đặc biệt đó vào đời sống thực tiễn thì nhóm sinh viên chúng em đã tiến hành nghiên cứu đồ đề tài bài tập lớn: “Thiết kế mạch điều khiển đèn giao thông thông minh xử dụng chip vi xử lý ATmega32” Hệ thống này giúp chúng ta điều chỉnh thời gian của đèn giao thông theo hoàn cảnh cụ thể mà không cần sự giám sát thường xuyên của con người. Hệ thống xử dụng chip vi xử lý ATmega32 là IC điều khiển chính. Ngoài ra còn xử dụng một số linh kiện điện tử khác sẽ được đề cập trong phần sau của báo cáo. Do thời gian thực hiện có hạn. Đồng thời luôn có sự khác nhau giữa lý thuyết và thực tiễn nên trong quá trình làm việc nhóm em không tránh khỏi thiếu sót. Mong nhận được sự giúp đỡ, đóng góp nhiệt tình từ thầy để bản báo cáo có thể hoàn thiện hơn. Chúng em xin chân thành cảm ơn
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ VIỄN THÔNG
====o0o====
BÁO CÁOBÀI TẬP LỚN VI XỬ LÝ
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 5
I Tìm hiểu chung về AVR và ATmega 32 6
1.1 Tìm hiểu chung về AVR 6
1.1.1 Giới thiệu chung về AVR 6
1.1.2 Cấu trúc của AVR 7
1.1.3 Hoạt động của AVR 8
1.2 Tìm hiểu về ATmega32 12
1.2.1 Cấu tạo 12
1.2.2 Tính năng của Atmega32 14
II Thiết kế mạch 16
2.1 Phân tích yêu cầu, nhiệm vụ của đề tài 16
2.1.1 Vai trò của đèn giao thông trong cuộc sống ngày nay 16
2.1.2 Phân tích thiết kế 16
2.2 Sơ đồ khối 16
2.2.1 Khối Reset 16
2.2.2 Khối tạo dao động 17
2.2.3 Khối nhấn nút điều khiển chế độ (khối đầu vào) 17
2.2.4 Khối quét led và hiển thị led 7 thanh 18
2.2.5 Khối điều khiển 19
2.2.6 Khối hiển thị led đơn 20
2.2.7 Khối nguồn 21
2.3 Mạch nguyên lí 21
2.4 Thiết kế layout 22
2.5 Đo đạc, kiểm tra, đánh giá chất lượng mạch 23
III Lập trình và kết quả mô phỏng 23
3.1 Lập trình 23
3.1.1 Giới thiệu về CodeVisionAVR 23
Trang 33.1.2 Thuật toán và code chương trình 24
IV Kết luận 27
V Tài liệu tham khảo 28
VI Phụ lục 28
Trang 4BẢNG PHÂN CHIA CÔNG VIỆC
1 Nguyễn Thị Thương + Tìm hiểu lý thuyết về AVR
+ Tìm hiểu về Codevision AVR.+ Viết code và mô phỏng trên proteus.+ Viết báo cáo
2 Trần Thị Hoài Thương + Tìm hiểu lý thuyết về Atmega 32
+ Xây dựng lưu đồ thuật toán cho code
Trang 5LỜI NÓI ĐẦU
Trong thời đại ngày nay khi nhân loại đang có những bước tiến vượt bậc về khoahọc công nghệ thì ngành điện tử cũng có nhiều bước tiến rất quan trọng, đặc biệt là lĩnhvực vi điều khiển Các bộ vi xử lý ngày càng phát triển hoàn thiện hơn và được sửdụng phổ biến trong hầu hết các hệ thống điều khiển tự động trong công nghiệp, khoahọc kĩ thuật cũng như các thiết bị dân dụng Vi xử lý đã đem lại những ưu điểm, nhữngchức năng đặc biệt đã hộ trợ con người trong những hệ thống phức tạp đòi hỏi yêu cầukĩ thuật cao
Để ứng dụng những tính năng đặc biệt đó vào đời sống thực tiễn thì nhóm sinhviên chúng em đã tiến hành nghiên cứu đồ đề tài bài tập lớn: “Thiết kế mạch điềukhiển đèn giao thông thông minh xử dụng chip vi xử lý ATmega32”
Hệ thống này giúp chúng ta điều chỉnh thời gian của đèn giao thông theo hoàncảnh cụ thể mà không cần sự giám sát thường xuyên của con người Hệ thống xử dụngchip vi xử lý ATmega32 là IC điều khiển chính Ngoài ra còn xử dụng một số linh kiệnđiện tử khác sẽ được đề cập trong phần sau của báo cáo
Do thời gian thực hiện có hạn Đồng thời luôn có sự khác nhau giữa lý thuyết vàthực tiễn nên trong quá trình làm việc nhóm em không tránh khỏi thiếu sót Mong nhậnđược sự giúp đỡ, đóng góp nhiệt tình từ thầy để bản báo cáo có thể hoàn thiện hơn
Chúng em xin chân thành cảm ơn!
Trang 6I Tìm hiểu chung về AVR và ATmega 32.
1.1 Tìm hiểu chung về AVR.
1.1.1.Giới thiệu chung về AVR.
- AVR là một họ vi điều khiển do hãng Atmel sản xuất, là chip vi điều khiển 8
bits với cấu trúc tập lệnh đơn giản hóa – RISC (Reduced Instruction SetComputer), một kiểu cấu trúc đang thể hiện ưu thế trong các bộ xử lí
- Ưu điểm của AVR so với các chip vi điều khiển 8 bits khác (ưu điểm cả về tính
ứng dụng và chức năng):
+ Gần như chúng ta không cần mắc thêm bất kỳ linh kiện phụ nào khi sử dụngAVR, thậm chí không cần nguồn tạo xung clock cho chip (thường là các khối thạchanh)
+ Thiết bị lập trình (mạch nạp) cho AVR rất đơn giản, có loại mạch nạp chỉcần vài điện trở là có thể làm được một số AVR còn hỗ trợ lập trình on – chip bằngbootloader không cần mạch nạp…
+ Bên cạnh lập trình bằng ASM, cấu trúc AVR được thiết kế tương thích C + Nguồn tài nguyên về source code, tài liệu, application note…rất lớntrên internet
- Các tính năng của chip AVR:
+ Có thể sử dụng xung clock lên đến 16MHz, hoặc sử dụng xung clock
nội lên đến 8 MHz (sai số 3%)
+ Bộ nhớ chương trình Flash có thể lập trình lại rất nhiều lần và dung
lượng lớn, có SRAM (Ram tĩnh) lớn, và đặc biệt có bộ nhớ lưu trữ lập
trình được EEPROM
+ Nhiều ngõ vào ra (I/O PORT) 2 hướng (bi-directional)
+ 8 bits, 16 bits timer/counter tích hợp PWM
+ Các bộ chuyển đối Analog – Digital phân giải 10 bits, nhiều kênh
+ Chức năng Analog comparator
+ Giao diện nối tiếp USART (tương thích chuẩn nối tiếp RS-232)
+ Giao diện nối tiếp Two –Wire –Serial (tương thích chuẩn I2C) Master vàSlaver
+ Giao diện nối tiếp Serial Peripheral Interface (SPI)
- Một số chip AVR thông dụng:
+ AT90S1200, AT90S2313, AT90S2323 and AT90S2343, AT90S2333 andAT90S4433, AT90S4414 and AT90S8515, AT90S4434 and AT90S8535,AT90C8534
+ ATtiny10, ATtiny11 and ATtiny12, ATtiny15, ATtiny22, ATtiny26,ATtiny28
Trang 7+ ATmega8/8515/8535, ATmega16, ATmega161, ATmega162, ATmega163,ATmega169, ATmega32, ATmega323, ATmega103, ATmega64/128/2560/2561
+ AT86RF401
…
- Có thể lập trình cho AVR bằng các phần mềm hỗ trợ ngôn ngữ cấp cao như
BascomAVR (Basic) hay CodevisionAVR (C) (các ngôn ngữ cấp cao này giúp chúng
ta dễ dàng thực hiện các phép toán đại số 16 hay 32 bit), nhưng chủ yếu ta lập trình choAVR bằng ASM (Assembly) do các trình dịch (compiler) ASM cho AVR là hoàn toànmiễn phí, và nguồn source code cho AVR viết bằng ASM là rất lớn
1.1.2.Cấu trúc của AVR.
- AVR có cấu trúc Harvard, trong đó đường truyền cho bộ nhớ dữ liệu (data
memory bus) và đường truyền cho bộ nhớ chương trình (program memory bus) đượctách riêng Data memory bus chỉ có 8 bit và được kết nối với hầu hết các thiết bị ngoại
vi, với register file Trong khi đó program memory bus có độ rộng 16 bits và chỉ phục
vụ cho instruction registers
Hình 1 mô tả cấu trúc bộ nhớ của AVR:
Trang 8RegisterFile I/O Registers
Internal SRAM
External SRAM
8 bit
Hình 1: Tổ chức bộ nhớ của AVR.
+ Bộ nhớ chương trình (Program memory): Là bộ nhớ Flash lập trình được,trong các chip AVR cũ (như AT90S1200 hay AT90S2313…) bộ nhớ chương trình chỉgồm 1 phần là Application Flash Section nhưng trong các chip AVR mới chúng ta cóthêm phần Boot Flash setion
+ Bộ nhớ dữ liệu (Data Memory): Đây là phần chứa các thanh ghi quan trọng nhất của chip, việc lập trình cho chip phần lớn là truy cập bộ nhớ này Bộ nhớ dữ liệu trên các chip AVR có độ lớn khác nhau tùy theo mỗi chip, tuy nhiên về
cơ bản phần bộ nhớ này được chia thành 5 phần: register file (32 thanh ghi), I/OMemory (64 thanh ghi nhập/xuất), internal SRAM, external SRAM, EEPROM
1.1.3.Hoạt động của AVR.
a Cấu trúc bên trong của AVR.
Sơ đồ cấu trúc bên trong của AVR như sau:
0000
Data EEPROMData Memory
S5F S60
64
End Address
End Addresss End Addresss
Trang 9Hình 2: Cấu trúc bên trong AVR
+ ALU – Arithmetic Logic Unit: Bộ ALU hiệu suất cao của AVR hoạt độngtrong liên kết trực tiếp với 32 thanh ghi làm việc Trong 1 chu kì clock, hoạt động tínhtoán số học giữa các thanh ghi hoặc giữa thanh ghi với dữ liệu trực tiếp sẽ được thựcthi Hoạt động của ALU được chia ra làm 3 phần chính: xử lý số học, phép toán logic
và các phép toán với bit
Status and Control
Program Counter
I/O Module 1
Analog Comparator
Watchdog Timer
I/O Module n I/O Module 2
SPI Unit Interrupt Unit
I/O Lines EEPROM
32x8 General Purpose Registers
ALU Control Lines
Instruction
Decoder
Instruction
Register
Trang 10+ Thanh ghi trạng thái – Status Register: Thanh ghi này chứa kết quả liên quanđến lệnh xử lý số học gần nhất Kết quả chứa trong thanh ghi này có thể được sử dụng
để thực hiện các hoạt động có điều kiện Thanh ghi trạng thái không tự động lưu lại khinhảy vào interrupt và cũng không tự động phục hồi (restore) khi quay về, cần thực hiệnđiều này bằng phần mềm
• Bit 7 – I: Global Interrupt Enable
Bit cho phép ngắt toàn cục Bit toàn cục này sẽ bị xóa tự động bằng phần cứngkhi có ngắt nào đó xảy ra Và nó được set trở lại tự động bằng phần cứng khi lệnhRETI (lệnh quay về từ chương trình ngắt) được thực thi
• Bit 6 – T: Bit Copy Storage
• Bit 5 – H: Half Carry Flag
• Bit 4 – S: Sign Bit, S = N + V
• Bit 3 – V: Two’s Complement Overflow Flag
• Bit 2 – N: Negative Flag
• Bit 1 – Z: Zero Flag
• Bit 0 – C: Carry Flag
Trang 11+ Tập các thanh ghi làm việc đa năng – General Purpose Register File:
Tất cả các lệnh đều thực thi trên các thanh ghi làm việc có thể truy xuất trực tiếpđến các thanh ghi, và hầu hết là các lệnh thực thi trong 1 chu kì clock
Như trên hình, tất cả các thanh ghi được gán địa chỉ bộ nhớ dữ liệu, ánh xạ chúngtrực tiếp đến 32 phân vùng đầu tiên trong không gian dữ liệu Mặc dù không được hiệnthực vật lý như phân vùng SRAM, nhưng tổ chức bộ nhớ này cung cấp khả năng truyxuất phức tạp tuyệt vời của các thanh ghi, như thanh ghi con trỏ X-, Y- và Z- có thểđược set để định vị đến bất kì thanh ghi nào trong tập thanh ghi
b Hoạt động của AVR.
+ 32 thanh ghi trong Register File được kết nối trực tiếp với ArithmeticLogic Unit -ALU (ALU cũng được xem là CPU của AVR) bằng 2 line, vì thế ALU cóthể truy xuất trực tiếp cùng lúc 2 thanh ghi RF chỉ trong 1 chu kỳ xung clock (vùngđược khoanh tròn màu đỏ)
+ Các instruction được chứa trong bộ nhớ chương trình Flash memory dướidạng các thanh ghi 16 bit Bộ nhớ chương trình được truy cập trong mỗi chu kỳ xungclock và 1 instruction chứa trong Program Memory sẽ được load vào trong instructionregister, instruction register tác động và lựa chọn register file cũng như RAM cho ALUthực thi Trong lúc thực thi chương trình, địa chỉ của dòng lệnh đang thực thi được
Trang 12quyết định bởi một bộ đếm chương trình – PC (Program counter) Đó chính là cáchthức hoạt động của AVR.
+ AVR có ưu điểm là hầu hết các instruction đều được thực thi trong 1 chu kỳxung clock, vì vậy có thể nguồn clock lớn nhất cho AVR có thể nhỏ hơn 1 số vi điềukhiển khác như PIC nhưng thời gian thực thi vẫn nhanh hơn
1.2 Tìm hiểu về ATmega32.
1.2.1 Cấu tạo.
ATmega32 là vi điều khiển thuộc họ AVR của hãng Atmel, có 40 chân trong đó
có 32 chân I/O, có 4 kênh điều xung PWM, sử dụng thạch anh ngoài 8MHz
Nhân AVR kết hợp tập lệnh đầy đủ với 32 thanh ghi đa năng Tất cả các thanhghi liên kết trực tiếp với khối xử lý số học và logic (ALU) cho phép 2 thanh ghi độc lậpđược truy cập trong một lệnh đơn trong 1 chu kỳ đồng hồ Kết quả là tốc độ nhanh gấp
10 lần các bộ vi điều khiển CISC thường
Dưới đây là hình vẽ sơ đồ chân của VĐK At mega32 :
Hình 3 :Sơ đồ chân ATmega32
- ATmega32 gồm có 4 port : port A, port B, port C và port D
+ Port A gồm 8 chân từ PA0 đến PA7: là cổng vào tương tự cho chuyển đổitương tự sang số Nó cũng là cổng vào/ra hai hướng 8 bít trong trường hợp không sửsụng làm cổng chuyển đổi tương tự, có điện trở nối lên nguồn dương bên trong Port Acung cấp đường địa chỉ dữ liệu vào/ra theo kiểu hợp kênh khi dùng bộ nhớ bên ngoài
Trang 13+ Port B gồm 8 chân từ PB0 đến PB7: là cổng vào/ra hai hướng 8 bít, có điệntrở nối lên nguồn dương bên trong Port B cung cấp các chức năng ứng với các tínhnăng đặc biệt của Atmega32
+ Port C gồm các chân từ PC0 đến PC7: là cổng vào/ra hai hướng 8 bit, có điệntrở nối lên nguồn dương bên trong, Port C cung cấp các địa chỉ lối ra khi sử dụng bộnhớ bên ngoài và đồng thời cung cấp ứng với các tính năng đặc biệt của ATmega32
+ Port D gồm các chân từ PD0 đến PD7: là cổng vào/ra hai hướng 8 bít, cóđiện trở nối lên nguồn dương bên trong Port D cung cấp các chức năng ứng với cáctính năng đặc biệt của ATmega32
- Chân nguồn Vcc (chân số 10 và chân số 30):điện áp nguồn nuôi của ATmega32
từ 4.5V đến 5.5V
- Chân Reset (chân số 9): lối vào đặt lại.
- Chân GND (chân số 11 và chân 31): chân nối mát.
- Chân XTAL1, XTAL2 là hai chân nối thạch anh ngoài (chân số 12 và chân số
13) ATmega32 sử dụng thạch anh ngoài là 8MHz
- Chân ICP(chân số 20): là chân vào cho chức năng bắt tín hiệu cho bộ định thời/
Trang 14Hình 4: Sơ đồ cấu trúc bên trong của ATmega32 1.2.2.Tính năng của Atmega32.
- ATmega32 có các đặc tính sau:
+ 32Kbytes bộ nhớ ISP Flash với Read-While-Write capacities.+ 2Kbytes RAM
+ 1024 bytes EEPROM
+ 32 đường I/O đa năng
+ 32 thanh ghi đa năng
Trang 15+ JTAG interface
+ On-chip Debug and Program
+ 3 bộ định thời phức hợp với chế độ so sánh
+ Ngắt ngoài và trong
+ Bộ truyền nhận nối tiếp USART lập trình được
+ Bộ giao tiếp nối tiếp định hướng 2 dây
+ 8 kênh, 10bit ADC với ngưỡng vào lựa chọn khác nhau độ lợi lập trình được.+ Bộ WatchDog Timer khả trình với dao động nội
+ Port SPI nối tiếp
+ Hệ thống ngắt để tiếp tục hàm
- ATmega32 có các chế độ tiết kiệm năng lượng như sau:
+ Chế độ nghỉ (Idle) CPU trong khi cho phép bộ truyền tin nối tiếp đồng bộUSART, giao tiếp 2 dây, chuyển đổi A/D, SRAM, bộ đếm bộ định thời, cổng SPI và hệthống các ngắt vẫn hoạt động
+ Chế độ Power-down lưu giữ nội dung của các thanh ghi nhưng làm đônglạnh bộ tạo dao động, thoát khỏi các chức năng của chip cho đến khi có ngắt ngoàihoặc là reset phần cứng
+ Chế độ Power-save đồng hồ đồng bộ tiếp tục chạy cho phép chương trình sửdụng giữ được đồng bộ thời gian nhưng các thiết bị còn lại là ngủ
+ Chế độ ADC Noise Reduction dừng CPU và tất cả các thiết bị còn lại ngoạitrừ đồng hồ đồng bộ và ADC, tối thiểu hoá switching noise trong khi ADC đang hoạtđộng
+ Chế độ standby, bộ tạo dao động (thuỷ tinh thể/bộ cộng hưởng).chạy trongkhi các thiết bị còn lại ngủ Các điều này cho phép bộ vi điều khiển khởi động rấtnhanh trong chế độ tiêu thụ công suất thấp
- Thiết bị được sản xuất sử dụng công nghệ bộ nhớ cố định mật độ cao của Atmel.
Bộ nhớ On-chip ISP Flash cho phép lập trình l ại vào hệ thống qua giao diện SPI bởibộ lập trình bộ nhớ cố định truyền thống hoặc bởi chương trình On-chip Boot chạy trênnhân AVR Chương trình boot có thể sử dụng bất cứ giao điện nào để downloadchương trình ứng dụng trong bộ nhớ Flash ứng dụng Phần mềm trong vùng Boot Flashsẽ tiếp tục chạy trong khi vùng Application Flash được cập nhật, cung cấp thao tácRead-While-Write thực sự Bằng việc kết hợp 1 bộ 8-bit RISC CPU với In-SystemSelf-Programmable Flash trong chỉ nguyên vẹn 1 chip ATmega32 là một bộ vi điềukhiển mạnh có thể cung cấp giải pháp có tính linh động cao, giá thành rẻ cho nhiều ứngdụng điều khiển nhúng
Trang 16II.Thiết kế mạch.
II.1 Phân tích yêu cầu, nhiệm vụ của đề tài.
2.1.1 Vai trò của đèn giao thông trong cuộc sống ngày nay.
- Trong hệ thống giao thông hiện nay ở nước ta, vấn đề về an toàn giao thông và
ùn tắc giao thông tại các điểm giao nhau là vấn đề hết sức cấp bách cần được giảiquyết Các phương tiện hướng dẫn giao thông tại các điểm nút này đóng vai trò rấtquan trọng Hệ thống đèn giao thông là công cụ điều khiển giao thông công cộng thực
tế và hiệu quả có vai trò rất lớn trong việc đảm bảo an toàn và giảm thiểu tai nạn giaothông, góp phần hạn chế ùn tắc, định hướng cho các phương tiện di chuyển một cách
an toàn Vì vậy đèn giao thông hết sức cần thiết cho cuộc sống hiện nay
II.1.2 Phân tích thiết kế.
- Xây dựng hệ thống điều khiển giao thông từ 2 hướng, ứng dụng tại ngã tư nơi
giao nhau của hai đường một chiều
- Chế độ hoạt động hàng ngày:
+ Chế độ Auto : Chế độ hoạt động mặc định với thời gian các đèn cài đặt sẵnvới thời gian đèn xanh là 25s, đèn vàng 5s, đèn đỏ 30s
+ Chế độ set thời gian : Người dùng có thể cài đặt lại thời gian cho các đèn.+ Chế độ ban đêm : Chế độ đèn ban đêm (chỉ đèn vàng nhấp nháy)
- Các linh kiện sử dụng:
+ Led 7 thanh + Tụ điện
+ Transistor PNP + Điện trở
+ Led xanh, đỏ, vàng + Switch 3 chân
+ Buttton + Vi điều khiển Atmega32
II.2 Sơ đồ khối.
- Hệ thống gồm các khối sau:
+ Khối reset, khối tạo dao động, khối nhấn nút điều khiển chế độ, khối quétLed và khối hiển thị Led 7 thanh, khối điều khiển, khối hiện thị Led đơn và khốinguồn
- Sơ đồ từng khối như sau:
2.2.1 Khối Reset.
Trang 17II.2.2 Khối tạo dao động.
II.2.3 Khối nhấn nút điều khiển chế độ (khối đầu vào).
Khối này có tác dụng đưa vi điềukhiển về trạng thái ban đầu Khi nútreset được cấp điện áp +5 V từ nguồnnối vào chân reset (chân 9) của vi điềukhiển được chạy thẳng xuống đất, lúcnày điện áp tại chân vi điều khiển thayđổi đột ngột về 0, vi điều khiển nhậnbiết được sự thay đổi này và khởiđộng lại trạng thái ban đầu cho hệthống
Đây là bộ tạo dao động thạch anh
có tác dụng tao xung nhịp với tầnsố 16 MHz cho vi điều khiển hoạtđộng Hai đầu này được nối vào haichân XTAL1 và XTAL2 của viđiều khiển
Trang 18II.2.4 Khối quét led và hiển thị led 7 thanh.
Các chân của led 7 thanh đượ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 thanh đều được thực hiện trên vi điềukhiển Led 7 thanh đượ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 Với các chân điều
khiển hoạt động thông qua các transistor PNP điều khiển hoạt động ở chế độ bão hòa
Chọn chế độ SET của switch 3 chân đểcài đặt chế độ hoạt động
- Chế độ tự động khi hoạt độngcủa đèn giao thông: ban đầuled xanh 1sáng 25s, led đỏ 2 sáng 25s, led vàng 2sáng 5s rồi chuyển sang led đỏ 1 sáng25s, led vàng 1 sáng 5s, led xanh 2 sáng25s thời gian đèn đỏ sáng bằng tổngthời gian đèn xanh và đèn vàng sáng
- Chế độ cài đặt cho các đèn theo
ý muốn:
+ dùng nút UP và DOWN để tănggiảm thời gian sáng của các led + dùng nút NIGHT để chọn chế độban đêm (chỉ có đèn vàng nháy).+ nút MODE dùng để chọn chế độ
Trang 19cung cấp dòng cho LED sáng Transistor PNP được nối với port (P2) của vi điều khiển
có chức năng khuếch đại dòng cho led hoạt động bình thường.
II.2.5 Khối điều khiển.