bảng thông tin điện tử nhập liệu từ pc
Trang 1BÁO CÁO ĐỒ ÁN Môn: KT Vi Xử Lý
Khoa Công Nghệ
Nhóm 2:
Trần Tuấn Tài 1101046 Nguyễn Đức Hậu 1100993 Huỳnh Văn Nhu 1101029
Đề tài: Bảng thông tin điện tử nhập liệu từ PC.
GVHD: Trần Hữu Danh
Trang 2Bảng thông tin
điện tử nhập liệu
từ PC.
NGUYÊN LÝ TỔNG QUÁT.
SƠ ĐỒ KHỐI TỔNG QUÁT.
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI.
NỘI DUNG
Trang 3A
B
NGUYÊN LÝ HOẠT ĐỘNG TỔNG
QUÁT
Trang 4SƠ ĐỒ KHỐI TỔNG QUÁT
Khối điều khiển cột
Khối Led matrix
Khối điều khiển hàng
Trang 5SƠ ĐỒ KHỐI TỔNG QUÁT
Khối PC: thực hiện chức năng giao tiếp UART với MSP430 để truyền chuỗi ký
tự xuống khối vi xử lý thông qua chương trình serial port terminal
Khối MSP: giao tiếp UART với PC, nhận chuỗi ký tự, điều khiển khối điều
khiển cột và điều khiển hàng
Khối điều khiển hàng : Đưa dữ liệu ra hàng để hiển thị trên led ma trận, đệm
dòng cho hàng để đảm bảo led ma trận sáng rõ
Khối điều khiển cột :Thực hiện việc quét cột led ma trận liên tục để chuỗi ký
tự được hiển thị, đệm dòng cho cột để đảm bảo led ma trận sáng rõ
Khối led ma trận: Hiển thị chuỗi kí tự nhận được từ PC.
Trang 6THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Khối MSP
MSP 430G2553 là họ điều khiển MSP430, đây là dòng vi điều khiển siêu tiết kiệm năng lượng, được tích hợp nhiều chức năng: biến đổi ADC, DAC, khuyết đại thuật toán Op-Amp, Real Time Clocck, truyền thông UART…vv
Một số tính năng đặc trưng của MSP430FG2553 bao gồm:
-Điện áp nguồn: 1.8V – 3.6 V.
-Mức tiêu thụ năng lượng cực thấp:
-Chế độ hoạt động: 220 μA tại 1MHz, 2,2 V.
-Chế độ chờ: 0.5 μA.
-0,8 μA chế độ đồng hồ thời gian thực
-Chế độ tắt (RAM vẫn được duy trì): 0.1 μA.
Thời gian đánh thức từ chế độ Standby nhỏ hơn 1μs.
Cấu trúc RISC-16 bit, Thời gian một chu kỳ lệnh là 62.5 ns
Cấu hình các module Clock cơ bản:
-Tần số nội lên tới 4 MHz
-Thạch anh 32 KHz.
-Tần số làm việc lên tới 16 MHz.
…….
Timer 16 bit
Ta sử dụng chức năng truyền thông UART để thực hiện yêu cầu đồ án
Trang 7Tìm hiểu UART
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
UART mode:
UART viết tắt của Universal Asynchronous Receiver/Transmitter, nghĩa là bộ truyền nhận dữ liệu nối tiếp bất đồng bộ
Ở chế độ UART, modules USCI_Ax kết nối MSP430 với thiết bị bên ngoài qua chân UCAxRXD và UCAxTXD Chế độ UART được chọn khi bit UCSYNC được xóa
Baud rate:
Định nghĩa: là số bit truyền trong 1 giây, 2 bên thiết bị truyền và nhận cần giống
nhau về tốc độ baud thì dữ liệu truyền-nhận mới chính xác
Cách thuyết lập tốc độ baud:
VD: 1M/19200=52
Trang 8Tìm hiểu UART
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Trang 9Khối MSP
USCI Interrupts:
Cờ ngắt truyền (USCI Transmit Interrupt Operation):
Cờ ngắt UCAxTXIFG được set khi bộ truyền ra dấu thanh ghi UCAxTXBUF sẵn sàng nhận kí tự khác (tức là đã truyền xong kí tự trước) Để xảy ra ngắt thì cờ UCAxTXIE và GIE cần được set UCAxTXIFG tự động reset nếu ký tự được viết lên UCAxTXBUF
Cờ ngắt nhận USCI Receive Interrupt Operation:
Cờ ngắt UCAxRXIFG được set nếu dữ liệu nhận được nạp vào UCAxRXBUF
Để xảy ra ngắt thì cờ UCAxTXIE và GIE cần được set UCAxRXIFG tự động reset nếu UCAxRXBUF được đọc
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Trang 10Khối LED matrix
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Led ma trận : theo hàng thì các anode được nối chung, theo cột thì các cathode được nối chung Anode nối với mức cao(H) và cathode nối với mức thấp(L) thì led sáng, các trường hợp còn lại led tắt
Có 2 cách hiển thị chữ:
Cách 1 : mã quét gởi ra cột và dữ liệu gởi ra hàng
-Cột 1 sáng bằng cách kéo cột 1 xuống mức L các cột còn lại ở mức H , sau
đó gởi byte dữ liệu ra 8 hàng (led nào sáng thì bit tương ứng bằng 1, led nào tắt thì bit tương ứng bằng 0)
-Các cột còn lại thì tương tự
Cách 2 : mã quét gửi ra hàng và dữ liệu gửi ra cột.
-Chọn hàng 1 sau đó đưa dữ liệu tương ứng ra các cột
Dùng 4 led matrix 8x8 và phương pháp quét cột để hiển thị chuỗi
Trang 11Khối điều khiển cột
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Để cho phép 1 cột sáng, ta cho cột đó ở
mức thấp (L) , các cột còn lại ở mức cao
Đồng thời khi đó đưa 8 bit dữ liệu vào hàng ở
mức cao (H).
Phương pháp quét cột: tại mỗi lần quét chỉ
cho phép 1 cột sáng (1 cột sáng ở mức L, các cột còn lại ở mức H), thời gian quét rất nhanh
nên ta thấy các cột sáng đồng thời.
Sử dụng 3 port của MSP là 2.0, 2.1,
2.2 để đưa bit quét ra 32 cột của khối led
matrix thông qua 4 IC 74HC595.Vì dòng ngõ
ra của IC 74HC595 chỉ là 20mA không đủ để đệm dòng cho cột của led ma trận,
phải sử dụng thêm IC ULN2803 để đệm dòng cho cột.
Trang 12Khối điều khiển hàng
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Để làm sáng 1 cột của LED, ta phải đưa dữ liệu 8 bit ra đồng thời ở mức H
Sử dụng 3 port của MSP là P1.3, P1.4, P1.5 để đưa bit dữ liệu ra 8 hàng của khối led
matrix thông qua IC 74HC595.
Để dịch 1 byte dữ liệu ra IC 74HC595, ta làm như sau:
- B1:Dịch 1 bit dữ liệu ra chân Data (DS).
- B2: Xuất 1 xung CLK (SH_CP) để đưa dữ liệu vào IC.
- B3: Kích xung chốt CLK (ST_CP) để xuất dữ liệu song song.
Do ngõ ra của IC 74HC595 cấp không đủ dòng cho LED sáng rõ, do đó ta sử dụng mạch đệm dòng dùng transitor C2383 có Icmax=1 A để đảm cấp đủ dòng cho led sáng rõ.
Trang 13Tìm hiểu về các IC
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
IC74HC595 là IC ghi dịch 8 bit kết hợp chốt dữ liệu, đầu vào nối tiếp đầu
ra song song
-Chân 14: đầu vào dữ liệu nối tiếp, Chân 11: chân vào xung Ck, khi có xung tích cực mức cao thì có 1 bit được dịch vào IC
Chân 12: xung Ck chốt dữ liệu, khi có xung kích vào thì cho phép xuất dữ liệu trên các chân output
IC ULN2803 là IC đệm đảo với 8 ngõ
ra, mỗi ngõ ra là transistor ghép darlington với dòng điện và điện áp ngõ ra cao
- Khi ngõ vào mức cao, transistor được kích dẫn, tương ứng ngõ ra được đưa xuống chân GND tức mức thấp
- Khi ngõ vào là mức thấp, transistor không được kích dẫn, ngõ tương ứng sẽ ở trạng thái tổng trở cao Để tạo được mức 1 cần gắn thêm điện trở treo tại ngõ ra của
IC ULN2803
Transistor C2383 là transistor thuộc
loại transistor NPN.
C2383 có dòng Ic cực đại = 1A đảm bảo dòng cung cấp đủ cho các hàng của led ma trận
Trang 14Khối nhập dữ liệu từ PC
THIẾT KẾ PHẦN CỨNG CHO TỪNG KHỐI
Để thực hiện việc truyền chuỗi dữ liệu từ PC xuống khối vi xử lý qua giao tiếp UART ta sử dụng phần mềm hỗ trợ Serial Port Terminal.
Đây là phần mềm đơn giản dễ sử dụng có thể thay đổi các thông số
để thực hiện việc truyền nhận chuỗi ký tự từ PC đến vi xử lý như: tốc độ Baud, số bit data, parity…vv
Trang 15LƯU ĐỒ GIẢI THUẬT VÀ CODE CHƯƠNG TRÌNH
Lưu đồ giải thuật
Begin
Khởi tạo các Port Thiết lập thông số UART
Nhận kí tự từ máy tính
chuoi= UCA0RXBUFF
Gọi chương trình con dò tìm chuoi
Lưu mã led của kí tự vô mảng tam[c]
chuoi=’/’
Thực hiện dịch phải, dịch trái
Delay c=0
Chương trình chính
Trang 16LƯU ĐỒ GIẢI THUẬT VÀ CODE CHƯƠNG TRÌNH
Lưu đồ giải thuật
Begin
Nhận kí tự từ máy tính
Dò tìm mã led ma trận của kí tự
nhận được trong thư viện font
tạo sẵn, mỗi kí tự sẽ tương ứng
với 5 byte mã led ma trận
End
Dò tìm:
i+k<31 || i+k>c+31
Xuất mã 0xff làm tắt cột
k=0 Begin
Cho hiển thị tam[i+k-32]
Cho i chạy từ 031
i=0
Chống lem, delay
k=31+c End k=k+1
Đ
S Đ
Dịch phải:
Code chương trình:
S
Trang 17KẾT QUẢ THỰC HIỆN
Mạch quang báo cơ bản đã hoạt động và đáp ứng tối thiểu được yêu cầu của đồ án là hiển thị chuỗi kí tự được truyền từ PC thông qua giao thức UART
Hạn chế:
Do đây là lần đầu tiên tìm hiểu về dòng vi điều khiển, cụ thể là dòng MSP430G2553 nên nhóm thực hiện gặp rất nhiều khó khăn trong việc sử dụng vi điều khiển để thực hiện yêu cầu đồ án, do đó kết quả mạch làm ra còn một số hạn chế sau:
Bảng quang báo có kích thước nhỏ, chỉ gồm 4 led trận 8x8
Chưa hiểu rõ chức năng của các IC, nguyên lý đệm dòng nên led
ma trận sáng không được rõ khi quan sát ban ngày.
Trang 18KẾT QUẢ THỰC HIỆN
Hạn chế:
Chưa hiển thị được chữ tiếng Việt có dấu
Chưa tự viết được chương trình để thực hiện việc truyền-nhận giữa máy tính và msp.
Trang 19CÁM ƠN THẦY VÀ CÁC
BẠN ĐÃ THEO DỖI