Các thanh ghi -Thanh ghi IR: Mỗi lệnh được nhà sản xuất LCD đánh địa chỉ rõ ràng.. Người dùng chỉ việc cung cấp địa chỉ lệnh bằng cách nạp vào thanh ghi IR... BF, AC - Cờ báo bận BF: Bus
Trang 1TEXT LCD MTA_CĐT Nguyễn Đức Lành
http://codientu.org
Trang 2LCD1602
Trang 3Các chân của LCD
Trang 4Các thanh ghi
-Thanh ghi IR: Mỗi lệnh được nhà sản xuất LCD đánh địa chỉ rõ ràng Người dùng chỉ việc cung cấp địa chỉ
lệnh bằng cách nạp vào thanh ghi IR
Ví dụ:
Lệnh “hiển thị màn hình và con trỏ” có mã lệnh là
00001110
- Thanh ghi DR : Thanh ghi DR dùng để chứa dữ liệu 8 bit để ghi vào vùng RAM DDRAM hoặc CGRAM ( ở chế
độ ghi) hoặc dùng để chứa dữ liệu từ 2 vùng RAM này gửi ra cho MPU (ở chế độ đọc)
Trang 5BF, AC
- Cờ báo bận BF: (Busy Flag)
Khi đang thực thi các hoạt động bên trong, LCD bỏ qua mọi giao tiếp với bên ngoài và bật cờ BF( thông qua chân DB7 khi có thiết lập RS=0, R/W=1) lên để cho biết nó đang
“bận”
- Bộ đếm địa chỉ AC : (Address Counter)
Khi một địa chỉ lệnh được nạp vào thanh ghi IR, thông tin được nối trực tiếp cho 2 vùng RAM (việc chọn lựa vùng
RAM tương tác đã được bao hàm trong mã lệnh)
Sau khi ghi vào (đọc từ) RAM, bộ đếm AC tự động tăng lên (giảm đi) 1 đơn vị
Trang 6DDRAM
Đây là vùng RAM dùng để hiển thị, nghĩa là ứng với một địa chỉ của RAM là một ô kí tự trên màn hình
Trang 7CGROM
Chứa các mẫu kí tự loại 5x7 hoặc 5x10 điểm ảnh/kí tự,
và định địa chỉ bằng 8 bit Chúng ta ko trực tiếp truy xuất vùng này
Trang 8Tóm tắt 1 số lệnh
Trang 98 bit và 4 bit
Trang 10Codevison hỗ trợ qua thư viện lcd.h ở chế độ 4 bit
unsigned char lcd_init(unsigned char lcd_columns);
Khởi tạo LCD
+ void lcd_write_byte(unsigned char addr, unsigned
char data);
Hàm gửi 1 byte đến lcd
+ void lcd_gotoxy(unsigned char x, unsigned char y);
Đặt giá trị con trỏ của lcd tới vị trí x y
+ void lcd_clear(void); xóa màn hình lcd
+ void lcd_puts(char c); hiển thị chuỗi ký tự (chứa trong
RAM) lên LCD
+ void lcd_putsf(char flash *str) hiển thị chuỗi ký tự (chứa
trong flash) lên LCD
+ void lcd_putchar(char c); hiển thị 1 ký tự lên lcd
Trang 11Sử lý chuỗi
C: 1 ký tự
S: chuỗi hoặc ký tự
U: số 8 bit không dấu
x số 8 bit kiểu hex (viết thường)
X số 8 bit kiểu hex (viết hoa)
D: số 8 bit có dấu
e số thực có lũy thừa VD e12
f số thực
Khi dùng sprintf phải khai báo thư viện stdio.h
Trang 12Chúc các bạn học tốt
MTA_CDT