Hi all! Mình đang nghiên cứu LCD dùng C. Có bạn nào có Code C giao tiếp LCD thì share cho mình và mọi người học hỏi với. Trước kia mình có, viết chương trình giao tiếp với LCD dùng ASM và chạy cũng tương đối. Bạn nào có kinh nghiệm hoặc có Code C về LCD thì giúp mình nhé. Thanks all!
Thông báo
Collapse
No announcement yet.
Code C cho LCD!!!
Collapse
X
-
Nếu bạn xài AVR thì code có sẵn hết rồi
Dưới đây là VD nè :
#include <mega16.h>
#include <delay.h>
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x15 ;PORTC //mach phan cung vao port C , giao tiep 4bit cao LCD
#endasm
#include <lcd.h>
void main(void)
{
// LCD module initialization
lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf("Wellcome to test")
.........
}
-
Em cũng xài CodeVisionAVR hehe để hiển thị thì dễ thật. Nhưng mà em vẫn chưa hiểu hết các lệnh nó có ý nghĩa gì.
Em muốn làm cho hiển thị chữ chạy từ trái qua phải VD : Dòng chữ : " Viet Nam "
Với chữ cái đầu tiên được hiện là chữ "m" rồi đến chữ "a" và cứ như thế chữ chạy cho tới chữ cuối cùng "V" khi hết dòng 01 chẳng hạn. Bác nào làm được chỉ em với.
Comment
-
Bác giở Help trong CodeVision ra mà nghiên cứu các hàm của LCD, đọc kĩ sẽ làm được hết. Còn vấn đề chữ chạy, chử nhảy hay cái của nợ gì đó chỉ là vấn đề lập trình thôi, không liên quan gì đến LCD cả. hehe.Nguyên văn bởi GS_Nobita Xem bài viếtEm cũng xài CodeVisionAVR hehe để hiển thị thì dễ thật. Nhưng mà em vẫn chưa hiểu hết các lệnh nó có ý nghĩa gì.
Em muốn làm cho hiển thị chữ chạy từ trái qua phải VD : Dòng chữ : " Viet Nam "
Với chữ cái đầu tiên được hiện là chữ "m" rồi đến chữ "a" và cứ như thế chữ chạy cho tới chữ cuối cùng "V" khi hết dòng 01 chẳng hạn. Bác nào làm được chỉ em với.Nỏ biết chữ mần răng ký được??!! Thôi nhé.
Comment
-
Đúng là Codevision chỉ hỗ trợ các hàm xuất,hiển thị LCD,nhảy tới các tọa độ,xóa màn hình,các hàm chuyển đổi trực tiếp từ số thập phân ra mã của LCD( mã LCD = mã thập phân của ký tự cần hiển thị + 48 đơn vị )
Bạn khéo léo kết hợp các hàm trên thì muốn hiển thị gì mà chẳng được, còn nếu lười nghĩ thì đến tài thánh cũng kô thể viết được!
Hầu hết các hàm của Codevesion AVR là viết bằng mã ASsem, bạn có thể tìm thấy trong thư mục cài đặt của Codevesion AVR, nếu bạn muốn tìm hiểu nó!
Comment
-
nếu bạn dùng 89 thì có thể tham khảo tại đây nha:Nguyên văn bởi lahodu Xem bài viếtHi all! Mình đang nghiên cứu LCD dùng C. Có bạn nào có Code C giao tiếp LCD thì share cho mình và mọi người học hỏi với. Trước kia mình có, viết chương trình giao tiếp với LCD dùng ASM và chạy cũng tương đối. Bạn nào có kinh nghiệm hoặc có Code C về LCD thì giúp mình nhé. Thanks all!
http://08tdt.com/forum/showthread.php?t=20&page=2
chúc thành công
Comment
-
để chạy chữ đc thì bạn phải viết từ từ cho một kí tự "m" hiển thị trước rồi xóa nó đi với 1 khoảng delay(tốc độ dịch chữ ấy) rồi sau đó cho hiển thị 2 kí tự "am" rồi lại xóa rồi lại delay, cứ như thế sẽ hiển thị được chữ chạy mà thôi, đến khi hiển thị đủ rồi thì bạn chỉ cần tăng vị trí con trỏ trước khi hiển thị chuổi "VietNam" là ok ngay. cái này mình làm rồi mà lúc đó mình viết cho con 89 dùng Keil.Nguyên văn bởi GS_Nobita Xem bài viếtEm cũng xài CodeVisionAVR hehe để hiển thị thì dễ thật. Nhưng mà em vẫn chưa hiểu hết các lệnh nó có ý nghĩa gì.
Em muốn làm cho hiển thị chữ chạy từ trái qua phải VD : Dòng chữ : " Viet Nam "
Với chữ cái đầu tiên được hiện là chữ "m" rồi đến chữ "a" và cứ như thế chữ chạy cho tới chữ cuối cùng "V" khi hết dòng 01 chẳng hạn. Bác nào làm được chỉ em với.hãy cố gắng dù vướn phải thất bại!!!!!!!!
Comment
-
Mình cũng đã dùng KeilC viết cho cho LCD bằng asm với AT89S52, về nguyên tắc hiển thị thì đúng như chipmickey nói. Tức là cho hiển thị dần dần từng ký tự một và để trễ một khoảng thời gian nhất định! Nhưng bạn nên nhớ chúng ta có hàm dịch phải & trái cơ mà, vậy thì việc cho chạy chữ thật hết sức đơn giản. Chỉ cần dịch toàn bộ hiển thị sang phải sau khi đặt vị trí con trỏ ở chỗ thích hợp là ta có được hình ảnh chữ "VietNam" trôi ngược.^__^
Bằng cách sử dụng một macro nhỏ, mình dùng hiển thị 1 chuỗi rất linh hoạt:
doc_chuoi macro string ;macro gửi dữ liệu tới LCD
irpc char, <string>
if nul 'char'
exitm
endif
mov a,#'char'
lcall hienthi_lcd
endm
endm
Sau đó khi cần hiển thị "Vietnam" ta chỉ cần gọi hàm: doc_chuoi<Vietnam>
Còn dịch trái phải thì biết rùi!
Comment
-
các anh ơi em dùng codevisionAVR viết cho mega8 kết nối chuẩn rồi mà tại sao chạy nó chỉ hiện ra một tràng lốm đốm jf đó vài giây rồi tắt phần cứng em nối như sau:
PORTD chíp--------------chân LCD
-----------------------------1-----GND
-----------------------------2-----VCC
-----------------------------3-----Biến trở điều chỉnh độ sáng
0----------------------------4
1----------------------------5
2----------------------------6
3
4----------------------------11
5----------------------------12
6----------------------------13
7----------------------------14
chương trình em viết chỉ đơn giản là hiển thị một chữ "happy new year"
vậy mà không biết tại sao, các anh xem giúp em nhé
Attached FilesLast edited by Le Thi Bich; 10-10-2008, 23:39.Thiết kế chế tạo các loại máy xoáy nắp, chiết rót định lượng dùng trong dược phẩm và thực phẩm.
Comment
-
Bạn thử thêm một lệnh while xem sao nhé!các anh ơi em dùng codevisionAVR viết cho mega8 kết nối chuẩn rồi mà tại sao chạy nó chỉ hiện ra một tràng lốm đốm jf đó vài giây rồi tắt..............
chương trình em viết chỉ đơn giản là hiển thị một chữ "happy new year"
vậy mà không biết tại sao, các anh xem giúp em nhé
Code:while (1) { // Place your code her lcd_putsf("Happy new year"); while (1){}; }; }
Comment
-
em mới học nên chưa biết cách mô phỏng anh ạNguyên văn bởi mrcuongcon Xem bài viếtBạn có dùng Proteus giả lập không?Thiết kế chế tạo các loại máy xoáy nắp, chiết rót định lượng dùng trong dược phẩm và thực phẩm.
Comment
-
em làm như anh bảo thì nó chỉ hiện được chữ "Happy ne" thôi. em dùng LCD 16 cột một hàngNguyên văn bởi mrcuongcon Xem bài viếtBạn thử thêm một lệnh while xem sao nhé!
Code:while (1) { // Place your code her lcd_putsf("Happy new year"); while (1){}; }; }Thiết kế chế tạo các loại máy xoáy nắp, chiết rót định lượng dùng trong dược phẩm và thực phẩm.
Comment
Bài viết mới nhất
Collapse
-
bởi IemanjaTôi có một câu hỏi kỹ thuật muốn hỏi.
Động cơ bước vòng kín của tôi được sử dụng trong một cơ cấu dao động đảo chiều thường xuyên. Sau khi hoạt động vài ngày, vị trí điểm 0 của bộ mã hóa được thiết lập ban đầu bị trôi dần, và...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:12 -
-
bởi theidiotcatGiải pháp cấu hình tối ưu chi phí và hiệu năng cho phòng net hiện đại với AMD Ryzen 7 5700G, 5700X và Radeon RX 6500XT, 7600 8GB
Giải pháp toàn diện cho bài toán đầu tư phòng net
Mô hình phòng net hiện đại ngày nay đòi hỏi...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 13:55 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi lvhnE nhớ bác Vivanpham làm bên điện tử y sinh, có lần đó cái sơ đồ máy chụp x quang sao có mấy con thryristor làm gì mà ko ai trả lới đúng cả
...
-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 09:17 -
-
Trả lời cho Amply bị rò DC 22 voltbởi lvhnBác kiểm tra lại đường mạch, mối hàn xem có bị hở hoặc dẫn không tốt không?
Thay cầu diode lớn hơn càng tốt không vấn đề gì cả....-
Channel: Điện thanh
Hôm qua, 09:12 -
-
bởi LantheChào bạn.
Trục đầu ra của hộp số hành tinh xoắn ốc được kết nối với mặt bích của khách hàng thông qua một trục răng trong. Sau chưa đầy sáu tháng hoạt động, nó phát ra tiếng kêu lách cách và độ rơ lớn đáng báo động.
Việc...-
Channel: Thiết bị điện tử cá nhân
06-08-2026, 13:05 -
-
bởi ittcChào các anh em nhé, mình dự định sắp tới sẽ đi học lái xe Ôtô, thi lấy bằng lái. Cụ thể mình sẽ học và thi lấy giấy phép lái xe hạng B. Thật sự mình là người chưa có kiến thức hiểu biết gì về Ôtô cả ? tất nhiên mình sẽ phải...
-
Channel: Tâm tình dân kỹ thuật
06-08-2026, 06:22 -
-
Trả lời cho Amply bị rò DC 22 voltbởi trung30000Theo sự hướng dẫn của bác, sau khi em kiểm tra tầng Vi sai sử dụng cặp c1815, tiếp đến là 1 con a1013, và cặp thúc sử dụng mje304g và mje305g, em đã tiến hành thay cặp Vi sai c1815 sau đó mở máy lên đo ngõ công suất DC 0,2V hai giây sau máy đo...
-
Channel: Điện thanh
05-08-2026, 20:09 -
-
bởi theidiotcatBộ máy đa năng toàn diện cho học tập và làm việc hàng ngày
Đối với học sinh, sinh viên và người làm việc văn phòng, việc sở hữu một bộ PC cân bằng giữa học tập, công việc và giải trí là nhu cầu vô cùng thực tế. Combo Ryzen...-
Channel: Đánh giá sản phẩm DTVN
05-08-2026, 10:28 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi mèomướpDạ cháu đọc 1 số bài viết của bác vi... thì nhớ đc bác là 1 cụ già gần 80 tuổi, sức khỏe yếu. Đam mê và làm vc về kỹ thuật điện. Thích thơ ca. Có nhìu bài chia sẻ quý báu cho thế hệ sau. Tuy nhiên già rồi nên khái tính, bảo thủ, nhưng vẫn đáng kính ạ... còn lão nhathung... thì kiểu bố đời
-
Channel: Tâm tình dân kỹ thuật
31-07-2026, 12:52 -
-
bởi lvhnHãng nào tùy thích thôi bác! bây giờ các hãng đều hỗ trợ xem qua máy tính hay điện thoại đều được. Gắn Trước tiên mua về cắm nguồn set ip hết xong hãy lắp lên, cam poe chỉ cần 4 lõi là hoạt động bình thường nên 1 dây kéo cho 2 cam vẫn ok
-
Channel: Tâm tình dân kỹ thuật
30-07-2026, 15:49 -

Comment