các anh xem giùm em sao em không hiển thị được kí tự lên lcd lệnh điều khiển thỉ nhận được mà không hiển thị được kí tự các anh xem giúp code em có viết sai chổ nào không
Lcd16x2(LM016L)giao tiếp với 89c51?
Collapse
X
-
Tags: None
-
không ai giúp em à
#include <REGX51.H>
#include <stdio.h>
#include <string.h>
sbit BS=P0^7;
sbit RS=P2^7;
sbit RW=P2^6;
sbit EN=P2^5;
sbit a=P1^0;
sbit b=P1^1;
sbit c=P1^2;
sbit d=P1^3;
sbit e=P1^4;
sbit f=P1^5;
#define PortData P0
//--------------control LCD--------------------------
#define Clear 0x01
#define BackTopLine 0x02
#define MovePointerLeft 0x04
#define MoveDisplayRight 0x05
#define MovePointerRight 0x06
#define MoveDisplayLeft 0x07
#define OffPointerOffDisplay 0x08
#define OffDisplayOnPointer 0x0a
#define OnDisplayOffPointer 0x0c
#define OnDisplayFlashingPointer 0x0e
#define OffPointerFlashingPointer 0x0f
#define MovePositionCursorLeft 0x10
#define MovePositionCursorRight 0x14
#define MoveDisplayEntireLeft 0x18
#define MoveDisplayEntireRight 0x1c
#define PressCursorBeginline1 0x80
#define PressCursorBeginline2 0xc0
#define TwoLineAndMatrix5x7 0x38
//-------------------------------------------------------
void BusyLcd();
void ControlLcd(unsigned char Code);
void WriteLcd(char Code);
void Delay(int t);
void KTlcd();
void SanKey();
//------------------------------------------------
void Delay(int t)
{
while(t--);
}
void ControlLcd(unsigned char Code)
{
PortData=Code;
RS=0;
RW=0;
EN=1;
EN=0;
// BusyLcd();
}
void WriteLcd(char Code)
{
PortData=Code;
RS=1;
RW=0;
EN=1;
EN=0;
// BusyLcd();
}
//void BusyLcd()
//{
// RS=0;
// RW=1;
// PortData=0xff;
// while(BS)
// {
// EN=0; Delay(1);
// EN=1;
// }
//}
void KTlcd()
{
ControlLcd(0x38);
ControlLcd(0x0e);
ControlLcd(0x01);
//ControlLcd(0x06);
// ControlLcd(0x1c);
}
void main()
{
KTlcd();
WriteLcd('1');
WriteLcd('2');
WriteLcd('3');
WriteLcd('4');
WriteLcd('5');
WriteLcd('6');
WriteLcd('7');
WriteLcd('8');
WriteLcd('9');
}
-
em chạy mô phònh mà nó hông ra chử được lệnh điều khiển thỉ nhận mà không xuất chữ được mấy pác xem giúp code mình viết sai ở đâu
#include <REGX51.H>
#include <stdio.h>
#include <string.h>
sbit BS=P0^7;
sbit RS=P2^7;
sbit RW=P2^6;
sbit EN=P2^5;
#define PortData P0
//--------------control LCD--------------------------
#define Clear 0x01
#define BackTopLine 0x02
#define MovePointerLeft 0x04
#define MoveDisplayRight 0x05
#define MovePointerRight 0x06
#define MoveDisplayLeft 0x07
#define OffPointerOffDisplay 0x08
#define OffDisplayOnPointer 0x0a
#define OnDisplayOffPointer 0x0c
#define OnDisplayFlashingPointer 0x0e
#define OffPointerFlashingPointer 0x0f
#define MovePositionCursorLeft 0x10
#define MovePositionCursorRight 0x14
#define MoveDisplayEntireLeft 0x18
#define MoveDisplayEntireRight 0x1c
#define PressCursorBeginline1 0x80
#define PressCursorBeginline2 0xc0
#define TwoLineAndMatrix5x7 0x38
//-------------------------------------------------------
void BusyLcd();
void ControlLcd(unsigned char Code);
void WriteLcd(char Code);
void Delay(int t);
//------------------------------------------------
void Delay(int t)
{
while(t--);
}
void ControlLcd(unsigned char Code)
{
PortData=Code;
RS=0;
RW=0;
EN=1; Delay(1);
EN=0;
// BusyLcd();
}
void WriteLcd(char Code)
{
PortData=Code;
RS=1;
RW=0;
EN=1; Delay(1);
EN=0;
// BusyLcd();
}
void BusyLcd()
{
RS=0;
RW=1;
PortData=0xff;
while(BS)
{
EN=0; Delay(1);
EN=1;
}
}
void main()
{
ControlLcd(0x38); Delay(100);
ControlLcd(0x0e); Delay(100);
ControlLcd(0x01); Delay(100);
ControlLcd(0x80); Delay(50000);
ControlLcd(0x0c);Delay(50000);
WriteLcd(0x61);Delay(50000);
while(1);
}
Comment
-
diễn đàn này chắc tế mấy pác cao thủ chắc còn cóc ké thì quăng sang 1 bênNguyên văn bởi aphu Xem bài viếtÔng in cái bản vẽ của ông ra thành file pdf, nhiều người coi được mới giúp được cho ông, ai ở không đâu mà đi cài phần mềm rồi coi cho ông mà giúp ông được.
Comment
-
CODE không sai.Nguyên văn bởi thanhnha220 Xem bài viếtdiễn đàn này chắc tế mấy pác cao thủ chắc còn cóc ké thì quăng sang 1 bên
Chân RS và chân RW trên mạch bị dính với nhau...do dùng Label không cẩn thận
p/s:Bạn nên rút kinh nghiệm khi vẽ mạch đừng dùng nhiều Label như vậy, vừa xấu lại khó kiểm soát.Hôm nay trời nắng chang chang.
Mèo con đi học chẳng mang thứ gì.
Chỉ mang một cái bút chì.
Và mang một mẩu bánh mì con con.
Comment
-
không biết thì hỏi, muốn giỏi phải học. nhưng không biết mà có thái độ không tốt thì làm sao ai giúp nhiệt tình cho bạn, bạn cứ nghĩ là mình không chịu khó giải quyết đựoc thì cứ lên mạng là phải có người trả lời giải quyết cho bạn ngay à. thật là thái độ làm việc như thế thì không chủ động chút nào cả.Nguyên văn bởi thanhnha220 Xem bài viếtdiễn đàn này chắc tế mấy pác cao thủ chắc còn cóc ké thì quăng sang 1 bên
bạn đừng phật ý nhé !chỉ có tâm hồn là nơi duy nhất: có thể biến thiên đường thành địa ngục và ngược lại có thể biến địa ngục hóa thiên đường
Everything should be made as simple as possible, but not simpler
Comment
-
Thôi mà...Dù sao bạn ấy cũng có thành ý hỏi, đưa ra vấn đề đến mấy lần...Chắc sợ câu hỏi bị chìm vào quên lãng nên mới PAM ầm ầm vậy.Nguyên văn bởi daohuytien Xem bài viếtkhông biết thì hỏi, muốn giỏi phải học. nhưng không biết mà có thái độ không tốt thì làm sao ai giúp nhiệt tình cho bạn, bạn cứ nghĩ là mình không chịu khó giải quyết đựoc thì cứ lên mạng là phải có người trả lời giải quyết cho bạn ngay à. thật là thái độ làm việc như thế thì không chủ động chút nào cả.
bạn đừng phật ý nhé !
Nhìn Code mình biết đây không phải là người lần đầu chơi với LCD, chắc bị em nào đá nên lú thôi...
Bỏ thời gian căng mắt giúp người ta tí... cũng chẳng saoHôm nay trời nắng chang chang.
Mèo con đi học chẳng mang thứ gì.
Chỉ mang một cái bút chì.
Và mang một mẩu bánh mì con con.
Comment
-
mất mấy ngày rùi mà chưa xong nên có phần cáu gắt tìm hoài hông ra lỗi lần sau mình sẽ phát ngôn vừa phải mong anh chị em bớt chút thời gian quý bàu giúp min với tại pam kiểu nhẹ nhàng không gây được ấn tượng chả ai thèm đọc hết pam dữ dằng mới có người tham gia
Comment
-
bó tay mình nối trực tiếp mà nó củng hông chạy là sao chứNguyên văn bởi Acxen_lupine Xem bài viếtCODE không sai.
Chân RS và chân RW trên mạch bị dính với nhau...do dùng Label không cẩn thận
p/s:Bạn nên rút kinh nghiệm khi vẽ mạch đừng dùng nhiều Label như vậy, vừa xấu lại khó kiểm soát.
Comment
-
bó tay mình nối trực tiếp mà nó củng hông chạy là sao chứNguyên văn bởi Acxen_lupine Xem bài viếtCODE không sai.
Chân RS và chân RW trên mạch bị dính với nhau...do dùng Label không cẩn thận
p/s:Bạn nên rút kinh nghiệm khi vẽ mạch đừng dùng nhiều Label như vậy, vừa xấu lại khó kiểm soát.
Comment
-
Mạch của bạn hai cái Label RS và RW phía VDK bị đặt trùng cho 1 dây nên 2 đường này chập nhau.Nguyên văn bởi thanhnha220 Xem bài viếtbó tay mình nối trực tiếp mà nó củng hông chạy là sao chứ
Mình đã thử: sửa lại mạch, copy code ở bài #5, dịch, chạy ngon: LCD hiện ra chữ 'a'.Last edited by Acxen_lupine; 06-03-2013, 11:51.Hôm nay trời nắng chang chang.
Mèo con đi học chẳng mang thứ gì.
Chỉ mang một cái bút chì.
Và mang một mẩu bánh mì con con.
Comment
Bài viết mới nhất
Collapse
-
bởi mèomướp1. Tìm hiểu đc thì càng tốt, bận thì thôi. Ko cần quá quan trọng
2. Số tự động cho đơn giản, kiểu như đi xe ga ấy ạ
3. Học lý thuyết tử tế ok
4.ok
5.có. đủ số km, tgian cầm lái là đc
6.đi ăn tập thể,...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 16:34 -
-
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
07-08-2026, 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
07-08-2026, 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
-
-
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 -

Comment