![]() |
Điều khiển LCD16x2 bằng MPLABC18
1 Attachment(s)
Điều khiển LCD là ứng dụng thông thường khi học Pic cũng như bất cứ loại VDK nào. Và khi đã điều khiển được nó rồi ta sẽ thấy nó rất tiện dụng trong hiển thị dữ liệu. Tuy nhiên hơi đắt...
dưới đây là Chương trình lập trình điều khiển LCD16x2 bằng ngôn ngữ C18 có mô phỏng Proteus kèm theo. good luck! |
anh ơi anh xem lại file mplab.code file hex ban đầu thì mô phỏng ok rồi nhưng sao cứ buil là nó bị lỗi vậy nó báo :"putsxlcd.c:20:Warning [2058] call of function without prototype " và ko mô phỏng được bằng proteus nữa vậy
|
1 Attachment(s)
a kiểm tra lại thấy OK mà
em dowload lại file dưới rồi buil lại xem nhé Nếu vẫn lỗi thì chụp hẳn cái cửa sổ Output lại rồi gửi cho a xem |
anh R hướng dẫn cho em về mấy cái hàm LCD anh dùng trong ct của anh dc ko?
|
OK!
hàm OpenXLCD(unsigned char lcdtype): Cấu hình chế độ làm việc cho LCD lcdtype bạn có thể cấu hình LCD 4bit hoặc 8bit, hiển thị 1 dòng hay 2, ma trận hiển thị 5x7 hoặc 5x10. Ví dụ như trong file ví dụ R chọn LCD8bit và ma trận 5x7, hiển thị 2 dòng. hàm BusyXLCD(): kiểm tra cờ bận, nếu bận trả về 1, ko bận trả về 0 hàm WriteCmdXLCD(unsigned char cmd): ghi lệnh tới LCD hàm SetDDRamAddr(unsigned char DDaddr): đưa con trỏ tới vị trí có địa chỉ DDaddr trong DDRAM để hiển thị putsXLCD(char *buffer): ghi dữ liệu String tới LCD, cho tới kí tự 'null' WriteDataXLCD(char data): ghi dữ liệu 'data' tới LCD chúc thành công! |
em vẫn chưa biết làm thế nào để xuất là 1 biến (không phải kiểu string)
trước em có dùng trình dịch HTPIC cho 16f887 nó có 2 file thư viện LCD như này(cái này là em sưu tầm trên mạng) lcd.h: Code:
#ifndef _LCD_H_ lcd.c Code:
#include <stdlib.h> Anh R có thể chỉ cho em cách sửa 2 file này để dùng cho pic 18 dc ko ?? hoặc làm sao để dùng dc với thư viện Lcd của anh!! thanks anh!! |
hj!
thư viện này hỗ trợ bạn tới tận chân răng rồi. chỉ cần sử dụng thôi bạn sử dụng nó bằng cách: - tạo Project như bình thường - tạo file mới rồi copy nôi dung của file lcd.h bạn có vào rồi lưu file đó là lcd.h - tao file mới rồi copy nội dung của file lcd.c bạn có vào rồi lưu file đó là lcd.c - rồi add lcd.h vào thư mục header, lcd.c vào source - nhưng quan trọng là chỉnh options project: bạn vào project/build options/project nó sẽ ra cửa sổ option. ở đây trong Directories category bạn xóa thư mục mặc định hoặc dùng thư mục bạn lưu 2 file ở trên lên mức ưu tiên cao nhất - Rồi.Ok. giờ bạn có thể sử dụng các hàm này thoải mái chúc may mắn! |
thanks anh,nhưng ý em là em muốn dùng 2 file này cho pic 18,cụ thể ở đây là lập trình bằng C18 chứ ko pải HT pic!!
|
a rocket nhiều bài hay quá.cố gắng phát huy về c18 a nhé.e cũng đang nghiên cứu e này
|
em bild nó báo lỗi là could not find definition of symbol 'DelayFor18TCY' in file 'busyxlcd.o'
|
add thêm file busyxlcd.c vào source file là ok nhé vipboy.
Nhân tiện cho em hỏi bác R là sao khi sử dụng file hex nạp thì mô phỏng ok.Nhưng khi sử dụng mplab built ode LCD.c báo success nhưng nạp vào pic thì mô phỏng ko có hiện tượng j là sao vậy? Thanks!! |
mình cũng bị lỗi giống hc.coltech đó nó báo thế là sao
LCD8BIT\putrxlcd.c:16:Error [1109] type mismatch in redeclaration of 'putrsXLCD' nó bị sao mà hok hiểu hàm 'putrsXLCD' |
Trích:
xin lỗi, mình mới tìm hiểu PIC:( |
Múi giờ GMT. Hiện tại là 09:20 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam