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

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

ielbrnawy
:: مهندس ::
تاريخ التسجيل: Jun 2013
المشاركات: 2
نشاط [ ielbrnawy ]
قوة السمعة:0
قديم 11-06-2013, 09:07 AM المشاركة 1   



السلام عليكم ورحمه الله وبركاته
http://www.qariya.com/vb/showthread.php?t=112123


هذا الموضوع للاخ الفاضل وضح فيه كيفيه الارسال عن طريق PIC
حاولت اعمل زيه علي ATMEGA 32
بس للاسف مش عارف اظبط ازاي هيخرج بــــ تردد 38 KHZ وازاي اظبط ال PWM
لو حد يقدر يساعدني في الكود وده البرنامج اللي كتبته
هو في مرحله السميوليشن بيخرج اوتبوت لكن في الواقع لما بجربه مع تلفزيون سوني يعمل بتردد 38KHZ لا يعطي اي استجابه
لو في حد يقدر يساعني في الكود وشكرا

ده الكود اللي شغلته

كود:
void main() {
   DDB3_bit = 1;                   // Set PORTB pin 3 as output pin for the PWM (according to datasheet)


PWM1_Init(_PWM1_FAST_MODE, _PWM1_PRESCALER_1,_PWM1_NON_INVERTED, 127);        //pwm 40khz with duty cycle =100 %


      PWM1_Stop();

  while (1){

       PWM1_Start();                       //start bit high for 2400 usec then low for 600usec
       delay_us(17622);
       PWM1_Stop();
      delay_us(2500);


      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(1250);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(600);
      PWM1_Stop();
      delay_us(650);

      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(600);
      PWM1_Stop();
      delay_us(1250);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(1250);

       PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(1250);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      PWM1_Start();                                 //send 1 bit : high for 1200usec then low for 600 usec
      delay_us(650);
      PWM1_Stop();
      delay_us(600);
      
      
      
      
      
      
      
      



  
  }
}

اعلانات
إضافة رد

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

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

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


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

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