Teknomerkez
TR EN ES
Konular

JALTURK ile LCD saat tarih uygulaması

Yazar: Mustafa Topuz
Tarih: 29.04.2008
Türkçe

JALTURK programının son versiyonunu indirmek için jalturk.sourceforge.net adresini tıklayınız.

Devre şemasını büyük görmek için tıklayınız.

Devreye ait bütün dosyaları indirmek için tıklayınız.

;******************************************
;** PIC 16f628 ile 2x16 LCD Saat ÖRNEĞİ  **
;******************************************

-- 16f628 AYAR DOSYASINI YÜKLE
INCLUDE 16F628_GENEL

--DS1302 gerçek zamanlı saat kütüphanesi
INCLUDE DS1307

;--*****************************************************
;--  LCD pin ayarları.
;--  Bazı uçlar pull-up gerektirebilir(16F628 deki A4 pini gibi)
;--*****************************************************
; LCD Kontrol Uçları;
VAR VOLATILE BIT HD44780_4_DI IS pin_A0   ;LCD R/S ucu
VAR VOLATILE BIT HD44780_4_E  IS pin_A1   ;LCD Enable Ucu
; LCD Kontol Uç Yönleri
VAR VOLATILE BIT HD44780_4_DI_dir IS pin_A0_YON
VAR VOLATILE BIT HD44780_4_E_dir  IS pin_A1_YON
;; LCD Veri Uçları
VAR VOLATILE BIT HD44780_D4 IS pin_B4   ;LCD D4 UCU LSB
VAR VOLATILE BIT HD44780_D5 IS pin_B5   ;LCD D5 UCU
VAR VOLATILE BIT HD44780_D6 IS pin_B6   ;LCD D6 UCU
VAR VOLATILE BIT HD44780_D7 IS pin_B7   ;LCD D7 UCU MSB
;; LCD Veri Uç Yönleri
VAR VOLATILE BIT HD44780_D4_dir IS pin_B4_YON
VAR VOLATILE BIT HD44780_D5_dir IS pin_B5_YON
VAR VOLATILE BIT HD44780_D6_dir IS pin_B6_YON
VAR VOLATILE BIT HD44780_D7_dir IS pin_B7_YON
INCLUDE LCD_hd44780
-- LCD Ayarları Bitti
-----------------------------------------------------------

--ön tanımlı değerler
VAR BYTE yil=08,ay=04,gun=01,hafta_gun=2,saat=10,dakika=45,saniye=00

-- DS1307 Saat Ayarı Yapılıyor
DS1307_Yaz(yil, ay, gun, hafta_gun, saat, dakika, saniye)

CONST BYTE yazi1[]="Tarih: "  -- Yazı Tanımlanıyor
CONST BYTE yazi2[]="Saat : "  -- Yazı Tanımlanıyor

LCD_sil
LCD_Konum(1,0)    --1. satır 1. sütuna git
LCD_Yazi(yazi2)   --"Saat : "  yaz
LCD_Konum(2,0)    --1. satır 1. sütuna git
LCD_Yazi(yazi1)   --"Tarih : "  yaz

FOREVER LOOP
    DS1307_Oku(yil, ay, gun, hafta_gun, saat, dakika, saniye) --DS1307 Oku
    LCD_Konum(1,7)                                  -- 1. satır 8. sütuna git
    LCD_Saat_Dakika_Saniye(saat, dakika, saniye)    -- LCD Ekrana Saati Yaz
    LCD_Konum(2,7)                                  -- 1. satır 8. sütuna git
    LCD_Gun_Ay_Yil(gun, ay, yil)                    -- LCD Ekrana Tarihi Yaz
    Gecikme_100ms(3)                                --300ms bekle
END LOOP