Điều khiển LCD 16×02 (AVR)

19/03/2012 0 2707

Trong bài này chúng ta sẽ thực hiện viết một chương trình đơn giản điều khiển hoạt động của LCD sử dụng vi điều khiển AVR. LCD được sử dụng rất phổ biến đảm nhận vai trò hiển thị thông tin được lập trình sẵn hoặc các thông tin đã qua xử lý của bộ điều khiển hoặc vi xử lý. Giúp dễ dàng giao tiếp, điều khiển cũng như giám sát hoạt động của hệ thống. Chúng ta sử dụng loại LCD 16×02, có 2 dòng trên màn hình và mỗi dòng có thể hiển thị 16 ký tự. LCD được nối với PORTD của AVR như hình sau:

Trong đó:

  • Các chân 1,2: Cấp nguồn cho LCD hoạt động.
  • Chân 3 (VSS): Điều chỉnh độ tương.
  • Chân 15,16: Đây là 2 chân cấp nguồn đèn nền.
  • Chân 4 đến 14: Các chân điều khiển, truyền dữ liệu.

Sử dụng CodeVisionAVR để lập trình phần mềm cho vi điều khiển.

Để bắt đầu một project mới, bạn làm như sau:

1. Chọn Open ở Menu New hoặc bấm Ctrl + O, chọn Project để tạo một project mới.

2. Ở cửa sổ mới hiện ra, chọn Yes để sử dụng CodeWizard

3. Chọn Vi điều khiển là Atmega8, tần số thạch anh là 8MHz

4. ở tab LCD, bạn chọn sử dụng PORTD.

6. Chọn File/Generate, Save and Exit. Lưu project và các file liên quan vào thư mục bạn muốn.

7. Trong vòng while(1) ở hàm main ta viết các câu lệnh như sau:
while (1)
{
lcd_clear();
lcd_putsf("Hello world");
lcd_gotoxy(0,1);
lcd_putsf("dangsonbk");
delay_ms(1000);
}

Hoặc bạn có thể xóa vòng while(1) và thay bằng:

lcd_clear();
lcd_putsf("Hello world");
lcd_gotoxy(0,1);
lcd_putsf("dangsonbk");

Để biên dịch chương trình bạn vừa viết, bạn nhấn Ctrl + F9 hoặc trong menu Project/Build All. Nếu không có lỗi xảy ra, chương trình của bạn đã sẵn sàng để nạp vào vi điều khiển.

Khi bạn đã làm việc quen với AVR, bạn có thể không cần dùng tới CodeWizard nữa, khi đó bạn sẽ phải tự khai báo các thanh ghi, các hàm ngắt cần thiết. Dĩ nhiên đó là khi bạn đã hiểu về cấu trúc của AVR và sử dụng khá thành thạo CodeVisionAVR.

Làm việc với Proteus để vẽ và mô phỏng.

Bạn cần chọn các linh kiện và vẽ mạch như hình trên. Gồm có vi điều khiển Atmega8 và LCD 16×2. Bạn có thể download file đính kèm ở bài viết và sử dụng nếu chưa quen với việc sử dụng Proteus. Tiếp đó, bạn double click vào con chíp, chọn như hình dưới:

Bấm nút chạy ở góc dưới bên phải màn hình.

Kết quả chương trình: 

Ngoài ra để lập trình cho AVR bạn có thể sử dụng trình biên dịch AVR Studio do chính hãng Atmel cung cấp miễn phí trên trang chủ. Chúc các bạn thành công.

http://www.mediafire.com/download.php?ptnd451swrkudok 

Nguồn: nghichdien.com

Đăng nhập