Quang báo điều chỉnh qua bàn phím
Page
1
Trong đời sống hiện đại ngày nay, quảng cáo là một phần
không thể thiếu trong nhịp sống bùng nổ công nghệ thông tin như
hiện nay. Ở bất cứ nơi đâu ta cũng bắt gặp những biển quảng cáo từ
đơn giản, thủ công cho đến những biển quảng cáo điện tử hiện đại,
thẩm mỹ. Đó là những bảng quảng cáo điện tử mà chúng ta gọi là
những bảng đèn quang báo. Công nghệ điện tử này còn được sử dụng
trong nhiều lĩnh vực như những biển báo giao thông, những bảng
điểm trên những sàn giao dịch chứng khoán,hay tại các sân bay, siêu
thị... Những bảng quang báo này góp phần làm cho thành phố chúng
ta có được một bộ mặt của một thành phố hiện đại và văn minh. Tác
dụng của bảng quang báo là khá to lớn. Chính điều đó đã thôi thúc
chúng tôi thực hiện được đề tài tìm hiểu về quang báo “ Điều khiển 1
dòng quang báo bằng bàn phím matrix ”.
Quang báo điều chỉnh qua bàn phím
Page
2
A. Giới thiệu phần cứng:
I. Khối điều khiển trung tâm ( CPU ) :
Vi điều khiển 89V51RB2. Với 4 Port điều khiển.
1.Sơ đồ khối của một hệ vi xử lý:
a. Định nghĩa hệ vi xử lý:
· Khả năng được lập trình để thao tác trên các dữ liệu mà không cần sự can
thiệp của con người.
· Khả năng lưu trữ và phục hồi dữ liệu.
b. Tổng quát hệ vi xử lý gồm:
· Phần cứng (hardware): các thiết bị ngoại vi để giao tiếp với con người.
· Phần mềm (software):chương trình để xử lý dữ liệu.
Ø CPU (Central Processing Unit): đơn vị xử lý trung tâm.
Ø RAM (Random Access Memory): bộ nhớ truy xuất ngẫu nhiên.
Ø Rom (Read Only Memory): bộ nhớ chỉ đọc.
Ø Interface Circuitry: mạch điện giao tiếp.
Ø Peripheral Devices (Input): các thiết bị ngoại vi (thiết bị nhập)
Quang báo điều chỉnh qua bàn phím
Page
3
Ø Peripheral Devices (Output): các thiết bị ngoại vi (thiết bị xuất).
Ø Addressbus: bus địa chỉ.
Ø Data bus: bus dữ liệu.
Ø Control bus: bus điều khiển.
2.Đơn vị xử lý trung tâm:
Ø CPU đóng vai trò chủ đạo trong hệ vi xử lý, nó quảnlý tất cả các
hoạt động của hệ và thựchiện tất cả các thao tác trên dữ liệu.
Ø CPU là một vi mạch điện tử có độ tích hợp ca. Khi hoạt động CPU
đọc mã lệnh được ghi dưới dạng cácbit 0 và bit 1 từ bộ nhớ, sau đó
nó sẽ thực hiện giải mã các lệnh này thành các dãy xung điều khiển
tương ứng với các thao táctrong lệnhđể điều khiển cáckhối khác
thực hiện từng bước các thao tác đóvà từ đó tạo ra các xung điều
khiển cho toàn hệ.
Ø IR/IP (Instruction Register/Intruction Pointer): thanh ghi lệnh/con
trỏ lệnh.
Ø PC (Program Counter): bộ đếm chươngtrình.
Ø Instruction decode and control unit: đơn vị giải mã lệnh và điều
khiển.
Ø ALU (arithmetic and Logic Unit): đơn vị số học và logic.
Ø Registers: Các thanh ghi.
Ø Khi hoạt động CPU sẽ thực hiện liên tục 2 thao tác: tìm nạp lệnh
và giãi mã - thực hiện lệnh.
v Thao tác tìm nạp lệnh:
§ Nội dung của thanh ghi PC đượcCPU đưa lên bus địa chỉ.
§ Tín hiệu điều khiển đọc (Read) chuyển sang trạng thái tích cực.
§ Mã lệnh (Opcode) từ bộ nhớ được đưa lên bus dữ liệu.
§ Nội dung của thanh ghi PC tăng lên một đơn vị để chuẩn bị tìm
nạp lệnh kế tiếp từ bộ nhớ.
v Thao tác giải mã - thực hiện lệnh:
§ Mã lệnh từ thanh ghi IR được đưa vào đơn vị giải mã lệnh và điều
khiển.
§ Đơn vị giải mã lệnh và điều khiển sẽ thực hiện giải mã opcode và tạo
ra các tín hiệu để điều khhiển việc xuất nhập dữ liệu giữ ALU và
cácthanh ghi.
§ Căn cứ trên các tín hiệu điều khiển này, ALU thực hịên các thao tác đã
được xác định.
Quang báo điều chỉnh qua bàn phím
Page
4
§ Một chuỗi các lệnh (Opcode) kết hợp lại với nhau để thực hiện một
công việc có nghĩa được gọi là chương trình (Program) hay phần
mềm.
v Bộ nhớ bán dẫn là một khác rất quan trọng của hệ vi xử lý, các chương
trình và dữ liệu đều được lưu giữ trong bộ nhớ.
v Bộ nhớ bán dẫn trong hệ vi xử lý gồm:
· ROM: bộ nhớ chương trình _ lưu giữ chương trình điều khiển hoạt
động của toàn hệ thống.
· RAM: bộ nhớ dữ liệu _ lưu giữ dữ liệu, một phần chương trình
điều khiển hệ thống, các ứng dụng và kết quả tính toán.
· Sơ lược về cấu trúc và phân loại ROM – RAM:
· ROM (Read Only Memory): bộ nhớ chỉ đọc
· RAM (Random Access Memory): bộ nhớ truy xuất ngẫu nhiên (bộ
nhớ ghi đọc)
3.Các chân của chip 89V51RB2:
3.1. Sơ đồ khối và chức năng các khối của chip 89V51RB2
ü CPU (Central Processing Unit): Đơn vị xử lý trung tâm tính toán và điều
khiển quá trình hoạt động của hệ thống.
ü OSC (Oscillator): Mạch dao động _ tạo tín hiệu xung clock cung cấp cho
các khối trong chip hoạt động.
ü Interrupt control: Điều khiển ngắt _ nhận tín hiệu ngắt từ bean ngoài
(INT0\, INT1\), từ bộ định thời (TIMER0, TIMER1) và từ cổng nối tiếp
(SERIAL PORT), lần lượt đưa các tín hiệu ngắt này đến CPU để xử lý.
ü Other registers: Các thanh ghi khác _ lưu trữ dữ liệu của các port
xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình
hoạt động của hệ thống.
ü RAM (Random Access Memory): Bộ nhớ dữ liệu trong chip lưu trữ các dữ
liệu.
ü ROM (Read Only Memory): Bộ nhớ chương trình trong chip lưu trữ
chương trình hoạt động của chip.
ü I/O ports (In/Out ports): Các port xuất/nhập _ điều khiển việc xuất nhập dữ
liệu dưới dạng song song giữa trong và ngoài chip thông qua các port P0,
P1, P2, P3.
ü Serial port: Port nối tiếp _ điều khiển việc xuất nhập dữ liệu dưới dạng nối
tiếp giữa trong và ngoài chip thông qua các chân TxD, RxD.
Quang báo điều chỉnh qua bàn phím
Page
5
ü Timer 0, Timer 1: Bộ định thời 0, 1 _ dùng để định thời gian hoặc đếm sự
kiện (đếm xung) thông qua các chân T0, T1.
ü Bus control: Điều khiển bus _ điều khiển hoạt động của hệ thống bus và
việc di chuyển thông tin trên hệ thống bus.
ü Bus system: Hệ thống bus _ liên kết các khối trong chip lại với nhau.
3.2. Chức năng các chân của chip 8051
Chip 89V51 :gồm 40 chân
· 2 chân nguồn cấp điện (VCC, VSS)
· 32 chân xuất/nhập
· 6 chân chức năng (EA, ALE, PSEN, XTAL1, XTAL2, RST)
§ Port xuất/nhập 8 bit (P0.0 – P0.7)
§ Port xuất/nhập 8 bit (P1.0 – P1.7)
§ Port xuất/nhập 8 bit (P2.0 – P2.7)
§ Port xuất/nhập 8 bit (P3.0 – P3.7)
Sơ đồ chân của chip 89V51RB2
Quang báo điều chỉnh qua bàn phím
Page
6
v Port 0:
- Port 0 (P0.0 – P0.7) có số chân từ 32 – 39.
- Port 0 có hai chức năng:
• Port xuất nhập dữ liệu (P0.0 - P0.7) không sử dụng bộ nhớ ngoài.
• Bus địa chỉ byte thấp và bus dữ liệu đa hợp (AD0 – AD7) có sử dụng bộ nhớ
ngoài.
+ Lưu ý: Khi Port 0 đóng vai trò là port xuất nhập dữ liệu thì phải sử dụng các
điện trở kéo lên bên ngoài.
- Khi lập trình cho ROM trong chip thì Port 0 đóng vai trò là ngõ vào của dữ
liệu (D0 -> D7)
v Port 1:
- Port 1 (P1.0 – P1.7) có số chân từ 1 – 8.
- Port 1 có một chức năng:
• Port xuất nhập dữ liệu (P1.0 – P1.7) _ sử dụng hoặc không sử dụng bộ nhớ
ngoài.
- Khi lập trình cho ROM trong chip thì Port 1 đóng vai trò là ngõ vào của địa
chỉ byte thấp (A0 – A7)
v Port 2:
- Port 2 (P2.0 – P2.7) có số chân từ 21 – 28.
- Port 2 có hai chức năng:
• Port xuất nhập dữ liệu (P2.0 – P2.7) _ không sử dụng bộ nhớ ngoài.
• Bus địa chỉ byte cao (A8 – A15) _ có sử dụng bộ nhớ ngoài.
- Khi lập trình cho ROM trong chip thì Port 2 đóng vai trò là ngõ vào của địa
chỉ byte cao (A8 – A11) và các tín hiệu điều khiển
v Port 3:
- Port 3 (P3.0 – P3.7) có số chân từ 10 – 17.
- Port 0 có hai chức năng:
• Port xuất nhập dữ liệu (P3.0 – P3.7) _ không sử dụng bộ nhớ ngoài hoặc các
chức năng đặc biệt.
• Các tín hiệu điều khiển _ có sử dụng bộ nhớ ngoài hoặc các chức năng đặc
biệt.
- Khi lập trình cho ROM trong chip thì Port 3 đóng vai trò là ngõ vào của các tín
hiệu điều khiển
Chức năng của các chân Port3:
Quang báo điều chỉnh qua bàn phím
Page
7
Bit Tên Địa chỉ bit Chức năng
P3.0 RxD B0H Chân nhận dữ liệu của port nối tiếp
P3.1 TxD B1H Chân phát dữ liệu của port nối tiếp
P3.2 INT0\ B2H Ngõ vào ngắt ngoài 0
P3.3 INT1\ B3H Ngõ vào ngắt ngoài 1
P3.4 T0 B4H Ngõ vào của bộ định thời đếm 0
P3.5 T1 B5H Ngõ vào của bộ định thời đếm 1
P3.6 WR\ B6H Điều khiển ghi bộ nhớ dữ liệu Ram ngoài
P3.7 RD\ B7H Điều khiển đọc bộ nhớ dữ liệu Ram ngoài
v Chân PSEN\:
- PSEN (Program Store Enable): cho phép bộ nhớ chương trình, chân số 29.
- Chức năng:
• Là tín hiệu cho phép truy xuất (đọc) bộ nhớ chương trình (ROM) ngoài.
• Là tín hiệu xuất, tích cực mức thấp.
PSEN\ = 0 _ trong thời gian CPU tìm-nạp lệnh từ ROM ngoài.
PSEN\ = 1 _ CPU sử dụng ROM trong (không sử dụng ROM ngoài).
- Khi sử dụng bộ nhớ chương trình bên ngoài, chân PSEN\ thường được nối với
chân OE\ của ROM ngoài để cho phép CPU đọc mã lệnh từ ROM ngoài.
v Chân ALE:
- ALE (Address Latch Enable): cho phép chốt địa chỉ, chân số 30.
- Chức năng:
• Là tín hiệu cho phép chốt địa chỉ để thực hiện việc giải đa hợp cho bus địa chỉ
byte thấp và bus dữ liệu đa hợp
(AD0 – AD7).
• Là tín hiệu xuất, tích cực mức cao.
ALE = 0 _ trong thời gian bus AD0 – AD7 đóng vai trò là bus D0 – D7.
ALE = 1 _ trong thời gian bus AD0 – AD7 đóng vai trò là bus A0 – A7.
- Khi lập trình cho ROM trong chip thì chân ALE đóng vai trò là ngõ vào của
xung lập trình (PGM\)
Khi lệnh lấy dữ liệu từ RAM ngoài (MOVX) được thực hiện thì 1 xung ALE bị
bỏ qua
v Chân EA\:
Quang báo điều chỉnh qua bàn phím
Page
8
- EA (External Access): truy xuất ngoài, chân số 31.
- Chức năng:
• Là tín hiệu cho phép truy xuất (sử dụng) bộ nhớ chương trình (ROM) ngoài.
• Là tín hiệu nhập, tích cực mức thấp.
EA\ = 0 _ Chip 8051 sử dụng chương trình của ROM ngoài.
EA\ = 1 _ Chip 8051 sử dụng chương trình của ROM trong.
- Khi lập trình cho ROM trong chip thì chân EA đóng vai trò là ngõ vào của
điện áp lập trình (Vpp = 12V/89xx, 21V/80xx,87xx)
+ Lưu ý: Chân EA\ luôn luôn phải được nối lên Vcc (sử dụng chương trình của
ROM trong) hoặc xuống Vss (sử dụng chương trình của ROM ngoài).
v Chân XTAL1, XTAL2:
- XTAL (Crystal): tinh thể thạch anh, chân số 18-19.
- Chức năng:
• Dùng để nối với thạch anh hoặc mạch dao động tạo xung clock bên ngoài,
cung cấp tín hiệu xung clock cho chip hoạt động.
• XTAL1 _ ngõ vào mạch tạo xung clock trong chip.
• XTAL2 _ ngõ ra mạch tạo xung clock trong chip.
Chân RST:
- RST (Reset): thiết lập lại, chân số 9.
- Chức năng:
• Là tín hiệu cho phép thiết lặp (đặt) lại trạng thái ban đầu cho hệ thống.
• Là tín hiệu nhập, tích cực mức cao.
RST = 0 _ Chip 8051 hoạt động bình thường.
RST = 1 _ Chip 8051 được thiết lặp lại trạng thái ban đầu.
Chân Vcc, GND:
- Vcc, GND: nguồn cấp điện, chân số 40-20.
- Chức năng:
• Cung cấp nguồn điện cho chip 89V51 hoạt động.
• Vcc = +5V ± 10%.
• GND = 0V.
v Tổ chức bộ nhớ
- Bộ vi xử lý có không gian bộ nhớ chung cho dữ liệu vàchương trình
- Chương trình và dữ liệu nằm chung trên RAM.
- Bộ vi điều khiển có không gian bộ nhớ riêng cho dữ liệu vàchương trình.
- Chương trình và dữ liệu nằm riêng trên ROM và RAM.
Quang báo điều chỉnh qua bàn phím
Page
9
Tổ chức bộ nhớ của chip 89V51RB2:
Không gian bộ nhớ của chip 89V51RB2
II. IC74LS154:
IC 74LS154 là loại IC dùng để giải mã ,giải đa hợp
(Decoder/Demultiplexer)
Quang báo điều chỉnh qua bàn phím
Page
10
SƠ ĐỒ CHÂN IC74LS154
Chức năng các chân của IC 74ls154:
Chân 24,12(VCC,GND):dùng cấp nguuồn cho IC hoạt động .
Chân 18,19(G1,G2):các ngõ vào cho phép IC hoạt động,trong một thời
điểm chỉ có 1 ic hoạt động,ic bị cấm hoạt động thì tất cả ngõ ra đều ở mức logic
cao (bất chấp ngõ vào ở trạng thái nào).
Chân 23,22,21,20(A,B,C,D):các ngõ vào quy định trạng thái ngõ ra
Chân 1-11,13-15(O0-O15):các ngõ ra của ic
Tuỳ thuộc vào trạng thái của các đường địa chỉ mà ta có ngõ ra t ương ứng,khi
cả hai ngõ vào G1,G2 ở mức logic thấp thì ic hoạt động bình thường ,tại một
thời điểm chỉ có một ngõ ra ở mức logíc thấp ,tất cả các ngõ còn lại đều ở mức
logic cao.
Sơ đồ bên trong ic 74ls154
Quang báo điều chỉnh qua bàn phím
Page
11
Bảng trạng thái IC74LS154
H: HIGH Voltage Level.
L: LOW Voltage Level.
x: Don’t care.
Nguyên tắc hoạt động của IC 74ls154:
Dựa vào bảng trạng thái ta th ấy :chỉ cần ch ân G1,G2 ỏ trạng thái cấm
(kh ông cho phép IC hoạt động)thì tất cả ngõ ra của Ic 74ls154 đều ở mức logic
cao bất chấp trạng thái ở các chân địa ch ỉ (A,B,C,D).Chẳng hạn như khi chân
G1 ở mức logic cao thì tất cả các ngõ ra của IC đều ở mức logic cao bất chấp
trạng thái của các ch ân còn lại như G2,A,B,C,D.
Khi các đương địa chỉ vào từ 01H_08H thì mức logic thấp duy nhất ở ngõ ra sẽ
di chuyển từ ngõ ra(O0_O7).
III. IC74LS00:
Ch ân 1,2,4,5,9,10,12,13:ngõ vào
Ch ân 3,6,8,11: ngõ ra
Ch ân 7,14:GND,VCC
Sơ đồ chân IC 74LS00:
Quang báo điều chỉnh qua bàn phím
Page
12
Bảng trạng thái IC74LS00:
IV. IC 7805(IC ổn áp):
Ic 7805 là Ic ổn áp dương ,hai số sau chỉ điện áp ra cố định của nó ,ví dụ như
7805:
ổn áp dưong có điện áp ngõ ra là 5V,7812:có điện áp ra là 12V…Tuỳ
theo dòng điện ở ngõ ra ,người ta thêm chữ để chỉ :
78LXX:dòng điện danh định 100mA(L:Low)
78XX: dòng điện danh định là 1A
78HXX:dòng điện danh định là 5A(h:High)
B. Sơ đồ khối của mạch quang báo :
V
I
0,33µ F
0,1µF
7805
V
O
1
2
3
7805
1
3
2
SƠ ĐỒ CHÂN
IC 7805
Quang báo điều chỉnh qua bàn phím
Page
13
C. Chức năng của từng khối
:
KHỐI VI ĐIỀU
KHIỂN
KHỐI PHÂN
KÊNH
KHỐI HIỂN THỊ
BẢNG LED MA
TRẬN
KHỐI BÀN PHÍM
KHỐI
NGUỒN
Quang báo điều chỉnh qua bàn phím
Page
14
I. Khối vi điều khiển:
IC 89V51RB2 là khối điều khiển trung tâm ,khối này nhận tín hiệu điều khiển
từ bàn phím thông qua Port 0 đồng thời cũng xuất dữ liệu cho khối phân kênh
thông qua Port 2 để quét hàng và xuất dữ liệu hiển thị ra cột thông qua Port 1.
II. Khối phân kênh :
Khối phân kênh dùng 2 IC 74LS154 dùng điều khiển hoạt động của 4 led ma
trận. Việc dùng IC 74LS154 làm giảm bớt việc phải tốn Port ở khối CPU do IC
này phân kênh 4 è 16 ( 2 IC sẽ được 32 đường điều khiển ).
III. Khối Led Matrix :
VCC
VCC
U7A
74LS00
1
2
3
147
P0
1
2
3
4
5
6
7
8
1
74LS154
1
2
3
4
5
6
7
8
9
10
11
13
14
15
16
17
2412
23
22
21
20
18
19
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
VCCGND
A
B
C
D
G1
G2
LED3
1
2
3
4
5
6
7
8
2
1
2
3
4
5
6
7
8
9
10
11
13
14
15
16
17
2412
23
22
21
20
18
19
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
VCCGND
A
B
C
D
G1
G2
LED2
1
2
3
4
5
6
7
8
LED4
1
2
3
4
5
6
7
8
VCC
LED1
1
2
3
4
5
6
7
8
P2
HI
0
PIN
1
2
3
4
5
6
7
8
A.0
A.1
A.2
A.3
A.4
A.5
A.6
A.7
U7
INT/EXT
1
2
3
INT
COM
EXT
Y1
ZTA
HI
R2
R
1
2
3
4
5
6
7
8
A.0
A.1
A.2
A.3
A.4
A.5
A.6
A.7
HI
U12
1
2
3
4
5
6
7
8
A.0
A.1
A.2
A.3
A.4
A.5
A.6
A.7
C3
C
0
R4
R
0
SW1
U4
89C51
1
2
3
4
5
6
7
8
10
11
12
13
14
15
16
17 32
33
34
35
36
37
38
39
21
22
23
24
25
26
27
28
30
29
40
20
18
19
9
31
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7 P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
ALE
PSEN
VCC
GND
X2
X1
RST
EA
C3
C
U10
1
2
3
4
5
6
7
8
A.0
A.1
A.2
A.3
A.4
A.5
A.6
A.7
C1
C
Quang báo điều chỉnh qua bàn phím
Page
15
Khối led matrix với 4 led dùng để hiện được 4 ký tự.
Các Led ma được thiết kế theo kiểu cột nối chung(cột hiển thị màu đỏ riêng ,cột
hiển thị màu xanh riêng) được nối với Port 1 để hiển thị ký tự,còn các hàng
đuợc nối riêng theo từng Led để cấp tín hiệu quét.
IV. Khối phím Matrix:
R6
G2
G4
R31
R
Q13
C15
C2
G3
DG1
P2
R35
R
Q6
C22
P32
P31
R13
R
PD
DR3
Q31
G6
P10
DG6
PD
C29
P21
R26
R
Q19
R45
R
C18
R1
R38
R
PC
R3
R0
DG0
R42
R
G1
DG4
P17
PA
P29
P16
VCC
C11
P23
R5
DR1
R9
R
R15
R
C12
G0
Q30
R27
R
R2
R
C14
PD
C21
R0
P11
Q20
PA
PD
R6
R47
R
R22
R
R33
R
G4
G6
DR6
Q9
C1
C7
PB
P14
R1
P20
P6
G5
Q12
G0
R48
R
VCC
C7
G3
G7
DG2
P32
P1
R5
R
C30
P27
R11
R
R5
R3
R43
R
P9
DG7
R3
R
C13
C20
P27
Q25
DR7
R6
R
Q7
C17
C2
G6
R34
R
C6
P15
U4
ledmatirx
24
21
18
15
1
4
7
10
12
9
6
3
13
16
19
22
11
8
5
2
14
17
20
23
C0G
C1G
C2G
C3G
C4G
C5G
C6G
C7G
R7
R6
R5
R4
R3
R2
R1
R0
C7R
C6R
C5R
C4R
C3R
C2R
C1R
C0R
R4
DR2
R6
R3
R1
R16
R
Q32
PA
R6
P20
R32
R
P8
C11
PC
R5
DG3
DR5
Q27
R20
R
PB
G3
R4
G2
Q29
R10
R
R46
R
R25
R
R37
R
Q8
P4
C10
C23
PC
PB
R7
P5
Q5
J8
CON3
1
2
3
C19
P22
R7
P31
R19
R
R3
C25
DR0
C27
G7
PD
DG3
C32
P28
P10
R4
R
P16
R12
R
P15
G1
G0
R29
R
C17
DG7
R41
R
Q3
P28
C6
C10
R18
R
C9
C25
DR6
Q16
C16
P24
PA
J4
CON8
1
2
3
4
5
6
7
8
Q23
C18
C23
G7
DR1
Q22
R36
R
R14
R
PC
R2
G4
R4
Q17
R1
R
Q21
PA
C26
P19
PC
R7
PA
R7
G1
DR4
R39
R
C20
P21
PC
G7
R5
P5
R4
P14
R2
P30
R8
R
Q2
C9
C19
G0
G4
J6
CON8
1
2
3
4
5
6
7
8
C26
G0
DG4
PD
P9
R24
R
Q11
C22
P13
P26
R21
R
C24
P12
G6
DG2
C3
R2
DG6
P4
P2
P29
DR5
C32
PB
Q4
C5
P23
C13
G5
G1
DR0
J3
CON8
1
2
3
4
5
6
7
8
VCC
C15
PB
G4
PD
C28
C12
PB
R1
R7
R
VCC
VCC
PA
G3
P25
P18
Q15
PB
G2
DR3
R40
R
P18
PB
R0
G5
C30
U1
ledmatirx
24
21
18
15
1
4
7
10
12
9
6
3
13
16
19
22
11
8
5
2
14
17
20
23
C0G
C1G
C2G
C3G
C4G
C5G
C6G
C7G
R7
R6
R5
R4
R3
R2
R1
R0
C7R
C6R
C5R
C4R
C3R
C2R
C1R
C0R
C8
P24
R5
DG0
G5
P13
PD
C28
R2
R3
R30
R
P7
P1
PD
Q14
P11
P8
C4
C5
C1
G7
R7
DG1
Q26
C14
DG5
P30
P3
R23
R
P25
Q28
R1
DR4
DG5
Q1
P22
PC
R44
R
PC
R0
R28
R
G6
DR7
U3
ledmatirx
24
21
18
15
1
4
7
10
12
9
6
3
13
16
19
22
11
8
5
2
14
17
20
23
C0G
C1G
C2G
C3G
C4G
C5G
C6G
C7G
R7
R6
R5
R4
R3
R2
R1
R0
C7R
C6R
C5R
C4R
C3R
C2R
C1R
C0R
C16
PB
C27
R6
J1
CON8
1
2
3
4
5
6
7
8
P17
R17
R
J5
CON8
1
2
3
4
5
6
7
8
C3
C8
P19
PA
G2
J2
CON8
1
2
3
4
5
6
7
8
U2
ledmatirx
24
21
18
15
1
4
7
10
12
9
6
3
13
16
19
22
11
8
5
2
14
17
20
23
C0G
C1G
C2G
C3G
C4G
C5G
C6G
C7G
R7
R6
R5
R4
R3
R2
R1
R0
C7R
C6R
C5R
C4R
C3R
C2R
C1R
C0R
C4
G2
DR2
C24
R2
P12
P3
C21
C31
G5
G3
G1
PC
C29
R4
P6
R0
C31
P7
Q18
Q10
PA
P26
Q24
Quang báo điều chỉnh qua bàn phím
Page
16
Khối bàn phím này được thiết kế dựa vào cấu trúc hàng và cột của ma trận.
Bàn phím gồm 16 phím được sắp xếp theo ma trận 4x4 (4 hàng x 4 cột). Các
hàng và cột của ma trận phím này được kết nối với vi điều khiển thông qua đầu
nối jack 8. R0-R3 các hàng của ma trận phím. C0-C3 các cột của ma trận phím.
V. Khối nguồn:
Mạch ổn áp có điện áp ngõ ra cố định 5V sử dụng IC ổn áp 7805(ổn áp dương
có điện áp ngõ ra là 5V,dòng điện ngõ ra đến 1A)
Các tụ 0,33 và 0,1uF dùng chống nhiễu .Phần tử điện trở công suất chủ yếu của
mạch này là bảng đèn .Ic ổn áp 7805 chịu đựoc dòng đển 1A nên bảo đảm cung
cấp dòng cho toàn mạch mà bản thân nó không bị quá dòng .Tuy nhiên ta cũng
cần gắn tản nhiệt cho IC để nó hoạt đông ở điều kiện tốt nhất.
D. NGUYÊN LÝ HOẠT ĐỘNG:
V
I
0,33µ F
0,1µF
7805
V
O
1
2
3
7805
1
3
2
SƠ ĐỒ CHÂN
IC 7805
Quang báo điều chỉnh qua bàn phím
Page
17
I. Khối Led Matrix:
- Loại Led ma trận sử dụng là Led 24 chân gồm 8 hàng và 8 cột.Ma
trận Led có 2 màu chính là xanh và đỏ,ngoài ra còn có 1 màu phụ là màu
cam khi kết hợp 2 màu trên lại.Mõi điểm Led trên ma trận có cấu tạo gồm 2
Led xanh và đỏ ghép lại theo nguyên tắc Anode chung còn Cathode để
riêng.Ma trận Led 8 hàng x 8 cột gồm 24 chân được chia làm 3 nhóm chân :
8 hàng từ R0-R7( là các anode chung của các Led trên cùng 1 hàng, 8 cột đỏ
C0R-C7R ( là các Cathode chung của các led màu đỏ trên cùng 1 cột) , 8 cột
xanh C0X-C7X ( là các Cathode chung của các led màu xanh trên cùng 1
cột).Sự kết hợp các mức logic cao/thấp thích hợp trên các hàng và cột theo
một quy luật nhất định mà ta sẽ có hình ảnh như mong muốn.
- Phương pháp điều khiển: đầu tiên ta cấp tín hiệu sao cho hàng 1
sáng có nguồn rồi đưa ra mã nhị phân tương ứng của hình ảnh cần hiển thị
tại hàng đó ra các cột.Kế tiếp ta cấp tín hiệu cho hàng 2 có nguồn rồi đưa mã
nhị phân tương ứng của hình ảnh cần hiển thị tại hàng đó ra cột.Quá trình
cứ diễn ra một cách tuần tự và liên tục như vậy và do hiện tượng lưu ảnh
của mắt mà ta thấy được các Led dường như sáng như cùng một lúc để tạo ra
hình ảnh mong muốn trên Led ma trận
- Các ngõ vào điều khiển hàng và cột đều sử dụng mức thấp để điều
khiển.
II. Khối vi điều khiển:
- Ở đây ta dùng con 89V51RB2, có 40 chân,gồm 4 Port dùng xuất
nhập dữ liệu,mõi Port 8 chân; 2 chân nguồn 20 mass và 40 Vcc; 2 chân gắn
thạch anh (chân 18,19);1 chân reset chân 9;chân 29 là chân cho phép bộ nhớ
chương trình;chân 30 là chân chốt địa chỉ và cuối cùng chân 31 là chân cho
phép truy xuất ngoài.
- Để reset chíp ta dùng nút nhấn . Trong mạch,chúng ta có thể reset
tự động bằng tụ hoặc reset bằng tay bởi nút nhấn.
III. Khối phím ma trận:
- Được thiết kế dựa trên cấu trúc hàng và cột của ma trận.Bàn phím
gồm 16 phím được sắp xếp theo ma trận 4 x 4 (tức 4 hàng 4 cột).Các hàng và
cột của ma trân phím này được kết nối với vi điều khiển thông qua Port
0.R0-R3 : các hàng của ma trận phím,C0-C3 : các cột của ma trận phím
Để điều khiển bàn phím ma trận nhày ta sử dụng phương pháp quét
phím. Để điều khiển quét phím này ta xuất 1 dữ liệu 4 bit( trong đó 1 bit ở
mức logic thấp và 3 bit ở mức logic cao) ra các cột của ma trận phím, đọc 4
bit dữ liệu các hàng của ma trận phím vào để kiểm tra xem có phím nào
được ấn không.Nếu có phím ấn thì trong 4 bit đọc vào sẽ có một bit ở mức
logic thấp và dựa trên cơ sở đó để thiết lập mã ấn phím.Nếu không có phím
ấn thì 4 bit đọc vào đều ở mức logic cao,khi đó ta chuyển mức logic thấp
sang cột kế tiếp để dò tìm phím khác.
Quang báo điều chỉnh qua bàn phím
Page
18
IV. Khối phân kênh:
Khối phân kênh dùng 2 IC 74LS154 dùng điều khiển hoạt động của 4 led
ma trận. Việc dùng IC 74LS154 làm giảm bớt việc phải tốn Port ở khối CPU do
IC này phân kênh 4 è 16 ( 2 IC sẽ được 32 đường điều khiển ).
Nguyên lý hoạt động của khối phân kênh : Dùng 5 bit ở Port 2 để điều
khiển. Trong đó, 4 bit dùng để điều khiển ngõ vào của cả hai IC 74LS154. Còn
bit thứ 5 điều khiển cho phép trong một thời điểm chỉ có một IC hoạt động.
Điều này thực hiện được nhờ vào IC cổng đảo 74LS00. Ngõ vào của cổng đảo
sẽ được nối với bit thứ 5 và chân số 18,19 của IC thứ nhất. Ngõ ra được nối với
chân số 18,19 con thứ 2của IC thứ hai.Khi bit thứ 5 ở mức 0 thì IC1 sẽ hoạt
động điều khiển Led ma trận 1 và 2. Khi bit 5 ở mức 1 thì IC2 sẽ hoạt động điều
khiển Led ma trận 3 và 4.
Bảng trạng thái IC74LS154
VCC
VCC
U7A
74LS00
1
2
3
147
P0
1
2
3
4
5
6
7
8
1
74LS154
1
2
3
4
5
6
7
8
9
10
11
13
14
15
16
17
2412
23
22
21
20
18
19
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
VCCGND
A
B
C
D
G1
G2
LED3
1
2
3
4
5
6
7
8
2
1
2
3
4
5
6
7
8
9
10
11
13
14
15
16
17
2412
23
22
21
20
18
19
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Y10
Y11
Y12
Y13
Y14
Y15
VCCGND
A
B
C
D
G1
G2
LED2
1
2
3
4
5
6
7
8
LED4
1
2
3
4
5
6
7
8
VCC
LED1
1
2
3
4
5
6
7
8
P2
Quang báo điều chỉnh qua bàn phím
Page
19
H: High Voltage Level
L: Low Voltage Level
X: Don’t Care
E. LƯU ĐỒ GIẢI THUẬT CHƯƠNG TRÌNH
Quang báo điều chỉnh qua bàn phím
Page
20
I. Chương trình chính:
II. Chương trình hiển thị con trỏ:
Quang báo điều chỉnh qua bàn phím
Page
21
III. Chương trình con quét phím :
Quang báo điều chỉnh qua bàn phím
Page
22
Sơ đồ giải thuật quét phím , mỗi phím tương đương với 2 chữ cái trong
bảng chữ cái
ü Phím A và B
ü Phím Y và Z (tương tự cho các chữ cái khác)
SCANKEYPAD
A = 01H
NEXT11
22Hß0, 23Hß0, 24Hß0,
25Hß0, 26Hß0, 27Hß0,
28Hß0, 29Hß0, 2AHß0,
2BHß0, 2CHß0, 2DHß0,
2EHß0, 2FHß0, 30Hß0
R7 ß 21H
INC R7
R7 = 1
CHUB
CHU_A
Đ
Đ
S
S
RET
21H ß R7
SCANKEYPAD
A = 0DH
21Hß0,22Hß0, 23Hß0,
24Hß0, 25Hß0, 26Hß0,
27Hß0, 28Hß0, 29Hß0,
Đ
Quang báo điều chỉnh qua bàn phím
Page
23
ü Phím Enter
ü Hiển thị từng chữ cái lần lượt trên 4 vị trí con trỏ: )
Quang báo điều chỉnh qua bàn phím
Page
24
Các chữ cái khác tương tự nhưng cơ sỡ dữ liệu sẽ lấy giống trong bảng
chữ cái lưu trong ROM.Ví dụ,chữ B ,ta vẫn so sánh R2 nhưng khi nhập dữ liệu
vào các ô nhớ 31H,32H,33H,34H lúc này sẽ được nạp vào giá trị là 08,hay chữ
C là giá trị 16.
IV. GIẢI THÍCH HOẠT ĐỘNG CỦA CHƯƠNG TRÌNH:
TROVE
34H ß 00
TROVE
VT_A4
TROVE
31H ß 00
Đ
VT_A2
S
VT_A3
R2 = 0
R2 = 2
33H ß 00
VT_A4
S
Đ
R2 = 1
32H ß 00
VT_A3
S
Đ
TROVE
VT_A2
Quang báo điều chỉnh qua bàn phím
Page
25
Trước tiên khi bước vào gọi chương trình chính của chương trình hiển
thị con trỏ trên con Led thứ nhất.Tiếp tục gọi chương trình chính 1 để thực hiện
các bước lấy và lưu dữ liệu vào RAM,tại cuối bước này ta thực hiện việc tăng
R2 ( R2 là biến đếm để dịch chuyển vị trí con trỏ sang vị trí con Led kế
tiếp).Thời gian để chuyển từ con Led này sang con Led kế tiếp được xác định
bởi biến đếm R4 (R4 là biến đếm quy định thời gian để qua con Led kế tiếp).
Trong chương trình kiểm tra phím,sau khi dùng chương trình quét phím
ma trận để coi có phím nào được nhấn hay không.Trong chương trình này,mõi
phím trên bàn phím ma trận đều được lưu bằng 1 ô nhớ từ 21H đến 2DH trong
bộ nhớ RAM nội con 89V51RB2.Mõi phím được dùng cho ra 2 chữ cái,thứ tự
các chữ cái mà phím ấn được được ghi trên bề mặt bàn phím ma trận.Mõi phím
lưu được 2 chữ cái khi bấm là do ta dùng biến đếm R7 để xác định chữ cái cần
hiển thị ra.Chẳng hạn như chúng ta muốn nhấn chữ A,ta nhấn vào bàn phím nút
hiển thị chữ A,nếu ta muốn hiển thị chữ B ta tiếp tục ấn vào phím vừa ấn sẽ hiển
thị được chữ B.Lí do ở đây là chúng ta so sánh biến đếm R7,nếu R7 = 1 ( tương
đương với phím đó được ấn 1 lần) sẽ hiện thị lên chữ A,khi ta ấn tiếp tức R7 = 2
thì chữ sẽ nhảy sang chữ B.Ta chỉcho phép một phím hiển thị 2 chữ cái nên khi
ta ấn tiếp sau chữ B sẽ trở về hiện thị lại chữ A và cứ thế tiếp diễn.Trong
chương trình này ta sử dụng 13 nút nhấn để lấy 26 chữ cái ( từ A đến Z) và 1
nút nhấn Enter dùng để cho chạy chữ sau khi đã tạo ra dòng 4 chữ cái. Ở cuối
đoạn chương trình này chúng ta tăng biến đếm R4 để xác định thời gian dịch
qua con Led kế tiếp .Chương trình dùng Port 0 để quét phím tạo mã.
Trong chương trình hiện thị chữ,ta dùng Port 1 làm Port xuất dữ liệu và
Port 2 làm Port quét.Port 2 kết nối với khối phân kênh để điều khiển việc quét
Led. Đây là chương trình dùng hiển thị các chữ cái có trong bảng mã có sẵn
trong ROM nội IC 89V51RB2( từ A đến Z).Mõi lần quét qua được lưu vào
trong 1 ô nhớ,tổng cộng cò 32 ô nhớ từ 40H đến 5FH để lưu các byte của các
chữ cái được ấn trong chương trình kiểm tra phím.
Chương trình chạy là chương trình hiển thị ra các Byte của các chữ cái đã
được lưu trữ trong RAM sau đó được cho dịch cột,giống như chương trính chạy
lấy cơ sở dữ liệu từ ROM học lúc trước. Để khỏi bị lem trong quá trình dich cột
thì ta phải nạp giá trị cho các ô nhớ từ 60H đến 7FH là 0FFH.
F. CHƯƠNG TRÌNH CHÍNH