4 Ocak 2022 Salı

Kronometre ccs compiler

 Kronometre ccs compiler pic 16f628a ile yapıldı harici osilatör kullanıldı.

süre program içi delay_ms(1000); 1 sn karşılığına gelir.

#include <16F628A.h>

#fuses xt

#use delay(crystal=4MHz)

#define LCD_ENABLE_PIN PIN_B0

#define LCD_RS_PIN PIN_B1

#define LCD_RW_PIN PIN_B2

#define LCD_DATA4 PIN_B4

#define LCD_DATA5 PIN_B5

#define LCD_DATA6 PIN_B6

#define LCD_DATA7 PIN_B7


#include <lcd.c>


int saat=0,dakika=0,saniye=0,sayi=0;


void main()

{

   set_tris_a(0xff);

   set_tris_b(0x00);

   

   output_a(0x00);

   output_b(0x00);

   lcd_init();


   while(TRUE)

   {

   if(input(pin_a0)==1)

   {

   sayi++;

   delay_ms(50);

   }

   

   if(sayi==1)

   {

 

    for(;;)

    {

    if(input(pin_a1)==1)

    {

   sayi=0;

   break;

    }while(input(pin_a1)==1);

    

   saniye++;

   delay_ms(1000);

 if(saniye >= 59)

 {

 saniye=0;

 dakika++;

 

 if(dakika >= 59)

 {

 dakika=0;

 saat++;

 if(saat >= 23)

 {

 saat=0;

 dakika=0;

 saniye=0;

 }

 }

 }

   printf(lcd_putc,"\f%d : %d : %d",saat,dakika,saniye);

   }

   }

   if(input(pin_a2)==1)

    {

saat=0;

dakika=0;

saniye=0;

    printf(lcd_putc,"\f%d : %d : %d",saat,dakika,saniye);

    }

   }

  }

      



Hiç yorum yok:

Yorum Gönder

Her yorum bilgidir. Araştırmaya devam...