Giao tiếp LCD không dùng thư viện
Trang 1 trong tổng số 1 trang
Giao tiếp LCD không dùng thư viện
/////////////////////////////////////
// Programer: Ngô Hữu Công //
// Phone: 0967681856 //
// Web: dientuquangngai.cf //
////////////////////////////////////
#include <16F877A.h>
#device adc=16
#FUSES HS
#use delay(clock=20000000)
#DEFINE RS PIN_E1
#DEFINE EN PIN_E2
/*-------------------------------LENH THUC THI LCD------------------------------------*/
void Lcd_Cmd(unsigned char cmd)
{
output_low(RS); //Ghi command (RS = 0)
OUTPUT_D(cmd); //Dua command vao Port P3
output_low(EN); //Cho phep truyen command vao LCD (EN = 0)
output_high(EN); //Khong cho phep truyen tiep (EN = 1)
if(cmd<=0x02)
{
Delay_ms(2);
}
else
{
Delay_ms(1);
}
}
/*----------------------------HIEN THI CHUOI LEN LCD---------------------------------*/
void print_st(int c) // Hien thi mot chuoi ki tu len LCD
{
output_high(RS); //Ghi du lieu hien thi chu khong phai lenh
output_D(c);
output_low(EN);
output_high(EN);
delay_ms(100);
}
void print_st0(int c) // Hien thi mot chuoi ki tu len LCD
{
output_high(RS); //Ghi du lieu hien thi chu khong phai lenh
output_D(c);
output_low(EN);
output_high(EN);
delay_ms(1);
}
/*-----------------------------CHUONG TRINH CHINH------------------------------------*/
void main()
{
Set_tris_D(0x00); // thiet lap cong I/O cua port D la cong xuat
Output_D(0xFF); // tat het ngo ra port D
Lcd_Cmd(0x01); //xoa toan bo noi dung tren LCD
Lcd_Cmd(0x0C); // Bat hien thi va tat con tro
print_st(" NGO HUU CONG");
Lcd_Cmd(0x38); // giao tiep 8bit, 2 dong, kt font 5*7
Lcd_Cmd(0xC0); // Di chuyen con tro ve dau dong thu 2
print_st(" HELLO WORLD!");
}
* Sơ đồ kết nối:
Ai chưa biết gì cứ hỏi, câu nào không biết mình chém gió nhé ae!
// Programer: Ngô Hữu Công //
// Phone: 0967681856 //
// Web: dientuquangngai.cf //
////////////////////////////////////
#include <16F877A.h>
#device adc=16
#FUSES HS
#use delay(clock=20000000)
#DEFINE RS PIN_E1
#DEFINE EN PIN_E2
/*-------------------------------LENH THUC THI LCD------------------------------------*/
void Lcd_Cmd(unsigned char cmd)
{
output_low(RS); //Ghi command (RS = 0)
OUTPUT_D(cmd); //Dua command vao Port P3
output_low(EN); //Cho phep truyen command vao LCD (EN = 0)
output_high(EN); //Khong cho phep truyen tiep (EN = 1)
if(cmd<=0x02)
{
Delay_ms(2);
}
else
{
Delay_ms(1);
}
}
/*----------------------------HIEN THI CHUOI LEN LCD---------------------------------*/
void print_st(int c) // Hien thi mot chuoi ki tu len LCD
{
output_high(RS); //Ghi du lieu hien thi chu khong phai lenh
output_D(c);
output_low(EN);
output_high(EN);
delay_ms(100);
}
void print_st0(int c) // Hien thi mot chuoi ki tu len LCD
{
output_high(RS); //Ghi du lieu hien thi chu khong phai lenh
output_D(c);
output_low(EN);
output_high(EN);
delay_ms(1);
}
/*-----------------------------CHUONG TRINH CHINH------------------------------------*/
void main()
{
Set_tris_D(0x00); // thiet lap cong I/O cua port D la cong xuat
Output_D(0xFF); // tat het ngo ra port D
Lcd_Cmd(0x01); //xoa toan bo noi dung tren LCD
Lcd_Cmd(0x0C); // Bat hien thi va tat con tro
print_st(" NGO HUU CONG");
Lcd_Cmd(0x38); // giao tiep 8bit, 2 dong, kt font 5*7
Lcd_Cmd(0xC0); // Di chuyen con tro ve dau dong thu 2
print_st(" HELLO WORLD!");
}
* Sơ đồ kết nối:
Ai chưa biết gì cứ hỏi, câu nào không biết mình chém gió nhé ae!
Hữu Công- Học sinh tiểu học
- Tổng số bài gửi : 2
Join date : 19/01/2019
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết