mạch quang báo giao tiếp với máy tinh
Trang 1Trong phim ảnh người ta chiếu 24 hình/s để người xem có cảm giác hoạt động trong phim là liên tục Lợi dụng tính chất lưu ảnh của mắt người mà người ta
có thể tạo ra những bảng quang báo với kích thước khác nhau
II Giới thiệu về mạch quang báo trong đề tài
Có nhiều phương pháp và cách thức để thiết kế một bảng quang báo Đơn giản và rẻ tiền nhất là sử dụng bộ nhớ EPROM của Vi điều khiển (VĐK), mỗi khi cần thay đổi nội dung hiển thị trên bảng thì ta nạp lại chương trình vào EPROM Nhược điểm của phương pháp này là mỗi khi cần thay đổi nội dung chúng ta lại phải gỡ IC
ra để nạp lại chương trình Một cách khác là ta sử dụng bộ điều khiển trung tâm là
Vi xử lý Với những tính năng vượt trội bảng quang báo được điều khiển dễ dàng hơn, hình ảnh hiển thị cũng sinh động hơn, có thể hiển thị được hình ảnh chuyển động với những màu sắc khác nhau Tuy nhiên chi phí thực hiện tốn kém
Quang báo thiết kế trong đề tài có thể giao tiếp trực tiếp với máy tính thông qua giao diện người dùng được thiết kế bằng phần mềm VB6.0 Ngoài ra quang báo còn có thể giao tiếp được với bàn phím máy tính PS2.
Người sử dụng muốn thay đổi thông tin hiển thị có thể nhập thông tin này từ bàn phím PS2 hoặc truyền từ máy tính thông qua chuẩn truyền RS232
III Phương pháp quét LED
Trang 2Hình 1.2 là sơ đồ kết nối từ các LED đơn thành một ma trận LED 8x8 (8 hàng
8 cột) Các tín hiệu P0.0 -> P0.7 của cổng P0 của VĐK được nối vào Anode của 8 hàng LED Các tín hiệu điều khiển cột p1.0 -> P1.7 được nối vào Cathode của của 8 cột LED
Khi tín hiệu ở P0.0 là 1 (+5V) tương ứng với các LED ở chân Cathode của hàng 1 ở mức cao, khi P1.0 là mức 1 tương ứng với các LED ở chân Anode của cột
1 được cấp điện thế thấp Như vậy hàng 1 được cấp điện áp cao, cột 1 được cấp điện áp thấp nên chỉ có một LED duy nhất được sáng là LED giao nhau của hàng 1
và cột 1 Như vậy khi có một cặp tín hiệu điều khiển hàng và cột thì có duy nhất một LED là giao điểm của hàng hàng và cột đó sáng Trên cơ sở đó ta có thể mở rộng thành bảng quang báo với số hàng có thể là 16, 32 hoặc có thể lớn hơn và số cột có thể lên tới hàng trăm tuỳ thuộc vào cách thiết kế mạch liên kết với các hàng
và cột.
Trong trường hợp ta muốn hiển thị một số hay một một ký tự, chúng ta sẽ có cảm giác như đồng thời các LED được sáng Nhưng thật ra đó chỉ là cảm giác của mắt bị đánh lừa Dưới đây chúng ta sẽ tìm hiểu về cách quét LED.
Ví dụ ta muốn hiển thị chữ “L” trên ma trận Khi đó các LED trên cột 1 và các LED trên hàng 8 sáng Muốn như vậy thì các bit thuộc cổng P0 và P1 đều ở mức 1, như vậy thì toàn bộ LED trong ma trận đều sáng Do vậy trong điều khiển LED ma trận chúng ta không thể điều khiển bằng cách hiển thị tĩnh mà phải dùng phương pháp hiển thị động (phương pháp quét LED) Nghĩa là tiến hành cấp tín hiệu điều khiển theo dạng xung quét cho các hàng và cột cần được hiển thị
Gọi thời gian quét đủ từ cột 1 đến hết cột 8 là một chu kỳ Để đảm bảo cho mắt thấy các LED sáng đều không bị nháy thì tần số quét cho một chu kỳ nhỏ nhất
là 50Hz
Để hiển thị được chữ L như Hình 1.4 ta có thể mô tả các bước quét trong một chu
kỳ như sau:
Trang 5Hình 1.3: Mã chữ Hình 1.4: Mô phỏng chữ L
Với việc hiển thị trong thí nghiệm chúng ta chỉ cần một hoặc hai ma trận LED
do đó chúng ta có thể sử dụng các bit trực tiếp của cổng Vi điều khiển (VĐK) hay
8255 Đối với một bảng quang báo thì yêu cầu cần có nhiều hàng, nhiều cột Một trong các cách tiết kiệm bit để điều khiển cột chúng ta có thể dùng vi mạch ghi dịch như 74HC164 hoặc 74HC595 Khi đó tín hiệu quét hàng được lấy ra từ cổng VĐK (tuỳ thuộc vào số hàng mà ta sử dụng hết một cổng, hai cổng hay ba cổng) Tín hiệu quét cột được lấy ra từ các bit của cổng còn lại
Tín hiệu quét cột sẽ dịch theo từng xung Clock do người lập trình tạo ra Cứ mỗi một xung thì một cột được dịch, đồng thời vào thời điểm cột được dịch thì dữ liệu tương ứng cần hiển thị cũng được đưa ra hàng Như vậy để hiển thị được thông báo thì xung dịch và dữ liệu cần phải được xuất ra đồng bộ Quay trở lại ví
dụ trên theo Hình1.3 muốn hiển thi đực trữ “L” thì cổng P0 cần xuất ra hàng ma trận các mã : FFh,80h,80h,80h,80h,80h,80h,80h
nhờ có xung dịch Clock
Tương tự Bước 8: P0 xuất 80h đồng thời dữ liệu cột được đưa tới cột 8
Trang 6Quá trình quét như vậy xảy ra rất nhanh (tính bằng µs
cho mỗi cột) vì vậy mắt có cảm giác như các LED đồng thời được sáng.
Gọi t là thời gian một xung được dịch.
Như phần trên đã nói tần số hiển thị của một hàng hay một cột là 50Hz
Như vậy thời gian để dịch một xung CLK :
ms s
1.Sơ đồ khối của một hệ vi xử lý:
Trang 7• 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)
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ệ.
Trang 8 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.
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ớ.
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.
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.
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ớ.
• Sơ lược về cấu trúc và phân loại ROM – RAM:
• ROM (Read Only Memory): bộ nhớ chỉ đọc
Trang 9• 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.
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
Trang 10 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
Trang 11 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)
- 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
Trang 12 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:
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.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
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.
Chân ALE:
Trang 13- 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ị
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).
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.
Trang 14RST = 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.
- 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.
Khối quang báo
a) Sơ đồ khối
Giao tiếp
máy tính
ĐIỀU KHIỂN CỘT Điều
Khiển
Trang 15Nguyên lý hoạt động sơ đồ khối :
Khối điều khiển trung tâm điều khiển mọi quá trình hoạt động của hệ thống Mạch có khối giao tiếp máy tính nên sẽ dễ dàng thay đổi được dữ liệu mà mình muốn Khối điều khiển trung tâm sẽ thực hiện giải mã dữ liệu sau đó đưa các dữ liệu vào khối điều khiển hàng và điều khiển cột cuối cùng các dữ liệu được xuất ra khối hiển thị.
Chức năng các khối
Điều khiển cột: nhận tín hiệu điều khiển từ vi điều khiển, tạo địa chỉ, từ đó đưa ra tín hiệu để cho phép cột led nào sáng trên bảng đèn Tại mỗi thời điểm chỉ có một cột led được sáng Tín hiệu này được đưa đến bộ đệm dòng.IC được
sử dụng là IC 74HC 245
- Các bộ đệm dòng cho hàng và cột nhằm đảm bảo của các led trên màn hình là đồng đều khi chỉ một led sáng hay cả 4 led sáng sử dụng IC chuyên dụng là 74HC595
- Khối điều khiển trung tâm sử dụng vi điều khiển 89C52 Điều khiển quá trình hiển thị bảng led bằng cách gửi tín hiệu điều khiển tới các IC khác, điều khiển độ sáng led, phông chữ,hiệu ứng.
- Khối nguồn: Cung cấp nguồn cho mạch điện nhưng bản than nó không
bị quá dòng.
- Khối giao tiếp với máy tính: dùng PL 2303
c) Sơ đồ mạch và tính toán chọn linh kiện
NGUỒN CUNG CẤP
Trang 16Khi cấp nguồn 5V vào mạch
Các linh kiện sử dụng trong mạch :
1. Khối nguồn :
Sơ đồ mạch :
Trang 17Nhiệm Vụ : Mạch nguồn ổn áp 5v sử dụng Lm 7805 làm nhiệm vụ tạo ra nguồn cung cấp 5V ổnđịnh,và mức dòng cung cấp lên đến 3A được nâng dòng bởi BJT 2SB688
: Điện áp 12 vdc được tạo ra nhờ biến thế đi qua bộ chỉnh lưu cầu diode.
Sau đó đi qua tụ c1 (lọc các thành phần điều hòa bậc 2,3 ),qua tụ c2 để lọc nguồn cho điện áp được phẳng hơn,ổn định hơn.
2 :Điện áp đi tới R1 làm cho VR1 trên R1 tăng đến khoảng đủ làm cho 2sB688
dẫn (0,6-1.5)V.Khi này 1 phần dòng điện chạy qua LM7805 làm cho nó hoạt động và cho ra mức áp là 5vdc,dòng tối đa mà Lm7805 chịu đựng được
là 1A.Một phần dòng điện thông qua BJT và cho dòng ra Ic~1A.Các tụ C3,C4 cungx làm nhiệm vụ tương tự C1,C2 Như vậy ta đã có nguồn ổn áp 5Vdc với sai
số là +-0,25v.
Cách Kiểm tra mạch:
-Cấp nguồn cho mạch,đo điện áp đầu ra và đo dòng điện.Ta dung đồng hồ kim đặt ở chế độ X10,mạch nguồn này là mạch tạo dòng 1A nên ta mắc tải có giá trị là 5 ohm.nếu kim ở vị trí 0.5 tức là đúng mạch đạt dòng 1A.
Trang 18-Nếu giá trị áp đo được ở đâu ra vượt qua sai số cho phép là 5vdc+-0.25v thì ta kiểm tra áp đầu vào xem có nằm trong khoảng điện áp cho phép hoạt động của LM7805 hay không.Giá trị đầu vào của Lm7805 làm việc là 8-40v.Khi không nằm trong khoảng này thì linh kiện thực hiện không đúng nhiệm vụ là ra 5vdc.
-Nếu dòng điện ra là chưa đủ hoặc rất bé so với 1A và LM7805 bị nóng thì chứng
tỏ BJT chưa được dẫn nên cần kiểm tra xem giá trị của điện trở phân cực R1 đã phù hợp để tạo điện áp phân cực cho BJT Ta đo điện áp VR1 xem có nằm trong khoảng đẫn khuếch đại của BJT không.Nếu không nằm trong khoảng 0.6-1,5V thì cần điều chỉnh giá trị R1.
-KIỂM TRA NHIỄU NGUỒN:Dùng máy hiện song đo xem sóng ra có phẳng hay không.Nếu chưa phẳng thì ta tăng giá trị các tụ lọc để lọc các thành phần bậc cao
để loại bỏ nhiễu làm ảnh hưởng tới độ ổn định của nguồn
Kiểm Tra thực tế trong mạch:
-Giá trị đầu ra ổn định 4,98vdc.Dòng ra đo được là gần 1A.Thỏa mãn giá trị cho led sáng ( 32 led với dong 64 mA)
2. Khối điều khiển trung tâm và điều khiển cột
Sơ đồ mạch :
Nguyên lý hoạt động của mạch :
mạch hiển thị bao gồm có 32 cột ,khi ta điều khiển mạch điều khiển hàng cấp nguồn cho đầu anode của các led thì việc còn lại của chúng ta cho các cột tích cực mức thấp thì các điểm led sẽ sáng.
IC 74HC245 là IC đệm dòng đảm bảo cấp đủ dòng cho ma trận LED sáng đều thực hiện khuếch đại dòng (tiến hiệu điều khiển) trước khi đưa vào IC dịch dữ liệu 74HC595
Trang 19Các linh kiện sử dung trong mạch :
a, IC 74HC245 :
1. Chức năng : Đệm dữ liệu 2 chiều , thường ứng dụng trong các mạch sử dụng led như quét led matrix , led 7 , hoặc đệm dữ liệu trên bus với các mạch sử dụng nhiều linh kiện mắc song song
2 Sơ đồ chân: