RTC: Real time clock gerçek zaman saati
sıçaklık sensör ds1820 kullanıldı.
#include <16f877a.h>
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NODEBUG,NOCPD
#use delay(clock=4m)
#define use_portb_lcd TRUE
#define RTC_SCLK pin_c2
#define RTC_IO pin_c3
#define RTC_RST pin_c1
#include "ds1302.c"
#include "lcd.c"
#include "ds1820.c"
int saniye,dakika,saat,gun,ay,yil,haftanin_gunu;
void main(void)
{
float temp;
lcd_init();
rtc_init();
rtc_set_datetime(19,5,20,2,00,40);
while(true)
{
temp = ds1820_read();
rtc_get_time(saat,dakika,saniye);
rtc_get_date(gun,ay,yil,haftanin_gunu);
printf(lcd_putc,"\f%3.1f%cC %02d/%02d/%02d\n",temp,223,gun,ay,yil);
switch(haftanin_gunu)
{
case 1: printf(lcd_putc,"paz"); break;
case 2: printf(lcd_putc,"pzt"); break;
case 3: printf(lcd_putc,"sal"); break;
case 4: printf(lcd_putc,"car"); break;
case 5: printf(lcd_putc,"per"); break;
case 6: printf(lcd_putc,"cum"); break;
case 7: printf(lcd_putc,"cts"); break;
}
printf(lcd_putc,"%02d:%02d:%02d",saat,dakika,saniye);
delay_ms(1000);
}
}
Hocam bu devreyi LCD ile değil de segment display ile yapabilir miyiz? Bir de programlamayı öğrenmek için kitap tavsiyeniz var mı?Video izleyerek öğrenmek çok zor da.
YanıtlaSilSeven segment display ile yapilir ama her karakter icin ayri display olmasi gerekli. Cok Cok ugrastirir. Serdar çiçek hocanin kitabini tavsiye ederim. Ama ingilizce ögrenirsen hersey daha kolaylasir.
Sil