NHÓM HỌC PIC
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.

CHỦ ĐỀ TUẦN 3: LCD 16*2 (cùng giải thích các câu lệnh LCD)

Go down

CHỦ ĐỀ TUẦN 3: LCD 16*2 (cùng giải thích các câu lệnh LCD) Empty CHỦ ĐỀ TUẦN 3: LCD 16*2 (cùng giải thích các câu lệnh LCD)

Bài gửi  Admin Tue Jun 16, 2009 12:57 pm

#include <16F877A.h>
#include <DEFS_16F877A.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP
#use delay(clock=4000000)
#define RS RD0
#define RW RD1
#define E RD2
#define LCD PORTB

/*Ham yeu cau goi lenh dieu khien LCD*/
void comnwrt(void)
{
RS = 0; //ghi lenh
RW = 0; //LCD o che do ghi
E = 1; //ghi du lieu (high-to-low transition)
E = 0;
delay_ms(1);
}
/*Ham yeu cau goi du lieu hien thi len LCD*/
void datawrt(void)
{
RS = 1; //ghi du lieu
RW = 0;
E = 1;
E = 0;
delay_ms(1);
}
/*Ham main*/
void main(void)
{
set_tris_B(0); //chon port B la ngo ra
set_tris_D(0);
delay_ms(100); // Tao tre 100ms cho LCD khoi dong

LCD = 0x38; //Function set
// DBx = 0 0 1 [DL] [N] [F] * *---------DL=1 8bit, N=1 hien thi 2 hang, F=0 5*7 diem anh
comnwrt();
LCD = 0x0C; // Display on/off control:
// DBx = 0 0 0 0 1 [D] [C] [B]----------D=1 hiren thi nam hinh,C=1 hien thi con tro,B=1 NHAP NHAY KY TU TAI VI TRI CON TRO
comnwrt();

LCD = 0x85; // Vi tri hang 1,cot 6
comnwrt();

LCD = 'B'; // Xuat dong chu "BE YEU" ra LCD
datawrt();
LCD = 'E';
datawrt();
LCD = ' ';
datawrt();
LCD = 'Y';
datawrt();
LCD = 'E';
datawrt();
LCD = 'U';
datawrt();
LCD = '!';
datawrt();
}
Admin
Admin
Admin

Tổng số bài gửi : 18
Join date : 11/06/2009

https://microchipvn.forumvi.com

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết