برنامج مولد نبضات نبضة كل واحد ثانية :

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

برنامج مولد نبضات نبضة كل واحد ثانية :

مُساهمة من طرف Admin في الجمعة مايو 01, 2015 2:38 pm

برنامج مولد نبضات نبضة كل واحد ثانية :

الكود:

/******************************************************
      Timer0-1 application with PIC16F877
    *******************************************************/
#include <16f877.h>    //
#use delay (clock=4000000) //

int i=0; //

//****************** Timer0 interrupt ********************
#int_timer0  // Timer0 interrupt
void  timer0_isr ()  // Interrupt function name
{
    set_timer0(60);      // Put initial value in TMR0 register
//256 * (256 – 60) = 50176 us

    i++;         //i value is increased by 1
    if (i==10)        // if i = 10 , led on  t = 10 * 50176 = ~0.5 sec
      output_high(pin_b0);
   
    if (i==20)        // if i = 20 ,t=1s, led off , and reset counter
      {
          output_low(pin_b0);
          i=0;
      }
}

/********* main function ********/

void main ( )
{
 
  set_tris_b(0x00);  //
  output_b(0x00);    //

  setup_timer_0(RTCC_INTERNAL | RTCC_DIV_256); //
  set_timer0(60);  //
  enable_interrupts(INT_timer0); //
  enable_interrupts(GLOBAL);    //

  while(1);  //

 }




Admin
Admin

عدد المساهمات : 935
تاريخ التسجيل : 28/01/2014

معاينة صفحة البيانات الشخصي للعضو http://fathallaabdelaziz.forumarabia.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى