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

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

الصورة الرمزية avip
avip
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
المشاركات: 199
نشاط [ avip ]
قوة السمعة:0
قديم 13-12-2013, 11:06 AM المشاركة 1   
ha توليد ترددات مختلفة من الميكرو كنترولر Twitter FaceBook Google+



الاخوة الكرام السلام عليكم ورحمة الله وبركاته

احتاج الي مساعدتك في صناعة دائرة لتوليد عدت ترددات مختلفة من الميكروكنترولر
مثل (10Khz-20Khz-50Khz-100Khz-1Mhz) علي ان يكون المخرج واحد والتحكم في الاخراج عن طريق ضواغط .. وماذا لو اردت توليد ترددات اخري ؟؟!
لكم جزيل الشكر والله الموفقك

اعلانات

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:151
قديم 13-12-2013, 11:51 AM المشاركة 2   
افتراضي



وعليكم السلام ورحمة الله لم تذكر نوع المايكرو ؟؟

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

الصورة الرمزية avip
avip
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
المشاركات: 199
نشاط [ avip ]
قوة السمعة:0
قديم 13-12-2013, 03:01 PM المشاركة 3   
افتراضي


فليكن المتحكم
pic16f84a
او
pic16f628a
او
pic16f887a
ولك جزيل الشكر علي اهتمامك


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:394
قديم 13-12-2013, 05:04 PM المشاركة 4   
افتراضي



وعليكم السلام ورحمة الله لم تذكر نوع المايكرو ؟؟
نوع المايكرو مهم في تحديد امكانية اضافة عدد المفاتيح ...
نوظف كل ارجل احد المنافذ الخالي من خرج التردد كمداخل للمفاتيح وليكن المنفذ A في البك 628
نكون الترددات كل واحده في كود مستقل
نجعل الجمل الخاصة بكل تردد داخل هذه الاوامر ..

كود:
void main() { trisa=0xFF; while(1){ if(porta.f0==0){while(porta.f0==0){} while(porta==0xFF) { اوامر التردد الاول } { if(porta.f1==0){while(porta.f1==0){} while(porta==0xFF) { اوامر التردد الثاني } } وهكذا مع بقية الترددات }


الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:151
قديم 13-12-2013, 05:17 PM المشاركة 5   
افتراضي


ماقصدته اخى حيدر هو على اية مايكرو يحب ان نعمل البرنامج هذا ماقصدته

كتبت البرنامج ولاكن برنامج بروتيوس ليست دقيقة جدا مع الترددات





كود:
#define               is            ==
#define               pressed       0
#define               sw1           porta.f0
#define               sw1_dir       trisa.f0
/*******************************************/
char x=0;
void init()
{
  cmcon=7;
  trisa=1;
  trisb=0;
  portb=0;
  porta=0;
}
void ten();
void twenty();
void fiftey();
/*******************************************/
void main()
{
init();
porta=64;
while(1)
{
  if(sw1 is pressed){delay_ms(10);
                    while(sw1 is pressed );
                     delay_ms(10);
                     x++;
                     if(x is 4){x=0;porta=64;}
                    }
 if(x is 1)ten();
 if(x is 2 )twenty();
 if(x is 3)fiftey();

}

}
/*******************************************/
 void ten()
{              //10KHZ
  while(1)
  {porta=2;
  portb=1; delay_us(25);
  portb=0;delay_us(25);
   if(sw1 is pressed) return;
   }
}
/*******************************************/
void twenty()
{                         //20KHZ
while(1)
{ porta=4;
 portb=1; delay_us(25);
 portb=0; delay_us(25);
 if(sw1 is pressed) return;
}
}
/*******************************************/
void fiftey()                  //50KHZ
{ while(1)
{ porta=128;
 portb=1; delay_us(10);
 portb=0; delay_us(10);
 if(sw1 is pressed )return;
 }
}
/*******************************************/

سارفع لك الملف بعد قليل


الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:151
قديم 13-12-2013, 05:45 PM المشاركة 6   
افتراضي


الملف :

تحمــــيل


ccfl
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2008
الدولة: الجزائر
المشاركات: 153
نشاط [ ccfl ]
قوة السمعة:0
قديم 13-12-2013, 06:33 PM المشاركة 7   
افتراضي


السلام عليكم
اخي اعتقد انه اذا اردت الدقة من الافضل استعمال لغة الاسمبلير بدل الميكرو سي خاصة بالنسبة للتردد 1Mhz
بالاضافة الى هذا ماهي قيمة الكوارتز الذي تستعمله ؟


التعديل الأخير تم بواسطة : ccfl بتاريخ 13-12-2013 الساعة 06:36 PM

الصورة الرمزية avip
avip
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
المشاركات: 199
نشاط [ avip ]
قوة السمعة:0
قديم 13-12-2013, 07:01 PM المشاركة 8   
افتراضي


نوع المايكرو مهم في تحديد امكانية اضافة عدد المفاتيح ...
نوظف كل ارجل احد المنافذ الخالي من خرج التردد كمداخل للمفاتيح وليكن المنفذ A في البك 628
نكون الترددات كل واحده في كود مستقل
نجعل الجمل الخاصة بكل تردد داخل هذه الاوامر ..

كود:
void main() { trisa=0xFF; while(1){ if(porta.f0==0){while(porta.f0==0){} while(porta==0xFF) { اوامر التردد الاول } { if(porta.f1==0){while(porta.f1==0){} while(porta==0xFF) { اوامر التردد الثاني } } وهكذا مع بقية الترددات }
شكرا جزيلا اخي الكريم "حيدر" ولكن ما هي اوامر التردد؟؟؟؟

إضافة رد

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

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

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


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

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