Chương trỡnh cho bảng quang bỏo

Một phần của tài liệu Ứng dụng vi điều khiển thiết kế bảng thông báo tỷ giá và lãi suất dùng cho phòng giao dịch của ngân hàng Agribank chi nhánh Nha Trang (Trang 52)

Trong đề tài này em sử dụng 8 bảng LED 16x32 ghộp lại thành một bảng cở 32x128 (32 hàng và 128 cột). Mỗi ký tự sẽ được hiến thị trong một khung cỡ 8x8. Để hiển thị ký tự lờn bảng LED, ở đõy ta dựng phương phỏp quột hàng và xuất dữ liệu cột. Quỏ trỡnh quột hàng là ta gửi tớn hiệu cho phộp đến từng 4 hàng trong từng thời điểm. Cựng lỳc đú ta gửi dữ liệu cột đến 8 hàng. Trong đề tài này tớn hiệu cho phộp cột là mức logic 1 và dữ liệu hàng tương ứng là mức 0 (mức 0 ứng với LED sỏng và mức 1 là tắt). Nguyờn tắc quột ma trận như sau.

- Đầu tiờn ta đưa dữ liệu cần hiển thị đến 128 cột.

- Kớch hoạt 4 hàng đầu tiờn và cỏc LED tương ứng sẽ sỏng. Tạo một thời gian trễ, sau đú tắt 4 hàng đầu tiờn.

- Gửi tiếp giỏ trị dữ liệu 128 cột của 4 hàng tiếp theo, kớch hoạt 4 hàng tiếp theo, tạo trễ và lại 4 hàng tiếp theo.

- Quỏ trỡnh quột đú cứ tiếp diễn cho đến khi quột hết 32 hàng của bảng LED. Việc quột hiển thị này diễn ra trong thời gian rất ngắn, cỡ vài chục mili giõy, ta sẽ thấy hỡnh ảnh hiển thị trờn bảng LED.

Trong mỗi thời điểm chỉ cú 4 hàng được sỏng nhưng do thời gian quột rất nhanh và do hiện tương lưu ỏnh trong vừng mạc của mắt nờn ta thấy hỡnh ảnh xuất hiện liờn tục. Tần sổ quột cần phải đảm bảo sao cho đủ hoặc lớn hơn 24hỡnh/s. Thường ta chọn tần số quột từ 40Hz đến 100Hz hoặc cú thể lớn hơn.

Hỡnh 3.32 là sơ đồ khối cho việc quột LED ma trận. Trong đú khối giải mó hàng là ic 74HC138 và khối ghi dịch ra cột là cỏc ic 74HC595.

Hỡnh 3.32. Sơ đồ khối quột LED ma trận Lưu đồ thuật toỏn quột LED ma trận:

Sai

Hiển thị hết dữ liệu Bắt đầu

Giải mó tớn hiệu từ mỏy tớnh Giải mó cột và hàng Hiển thị dữ liệu ra LED ma trận

Đỳng Sai Đỳng Mỏy tớnh truyền dữ liệu Mỏy tớnh truyền dữ liệu

Lưu đồ thuật toỏn giải mó cột và hàng

i=8 Bắt đầu

i=0; lap=0; hàng=0

Truyền bit dữ liệu vào 74HC595; i=i+1 i=0; lap=lap+1 Sai Đỳng Đỳng i=0 Sai hàng=hàng+1 Đỳng Sai i=0; lap=0 lập=8 hàng=8

Lưu đồ thuật toỏn hiệu ứng chữ chạy từ phải sang trỏi Bắt đầu i=0; bitthem=bitthem+1 Đỳng Đỳng vitri=vitri+1 Sai Sai Truyền 8 bit dữ liệu kitu[i] vào 74HC595; i=i+1 kitu[i]=(kitu[i]<<bitthem) | kitu[i+1]>>(8-bitthem)

i=vitri; lap=0; bitthem=0

vitri=0; khai bỏo số phần tử của mảng kitu: n

Sai Đỳng vitri=0 i=8 bitthem =8 vitri=n

Viết code cho chƣơng trỡnh. - Khung nhận từ mỏy tớnh.

& diachi chieudaichuoi noidungchuoi * Trong đú:

&: Kớ tự bắt đầu của khung truyền.

diachi: Địa chỉ của mỏy nhận ở đõy địa chỉ là 1. chieudaichuoi: Chiều dài của chuỗi cần hiển thị.

noidungchuoi: Nội nung của chuỗi cần hiển thị. Vỡ nội dung của chuỗi cú thể hiển thị được tiếng việt (dữ liệu 16 bit) nờn ta mó húa chữ cỏi thành số (dữ liệu 8 bit) để truyền xuống và hiển thị.

*: Kớ tự kết thỳc của khung truyền.

- Viết chương trỡnh.

Mở chương trỡnh Codevision 2.50 lờn và tạo project mới như phần hướng dẫn ở mục 3.1.2.2. Ở thẻ Chip, chọn chip Atmega16 và chọn tần số dao động của thạch anh là 11.0592 Hz (Hỡnh 3.36).

Tiếp theo ở thẻ USART ta thiết lập như trong hỡnh 3.37.

Giải thớch về cỏc giỏ trị thiết lập truyền thụng nối tiếp USART Receiver: Sử dụng chõn RXD làm chõn truyền dữ liệu truyền thụng. Transmitter: Sử dụng chõn TXD làm chõn nhận dữ liệu truyền thụng. Rx interrupt và Tx interrupt: Sử dụng ngắt truyền thụng.

Receiver Buffer và Transmitter Buffer: Bộ đệm dữ liệu (tớnh theo bit). Baud Rate: Tốc độ baud. (adsbygoogle = window.adsbygoogle || []).push({});

Baud Rate Error: Lỗi đường truyền (tớnh theo %).

Communication Parameters: Cỏc thụng số truyền thụng (số bit của dữ liệu, số bit stop, bit kiểm tra lỗi).

Sau khi thiết lập xong lưu lại và thoỏt khỏi chế độ thiết lập để bắt đầu viết chương trỡnh như phần hướng dẫn ở mục 3.1.2.2.

Chương trỡnh cụ thể của bảng thụng bỏo được trỡnh bày ở phần phụ lục.

Một phần của tài liệu Ứng dụng vi điều khiển thiết kế bảng thông báo tỷ giá và lãi suất dùng cho phòng giao dịch của ngân hàng Agribank chi nhánh Nha Trang (Trang 52)