mikroC ile PIC Programlama #08 : 2×16 LCD
Merhaba, mikroC ile PIC programlama eğitimlerimizin bu adımında 2×14 LCD kullanımını öğrenecek ve LCD kütüphanesini inceleyeceğiz.
Bölümler
00:00 Proje Dosyalarının Oluşturulması
01:20 mikroC 2×16 LCD Kütüphanesinin Kullanımı ve Pin Tanımlamaları
04:04 LCD Arka Işığının Kontrolü
04:35 LCD_Out() Fonksiyonu ile Ekrana Yazı Yazdırma
05:40 Program Kodlarının Test Edilmesi
07:15 Karakter LCD Kontrast Ayarı
07:34 LCD_Out_Cp() Fonksiyonu ve Uygulaması
09:04 LCD_Chr() Fonksiyonu ve Uygulaması
10:07 LCD_Chr_Cp() Fonksiyonu ve Uygulaması
10:55 LCD_Cmd() Fonksiyonu, Parametreleri ve Uygulamaları
11:53 _LCD_CLEAR Komutu ve Uygulaması
12:42 _LCD_RETURN_HOME Komutu
12:42 _LCD_CURSOR_OFF Komutu ve Uygulaması
13:35 _LCD_UNDERLINE_ON Komutu ve Uygulaması
14:40 _LCD_BLINK_CURSOR_ON Komutu ve Uygulaması
15:12 _LCD_MOVE_CURSOR_LEFT, _LCD_MOVE_CURSOR_RIGHT, LCD_TURN_ON ve LCD_TURN_OFF Komutları
15:28 _LCD_SHIFT_LEFT ve LCD_SHIFT_RIGHT Komutları ile Ekran Kaydırma
Şematik Tasarım
Uygulama Kodları
// Connections
sbit LED at LATA4_bit;
// Lcd pinout settings
sbit LCD_RS at RD0_bit;
sbit LCD_EN at RD1_bit;
sbit LCD_D4 at RD2_bit;
sbit LCD_D5 at RD3_bit;
sbit LCD_D6 at RD4_bit;
sbit LCD_D7 at RD5_bit;
sbit LCD_BACKLIGHT at RD6_bit;
// Pin direction
sbit LCD_RS_Direction at TRISD0_bit;
sbit LCD_EN_Direction at TRISD1_bit;
sbit LCD_D7_Direction at TRISD2_bit;
sbit LCD_D6_Direction at TRISD3_bit;
sbit LCD_D5_Direction at TRISD4_bit;
sbit LCD_D4_Direction at TRISD5_bit;
// Global Variables
unsigned short i,j;
// Functions
void wait(unsigned int time){
while(time--)
delay_ms(1);
}
void main() {
TRISA=0b00000000;// [][][][LED][][][][]
TRISD=0b00000000;// [][LCD_A][LCD_D7][LCD_D6][LCD_D5][LCD_D4][LCD_EN][LCD_RS]
LATA=0x00;
LATD=0x00;
Lcd_Init();
LCD_BACKLIGHT=1;
//EP1
//Lcd_Out(1, 1, "Hello trudyo!");
//EP2
//Lcd_Out(1, 1, "Hello trudyo!");
//Lcd_Out_Cp("Here!");
//EP3
//Lcd_Chr(1, 1, 'X');
//EP4
//Lcd_Chr(1, 1, 'X');
//Lcd_Chr_Cp('Y');
//EP5
//Lcd_Out(1, 1, "Hello trudyo!");
//delay_ms(1000);
//Lcd_Cmd(_LCD_CLEAR);
//EP6
Lcd_Out(1, 1, "Hello trudyo!");
Lcd_Cmd(_LCD_CURSOR_OFF);
while(1){
//Lcd_Cmd(_LCD_TURN_ON);
//LCD_BACKLIGHT=1;
//delay_ms(1000);
//Lcd_Cmd(_LCD_TURN_OFF);
//LCD_BACKLIGHT=0;
//delay_ms(1000);
//EP7
for(i=0;i<3;i++){
Lcd_Cmd(_LCD_SHIFT_RIGHT);
delay_ms(1000);
}
for(i=0;i<3;i++){
Lcd_Cmd(_LCD_SHIFT_LEFT);
delay_ms(1000);
}
}
}
Uygulama kodlarını GitHub üzerinden incelemek ve indirmek için tıklayın.
Yorum yapmak için giriş yapmalısınız.