Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.



 
Trang ChínhTrang Chính  GalleryGallery  Tìm kiếmTìm kiếm  Latest imagesLatest images  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  


[H17] LCD16X2Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down
November 5th 2011, 4:04 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newRikikudoLoveTukimiri[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - RikikudoLoveTukimiri

[H17] LCD16X2 Dai_tu10
Tổng số bài gửi : 674
Số lần được cảm ơn. : 91
Join date : 22/04/2011
Age : 32
Đến từ : HaNam Province

[H17] LCD16X2 Vide

Bài gửiTiêu đề: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>
Chào các bạn hôm nay mình chuyển sang bài điều khiển LCD 16X 2 nha ! Trông có vẻ phức tạp nhưng quét LCD có khi dễn hơn matrix rất nhiều . Chúng ta mới tìm hiểu LCD 8 bit đã , xuất 4 bit để sau.

[H17] LCD16X2 Lcd16x2

Chúng ta đi tìm hiểu một chút về LCD 16x2 :
Đây là loại gồm 16 ký tự x2 dòng ,mỗi ký tự được tạo ra từ một ma trận điểm sáng kích cỡ 5x7 hoặc 5x10
Sơ đồ chân:

[H17] LCD16X2 Sodochan

Chân 15 và chân 16: ghi là A và K. Nó là anot và katot của một con led dùng để sáng LCD trong bóng tối, chúng ta có thể k nối , nếu sử dụng nối chân 15 với trở 220 or 330 ôm lên VCC , chân 16 nối đất.

Để mạch hoạt động chúng ta mắc theo sơ đồ sau đây:

[H17] LCD16X2 Sodonguyenly-1

Trên là sơ đồ theo ví dụ của mình , các bạn có thể mắc bất kỳ đâu tùy ứng dụng của bạn..Thường chân dữ liệu dùng Port 0 hoặc Port 2 VĐK , thiết kế mạch in nên để IC dưới gầm LCD cho nhỏ gọn .

* Nguyên lý hoạt động

-Các chân 1,2,3 là các chân VSS , VDD, VEE trong đó VSS chân nối đất , VEE chân chọn độ tương phản chân này dc chọn qua 1 biến trở 5K một đầu nối VCC , một đầu nối mát . Chân VDD nối dương nguồn .

- Chân chọn thanh ghi RS (Register Select): Có hai thanh ghi trong LCD, chân RS(Register Select) được dùng để chọn thanh ghi, như sau:
Nếu RS = 0 ở chế độ ghi lệnh như xóa màn hình , bật tắt con trỏ...
Nếu RS =1 ở chế độ ghi dữ liệu như hiển thị ký tự , chữ số lên màn hình .

-Chân đọc/ ghi (R/W): Đầu vào đọc/ ghi cho phép người dùng ghi thông tin lên LCD khi R/W = 0 hoặc đọc thông tin LCD khi
R/W = 1.

-Chân cho phép E (Enable): Chân cho phép E được sử dụng bởi LCD để chốt dữ liệu của nó. Khi dữ liệu được đến chân dữ liệu thì cần có 1 xung từ mức cao xuống mức thấp ở chân này để LCD chốt dữ liệu , xung này phải có độ rộng tối thiểu 450ns.

Chân D0 - D7: Đây là 8 chân dữ liệu 8 bít, được dùng để gửi thông tin lên LCD hoặc đọc nội dung của các thanh ghi trong
LCD. Để hiển thị các chữ cái và các con số chúng ta gửi các mã ASCII của các chữ cái và các con số tương ứng đến các chân này khi bật RS =1;

* Bảng mã lệnh trong LCD 16x2 :

[H17] LCD16X2 Malenh
[H17] LCD16X2 Gfsdg
Điều khiển LCD qua các bước sau :

-Chỉnh độ tương phản LCD cho thích hợp , nhiều trường hợp k chú ý LCD để tương phản quá thấp k nhìn thấy gì => đổi lỗi cho mạch hỏng.
-Khởi tạo LCD set số dòng , bật tắt con trỏ...
- Gán giá trị thích hợp cho các chân điều khiển RS, RW ,E với các chế độ
- Xuất dữ liệu vào POrt data-
- Kiểm tra LCD có bận k để tiến hành xuất tiếp.
-Quay lại bước 1.

Chúng ta đi vào ví dụ cụ thể . Ở đây mình sẽ xuất chữ [You must be registered and logged in to see this link.] lên 2 dòng của LCD

[H17] LCD16X2 LCD

Code :
Trích dẫn
#include "REGX52.H"
#include "stdio.H"

//------------Khoi tao bien va cac gia tri gan-------------//
sbit RS_LCD = P2^5;
sbit RW_LCD = P2^6;
sbit E_LCD = P2^7;

//---------------Sau day la cac chuong trinh con------------//

//--------------Ham tre khoang thoi gian rat ngan phuc vu viec kiem tr co ban---------------//
void delay_short()
{
unsigned int i;
for(i=0;i<3;i++);
}//--------------****------------------//

//------------Ham tre 2---------------//
void delay(unsigned int time) // Thoi gian time ms
{
TMOD = 0x01; // Timer 0 che do 1
while (time--)
{
TH0 = -1000/256;
TL0 = -1000%256;
TR0 = 1;
while (!TF0);
TR0 = 0;
TF0 = 0;
}
}
//-----------------******----------------//

//--------------Ham kiem tra co ban (busy_flag)--------------??
void kt_ban()
{
unsigned char x;
P0 = 0xff;
RS_LCD = 0;
RW_LCD = 1;
do
{
E_LCD = 1;
delay(50);
E_LCD = 0;
x=P0;
x=x&0x80;
}
while(x!=0x80);
}//-----------*******--------------------//

//---------------Ham ghi lenh giao tiep voi LCD---------------//
void ghi_lenh(unsigned char lenh)
{
kt_ban();
delay(50);
P0 = lenh;
RS_LCD = 0; // Chon thanh ghi lenh
RW_LCD = 0; // Chon che do ghi du lieu tu 8051 vao LCD
E_LCD = 1;
delay_short();
E_LCD = 0;
}//------------*******-----------------//

//-----------Ham ghi ky tu ra LCD------------//
void ghi_kytu(unsigned char kytu)
{
kt_ban();
delay(50);
P0 = kytu;
RS_LCD = 1; // Chon che do doc du lieu tu 8051
RW_LCD = 0;
E_LCD =1;
delay_short();
E_LCD = 0;
}//------------*******-----------------//

//-----------Ham ghi nhanh ky tu ra LCD------------//
void ghi_nhanh ( unsigned char kytu)
{
delay_short();
P0 = kytu;
RS_LCD = 1;
RW_LCD = 0;
E_LCD = 1;
delay_short();
E_LCD = 0;
}//--------------***********-------------//

//-----------Ham ghi chuoi ky tu ra LCD------------//
void ghi_chuoi(char *str)
{
while(*str)
{
delay(50);
ghi_kytu(*str);
str++;

}
}//-----------********------------//

//-----------Ham ghi nhanh chuoi ky tu ra LCD------------//
void ghi_nhanh_chuoi(char *str)
{
while(*str){
ghi_nhanh(*str);
str++;
}
}
//-----------************------------//

//-----------Ham ghi so nguyen ra LCD------------//
void ghi_so_nguyen(unsigned char so)
{
unsigned char a,b,c;
a=so/100; // Lay phan tram
b=(so-100*a)/10; // Lay phan chuc
c=(so-100*a-10*b); // Lay phan don vi
ghi_nhanh(a+48); // Doi ra hang tram, ma ascii
ghi_nhanh(b+48); // Doi ra hang chuc, ma ascii
ghi_nhanh(c+48); // Doi ra hang don vi, ma ascii
}
//-----------***********------------//

//-----------Ham khoi tao LCD------------//
void setting_LCD()
{
ghi_lenh(0x38);
ghi_lenh(0x01); // Xoa man hinh
ghi_lenh(0x0f); // Co dich hien thi
}
//-----------**********------------//

/*********************************/
/* CON DAY LA CHUONG TRINH CHINH */
/* ----------??????--------------*/
/*********************************/

void main()
{
setting_LCD();
ghi_lenh(0x01);
ghi_lenh(0x0c);
ghi_chuoi("http://");
ghi_lenh(0xc0);
ghi_lenh(0x0c);
ghi_chuoi("machdientu.net");
delay(300);
while(1);
}


Bạn có thể down ví dụ tại link sau:

[You must be registered and logged in to see this link.]

Các ứng dụng mình sử dụng LCD :




Copy đường link dưới đây gửi đến nick yahoo bạn bè!



November 6th 2011, 2:21 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newhalai10[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - halai10

[H17] LCD16X2 Trung_10
Tổng số bài gửi : 68
Số lần được cảm ơn. : 3
Join date : 06/06/2011
Age : 31
Đến từ : thanh hoa

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>
cũng lằng nhằng nhỉ. [H17] LCD16X2 553256548


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



November 6th 2011, 2:22 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newhalai10[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - halai10

[H17] LCD16X2 Trung_10
Tổng số bài gửi : 68
Số lần được cảm ơn. : 3
Join date : 06/06/2011
Age : 31
Đến từ : thanh hoa

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>
[H17] LCD16X2 3800102942 [H17] LCD16X2 1371890812


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



February 22nd 2012, 11:52 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newnguyenhieu192scorpio[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - nguyenhieu192scorpio

[H17] LCD16X2 Thuong10
Tổng số bài gửi : 96
Số lần được cảm ơn. : 3
Join date : 05/06/2011
Age : 31
Đến từ : Bắc Ninh

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2
https://www.facebook.com

Nội Dung Bài Viết:
<<<----------------------------->>>
choáng rồi


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



February 23rd 2012, 12:04 am
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newRikikudoLoveTukimiri[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - RikikudoLoveTukimiri

[H17] LCD16X2 Dai_tu10
Tổng số bài gửi : 674
Số lần được cảm ơn. : 91
Join date : 22/04/2011
Age : 32
Đến từ : HaNam Province

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>
cái LCD này khi bạn học đến môn vi điều khiển thì sẽ hết choáng.
hình như kì 2 năm 3 sẽ học


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



March 2nd 2012, 1:40 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newduythai510n[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - duythai510n

[H17] LCD16X2 Thuong10
Tổng số bài gửi : 92
Số lần được cảm ơn. : 2
Join date : 27/05/2011
Age : 31
Đến từ : hà nội

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2
https://www.facebook.com/duythai510n

Nội Dung Bài Viết:
<<<----------------------------->>>
haizz


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



March 5th 2012, 8:37 pm
[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_newngohungquang[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - ngohungquang

[H17] LCD16X2 Trungt10
Tổng số bài gửi : 185
Số lần được cảm ơn. : 11
Join date : 29/05/2011
Age : 34
Đến từ : nghe an

[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>
mấy cái này khó hiểu quá
anh em đến nhà thằng hiếu nó chỉ cho


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



[H17] LCD16X2 Bgavatar_06
[H17] LCD16X2 Bgavatar_01[H17] LCD16X2 Bgavatar_02_news[H17] LCD16X2 Bgavatar_03
[H17] LCD16X2 Bgavatar_04_new[H17] LCD16X2 Bgavatar_06_news
[H17] LCD16X2 Bgavatar_07[H17] LCD16X2 Bgavatar_08_news[H17] LCD16X2 Bgavatar_09
[Thành viên] - Sponsored content


[H17] LCD16X2 Vide

Bài gửiTiêu đề: Re: [H17] LCD16X2

Nội Dung Bài Viết:
<<<----------------------------->>>


Copy đường link dưới đây gửi đến nick yahoo bạn bè!



[H17] LCD16X2

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang
Trang 1 trong tổng số 1 trang
* Viết tiếng Việt có dấu, là tôn trọng người đọc.
* Chia sẻ bài sưu tầm có ghi rỏ nguồn, là tôn trọng người viết.
* Thực hiện những điều trên, là tôn trọng chính mình.
-Nếu chèn smilies có vấn đề thì bấm A/a trên phải khung viết bài
YÊU CẦU VIẾT TIẾNG VIỆT CÓ DẤU

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: GIAO LƯU - CHIA SẺ KIẾN THỨC :: CHIA SẺ KIẾN THỨC CÙNG NHAU-
/* Số lượt truy cập */