قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 11-01-2015, 07:52 PM المشاركة 1   
Exclamation سؤال فى frequency meter Twitter FaceBook Google+



السلام عليكم

هذا الكود كتبه احد الاخوة وهو كود عداد يعد النبضات القادمة من مولد النبضات فى برنامج بروتس وسوالى هو ماذا اضيف فى الكود لكى اجعلة frequency meter اى يقرء التردد ؟؟
وشكرا لكم


الكود


كود:
// LCD module connections
sbit LCD_RS at RB2_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RB4_bit;
sbit LCD_D5 at RB5_bit;
sbit LCD_D6 at RB6_bit;
sbit LCD_D7 at RB7_bit;

sbit LCD_RS_Direction at TRISB2_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISB4_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D7_Direction at TRISB7_bit;
// End LCD module connections


unsigned short Overflow_Number=0; //stores timer0 overflow numbers
unsigned int  counter=0; //stores counter value
char counter_txt[11]; //stores counter value converted to string




//initiallizations
void _init()
{
  //initiallize LCD
  lcd_init();
  Lcd_Cmd(_LCD_CURSOR_OFF);
  Lcd_Cmd(_LCD_CLEAR);
  

  //pin B0 (LED) as output
  trisb.b0=0;
  portb.b0=0;
  
  trisa.b4 = 1; // pin A4(T0CKI) as input
   
  //OPTION_REG REGISTER
  OPTION_REG.T0CS = 1; //Transition on RA4/T0CKI pin
  OPTION_REG.T0SE = 1; //Increment on high-to-low transition on RA4/T0CKI pin

  //INTCON REGISTER
  intcon.b5=1; //timer0 overflow interrupt
  intcon.b6=1;  //Enables all unmasked peripheral interrupts
  intcon.b7=1;   //enable global interrupt
  
  tmr0=0; //timer0 initial value
}

//ISR
void interrupt()
{
 if(intcon.b2==1) //if timer0 is overlfowed
 {
   intcon.b2=0; //reset timer0 interrrupt flag
   Overflow_Number++; //icrement every timer0 overflow(256)
   
   if(Overflow_Number==255)
   {
     portb.b0 = 1;
   }
 }

}


void main() 
{
   _init(); //initiallizations

    for(;;)
    {
      counter = ( Overflow_Number * 256 ) + tmr0; //get counter value from timer0
      WordToStr(counter, counter_txt); //convert counter value to string
      lcd_out(2,1, counter_txt);   //display counter value
    }
}
[IMG][/IMG]

الملفات

تــــــــــحميل

احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 0 اعجاب
شكراً Logic ( شكر العضو على هذه المشاركة )
اعلانات

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 11-01-2015, 08:16 PM المشاركة 2   
افتراضي


[IMG][/IMG]

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:395
قديم 11-01-2015, 09:15 PM المشاركة 3   
افتراضي


هذا كود بسيط جدا
http://arabsh.com/files/0c3041436df2/hz-meter-rar.html

احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 1 اعجاب
شكراً سعيد قادر ( شكر العضو على هذه المشاركة )
اعجاب سعيد قادر ( أعجبته المشاركة )

الصورة الرمزية assed
assed
:: عضو فضي ::
تاريخ التسجيل: Jul 2014
الدولة: العراق - بغداد
المشاركات: 1,036
نشاط [ assed ]
قوة السمعة:97
قديم 12-01-2015, 05:45 AM المشاركة 4   
افتراضي


السلام عليكم
عداد النبضات يختلف عن عداد التذبذب او الفركونسي فعداد النبضات مستمر بالعد اما عداد التذبذب فهوة لقياس تردّد (( يجب إحصاء عدد المرّات التي تتكرّر بها الظاهرة في فترة زمنية، ومن ثم القسمة على مدّة هذه الفترة.))

احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 1 اعجاب
شكراً سعيد قادر ( شكر العضو على هذه المشاركة )
اعجاب سعيد قادر ( أعجبته المشاركة )

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 12-01-2015, 03:33 PM المشاركة 5   
افتراضي



شكرا لك اخى حيدر فعلا هو كود سهل


السلام عليكم
عداد النبضات يختلف عن عداد التذبذب او الفركونسي فعداد النبضات مستمر بالعد اما عداد التذبذب فهوة لقياس تردّد (( يجب إحصاء عدد المرّات التي تتكرّر بها الظاهرة في فترة زمنية، ومن ثم القسمة على مدّة هذه الفترة.))
شكرا لك


الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 12-01-2015, 04:46 PM المشاركة 6   
Thumbs up


شكرا لك مهندس حيدر اخيرا وجدت الحل اضفت هذا الكود واشتغل تمام

كود:
Overflow_Number=0;tmr0=0;

طبعا هذا السطر داخل جملة فور مع اضافة تاخير زمنى لمدة ثانية

كود:
    for(;;)
    { delay_ms(1000);
      counter = ( Overflow_Number * 256 ) + tmr0; //get counter value from timer0
      WordToStr(counter, counter_txt); //convert counter value to string
      lcd_out(2,1, counter_txt);   //display counter value
      Overflow_Number=0;tmr0=0;
    }

احصائية الشكر والاعجاب - 0 شكراً, 0 عدم اعجاب, 1 اعجاب
اعجاب حيدر علاج حسن ( أعجبته المشاركة )

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 12-01-2015, 05:00 PM المشاركة 7   
افتراضي


[
[IMG][/IMG]


nader_bhs
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2010
الدولة: تونس
المشاركات: 79
نشاط [ nader_bhs ]
قوة السمعة:0
قديم 26-03-2015, 10:07 AM المشاركة 8   
افتراضي


السلام عليكم ،
حياكم الله استاذنا حيدر
لقد اطلعت على الكود الذي نزلته لكن هناك بعض الأسطر لم اتمكن من فهمها

كود:
void interrupt()
{
x++;
intcon.f1=0;
}
و
كود:
intcon=0b10010000;
أردت أن أغير المايكروكنترولر ب-18f4331 ، غيرت في البروجكت على MikroC PRO وغيرت في ال-ISIS لكن ال-simulation لا تعمل ،
هذا رابط ب-PIC18F4331
من هنا

أرجو منكم توضيح الكود و أرجو المساعدة على تغيير المايكروكنترولر ب-18f4331

بارك الله فيكم

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 01:04 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025