16f877a zamanlayici

Başlatan emalper, 01 Mayıs 2017, 07:01:20

emalper

Merhaba arkadaslar ben asagidaki kodun bir kismini internetten buldum ve kendime gore duzenledim. Ama bir turlu yorumlayamadigim kisim zamanlayicinin ne zaman tasip tasmadigi. 16F877A  pic kullaniyorum ve RB0 pinine bagli bir ledim var. Bu ledi istedigim zaman araliginda acilip ayni zaman sonra tekrar kapanmasini istiyorum. Size zahmet koduma bakip nereyi bu zamanlamayi nasil ayarlayabilecegimi soylermisiniz. Kullandigim dil mikroc.
sbit LED at RB0_bit;
void interrupt() {
  time++ ;
  if (time == 100) {          // if time is 76
      LED  = ~LED;        // then toggle led and
      time = 0;                // reset time
      }
  PIR1.TMR1IF = 0;            // clear TMR1IF
  TMR1H = 128;
  TMR1L = 0;
}
void main() {
  PORTB = 0x00;               // Initialize PORTB
  TRISB = 0;                  // PORTB is output
  T1CON = 1;                  // Timer1 settings
  PIR1.TMR1IF = 0;            // clear TMR1IF
  TMR1H = 0x80;               // Initialize Timer1 register
  TMR1L = 0x00;
  PIE1.TMR1IE  = 1;           // enable Timer1 interrupt
  time =   0;                  // initialize cnt
  INTCON = 0xC0;              // Set GIE, PEIE
  do {

    } while (1);
}

mehmet

Gecikmeli yanma ve sönme mi istediğiniz?
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"