NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3666 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 10 از 10

موضوع: مشکل با rgb led

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض مشکل با rgb led

    با سلام خدمت دوستان عزیز
    بعد مدتها چند روزی وقت ازاد داشتم و همین مزید به علتی شد که طرحی رو که برای داخل کیس خودم داشتم رو شروع کنم
    برای همین برای شروع کار و تست 4عدد RGB led تهیه کردم
    اول کار همه چیز خوب بود و با توجه به مطالبی که خونده بودم و ...
    فک میکردم این led در واقع سه تا led در یک پکیج هست
    ولی بعد بستن مدار(در مدار از pwm استفاده نشده بود بلکه فقط هدف فقط ترکیب دو دو یی این رنگ ها و نتیجه حاصله بود)
    ولی در هر مرحله که رنگ قرمز وارد کار میشد،دو رنگ دیگه بی تاثیر به نظر میرسیدن

    برای همین led رو مستقیما به ولتاز وصل کردم
    و در کمال نا باوری متوجه شدم مثلا در زمانی که هر سه led به منبع وصل هستن(و در نتیجه باید رنگ سفید داشته باشم)
    رنگ قرمز دارم!
    با کمی دقت متوجه شدم دو رنگ ابی و سبز و میتونم همزمان روشن کنم ولی قرمز باید به تنهایی روشن بشه(حتی ولتاژ قابل تحمل led قرمز هم کمتره و در بیشتر از 3 میشوزه ،در حالی که ال ای دی های ابی و سبز تا 5ولت جواب میدن!)
    با این تفاسیر در مورد درایو این led(تعداد 20 تا هست) چیکار میشه کرد(منظورم هم سخت افزار و هم نرم افزاره)؟
    من با pwm کار نکردم(برنامه هارو با بسکام مینویسم)ولی تا جایی که میدونم این پروسه بر روی تایمر/کانتر ها پیاده سازی میشه،ولی تا جایی که من میدونم اکثرavr ها فقط دو تا تایمر کانتر دارن،که با این وجود رنگ سوم رو نمیشه کنترل کرد!
    در ضمن از اونجایی که led یه مشکلی داره که نمیتون قرمز و با بقیه رنگ ها هم زمان روشن کرد،باید این موج های pwm مکمل باشن تا بشه قرمز و با بقیه ترکیب کرد!(نمیدونم این کار هم شدنیه یا نه!
    عکس ها به ترتیب:
    1.سبز به تنهایی
    2.قرمز به تنهایی
    3.ابی به تنهایی
    4.سبز+ابی
    5.سبز+ابی+قرمز!




    ویرایش توسط amin69 : 01-05-2014 در ساعت 14:02

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    Banned
    تاریخ عضویت
    Apr 2013
    نام
    صادق علی بخشی
    نوشته ها
    1,148
    تشکر
    1,183
    تشکر شده 1,276 بار در 702 پست

    پیش فرض

    سلام
    شما مطمئن هستید که چیپ قرمز به همراه بقیه ی چیپها روشن نمیشه؟
    ممکنه به خاطر شدت نوری که داره به چشم نیاد
    من توی خونه فقط rgb پاور دارم که اونهم شدت نور قرمزش بیشتر هست
    ولی هر 3 رنگ باهم روشن میشه و یه خورده تفاوت داره با قرمز تنها
    شما یک مقاومت سر راه چیپ قرمز بزارید و دوباره تست کنید
    اگر فقط قصد استفاده دارید و قرار نیست برای یادگیری بیشتر از این ال ایی دی ها استفاده کنید
    پیشنهاد میکنم led چشمک زن بخرید
    کلا دوتا پایه داره با رنگهای مختلف چشمک میزنه

  4. تشکرها از این نوشته :


  5. #3
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    نقل قول نوشته اصلی توسط sadeghbakhshi نمایش پست ها
    سلام
    شما مطمئن هستید که چیپ قرمز به همراه بقیه ی چیپها روشن نمیشه؟
    ممکنه به خاطر شدت نوری که داره به چشم نیاد
    من توی خونه فقط rgb پاور دارم که اونهم شدت نور قرمزش بیشتر هست
    ولی هر 3 رنگ باهم روشن میشه و یه خورده تفاوت داره با قرمز تنها
    شما یک مقاومت سر راه چیپ قرمز بزارید و دوباره تست کنید
    اگر فقط قصد استفاده دارید و قرار نیست برای یادگیری بیشتر از این ال ایی دی ها استفاده کنید
    پیشنهاد میکنم led چشمک زن بخرید
    کلا دوتا پایه داره با رنگهای مختلف چشمک میزنه
    من سر راه led قرمز یه مولتی ترن گزاشتم
    ولی نتیجه همونه،وقتی led قرمز روشن میشه این یکی ها خاموش میشن!(سر اتصال کوتاه دومین led هم سوخت(فقط رنگ قرمزش!))

    متاسفانه من فیلم هم گرفتم ولی چون شدت نور زیاده واضح نیست
    ولی در هر صورت من نمیتونم هم زمان روشن کنم این 3تارو!
    در ضمن من نیاز دارم خودم بتونم کنترل کنم رنگ رو،برای همین اون دو پایه ها به دردم نمیخورن

    دوستان جایی هست که بشناسین که led rgb لیزری داشته باشه؟!(از اونایی که که بدنه شیشه ای هست،و داخلش کاملا دیده میشه)
    اینایی که من گرفتم سفید خود رنگن(یعنی رنگ قسمت شیشه ای سفید ماته،که برای من زیادم مناسب نیست،تو تبریزم همین به موردم سخت پیدا میشه!)

  6. #4
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    دوستان مشکل حل شد،با pwm کاملا نتیجه گرفتم من
    هر چند نکته ای که دوست عزیز هم اشاره کردن خیلی مهمه و خروجی های pwm باید قبل ارسال اگه مستقیما به led میره با مقاومت مناسب کالیبره بشن
    چون ولتاژی که برای درایو کامل led قرمز لازمه حد اقا یک ولت کمتر از ابی و سبزه

    سورس برنامه رو براتون میزارم که برای مگا 8 و تولید تقریبا همه رنگ ها هست
    و عملا هم تست شده:
    کد:
    $regfile = "m8def.dat"
    $crystal = 8000000
    Config Timer1 = Pwm , Pwm = 10 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up       ' configuration PWM mode of timer 1
    Config Timer2 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up       'Configuration PWM mode of timer 0
    
    
    Ddrb.2 = 1                                                  '  Settings Portb.2, Portb.3, Portb.3 as outputs
    Ddrb.3 = 1
    Ddrb.4 = 1
    
    
    
    
    
    
    
    
    
    
    Dim I As Byte                                               'Declarations of auxiliary variables I and B
    Dim B As Byte
    
    
    
    
    
    
    Do
    
    
                                                                 'For Loop repeated 8 times for all combinations of Gray code
    For B = 0 To 7
    For I = 0 To 255 Step 1                                     'This Loop ia changing PWM factor for 8 bits PWM mode
    Select Case B
    Waitms 50
    
    
    
    
    
    
    
    
    Case 0:
    
    
    Ocr2 = 0
    Pwm1a = 0
    Pwm1b = I
    
    
    Case 1:
    
    
    Ocr2 = 0
    Pwm1a = I
    Pwm1b = 255
    
    
    Case 2:
    
    
    Ocr2 = 0
    Pwm1a = 255
    Pwm1b = 255 - I
    
    
    Case 3:
    Ocr2 = I
    Pwm1a = 255
    Pwm1b = 0
    
    
    Case 4:
    
    
    Ocr2 = 255
    Pwm1a = 255
    Pwm1b = I
    
    
    Case 5:
    Ocr2 = 255
    Pwm1a = 255 - I
    Pwm1b = 255
    
    
    Case 6:
    Ocr2 = 255
    Pwm1a = 255
    Pwm1b = 255 - I
    
    
    
    
    Case 7:
    Ocr2 = 255 - I
    Pwm1a = 0
    Pwm1b = 0
    
    
    End Select
    
    
    Next I
    Next B
    Loop
    End
    حالا مشکل فقط همینه که از کجا میتونم از نوع شیشه ای این led رو تهیه کنم
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: RGB_LED.jpg
مشاهده: 33
حجم: 48.4 کیلو بایت
    تو فروشگاه های اینترنتی که چیزی نیست
    تو تبریزم جایی نیست که داشته باشه تا جایی که من میدونم/
    ویرایش توسط amin69 : 03-05-2014 در ساعت 00:18

  7. کاربران : 2 تشکر کرده اند از شما amin69 برای ارسال این پست سودمند:


  8. #5
    Banned
    تاریخ عضویت
    Apr 2013
    نام
    صادق علی بخشی
    نوشته ها
    1,148
    تشکر
    1,183
    تشکر شده 1,276 بار در 702 پست

    پیش فرض

    اگر تهران بودی بهت ادرس میدادم بری بخری
    چون سایت نداره
    ولی متاسفانه تبریزی

  9. تشکرها از این نوشته :


  10. #6
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    دوستان الان متوجه یه مشکلی شدم و اون این که led قرمز من که به پایه 17 مگا 8 وصل هست
    همیشه روشن میمونه و نورش تغیر نمیکنه
    سورس برنامرو به این صورت تغیر دادم تا خودم بتونم به هر کانال pwm مقدار بدم
    ولی فقط 2 کانال مربوط به تایمر 1 کار میکنن
    به r هر مقداری میدی نورش ثابته(تک کانال 8 بیتی مربوط به تایمر 2)
    ای سی رو هم عوض کردم مشکل از خود برنامست!

    کسی ایراد برنامرو میدونه،ممنون میشم کمک کنه دیباگش کنم
    کد:
    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600
    Config Timer1 = Pwm , Pwm = 10 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
    Config Timer2 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up
    
    
    
    
    Ddrb.1 = 1
    Ddrb.2 = 1
    Ddrb.3 = 1
    
    
    Dim R As Byte
    Dim G As Byte
    Dim B As Byte
    
    
    Do
    Print "input color code(r-g-b)"
    
    
    Print "R:"
    Input R
    Print "G:"
    Input G
    Print "B:"
    Input B
    
    
    
    
    
    
    Ocr2 = R
    Pwm1a = G
    Pwm1b = B
    Wait 5
    
    
    
    
    Loop
    End

  11. #7
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    نقل قول نوشته اصلی توسط sadeghbakhshi نمایش پست ها
    اگر تهران بودی بهت ادرس میدادم بری بخری
    چون سایت نداره
    ولی متاسفانه تبریزی
    اگه اونجا باشه،اینجام پیدا میشه(شاید من به اندازه کافی نگشتم)
    اگه هم نباشه سفارش میدم پیدا میکنن
    هرچند نمونه 3واتی ار جی بی هم هست که اگه اونام پیدا نشد،رو اون تست هامو میکنم،که با 3 تا ترانزیستور امپر بالا راه میوفته!
    البته همینایی هم که دارم تا حالاش خوب جواب دادن
    فعلا اولویت برنامه و رفع عیب اونه
    باقیش راحته!

  12. #8
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    نقل قول نوشته اصلی توسط amin69 نمایش پست ها
    دوستان الان متوجه یه مشکلی شدم و اون این که led قرمز من که به پایه 17 مگا 8 وصل هست
    همیشه روشن میمونه و نورش تغیر نمیکنه
    سورس برنامرو به این صورت تغیر دادم تا خودم بتونم به هر کانال pwm مقدار بدم
    ولی فقط 2 کانال مربوط به تایمر 1 کار میکنن
    به r هر مقداری میدی نورش ثابته(تک کانال 8 بیتی مربوط به تایمر 2)
    ای سی رو هم عوض کردم مشکل از خود برنامست!

    کسی ایراد برنامرو میدونه،ممنون میشم کمک کنه دیباگش کنم
    کد:
    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600
    Config Timer1 = Pwm , Pwm = 10 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
    Config Timer2 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up
    
    
    
    
    Ddrb.1 = 1
    Ddrb.2 = 1
    Ddrb.3 = 1
    
    
    Dim R As Byte
    Dim G As Byte
    Dim B As Byte
    
    
    Do
    Print "input color code(r-g-b)"
    
    
    Print "R:"
    Input R
    Print "G:"
    Input G
    Print "B:"
    Input B
    
    
    
    
    
    
    Ocr2 = R
    Pwm1a = G
    Pwm1b = B
    Wait 5
    
    
    
    
    Loop
    End
    .................................

  13. #9
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    نقل قول نوشته اصلی توسط amin69 نمایش پست ها
    دوستان الان متوجه یه مشکلی شدم و اون این که led قرمز من که به پایه 17 مگا 8 وصل هست
    همیشه روشن میمونه و نورش تغیر نمیکنه
    سورس برنامرو به این صورت تغیر دادم تا خودم بتونم به هر کانال pwm مقدار بدم
    ولی فقط 2 کانال مربوط به تایمر 1 کار میکنن
    به r هر مقداری میدی نورش ثابته(تک کانال 8 بیتی مربوط به تایمر 2)
    ای سی رو هم عوض کردم مشکل از خود برنامست!

    کسی ایراد برنامرو میدونه،ممنون میشم کمک کنه دیباگش کنم
    کد:
    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600
    Config Timer1 = Pwm , Pwm = 10 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
    Config Timer2 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up
    
    
    
    
    Ddrb.1 = 1
    Ddrb.2 = 1
    Ddrb.3 = 1
    
    
    Dim R As Byte
    Dim G As Byte
    Dim B As Byte
    
    
    Do
    Print "input color code(r-g-b)"
    
    
    Print "R:"
    Input R
    Print "G:"
    Input G
    Print "B:"
    Input B
    
    
    
    
    
    
    Ocr2 = R
    Pwm1a = G
    Pwm1b = B
    Wait 5
    
    
    
    
    Loop
    End
    دوستان کسی نیست بدونه مشکل این برنامه چیه؟!

  14. #10
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2011
    نوشته ها
    40
    تشکر
    33
    تشکر شده 9 بار در 4 پست

    پیش فرض

    خودم حل کردم مشکل و
    سورس رو برای دوستان میزارم،شاید یه کور سویی برای تازه کارایی مثل خودم باشه:
    کد:
    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600
    Config Timer2 = Pwm , Prescale = 1 , Compare Pwm = Clear Up , Pwm = On
    Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
    
    
    
    
    
    
    Ddrb.1 = 1
    Ddrb.2 = 1
    Ddrb.3 = 1
    
    
    Enable Timer1
    Enable Timer2
    
    
    Dim R As Byte
    Dim G As Byte
    Dim B As Byte
    
    
    Start Timer1
    Start Timer2
    
    
    Pwm1a = 0                                                   'PWM1
    Pwm1b = 0                                                   'PWM2
    Ocr2 = 0                                                    'PWM3
    
    
    Do
    Print "input color code(r-g-b)"
    
    
    Print "R:"
    Input R
    Print "G:"
    Input G
    Print "B:"
    Input B
    
    
    
    
    
    
    Ocr2 = R
    Pwm1a = G
    Pwm1b = B
    Wait 5
    
    
    
    
    Loop
    End

    مشکل کار اینه که این دو تا pwm مربوط به تایمر 1 نمیتونن هم زمان با کانال سوم pwm که مربوط به تایمر 2 هست clear up یاclear down باشن!
    به همین سادگی به همین خوشمزگی!
    من این مطلب رو از این فروم،یاد گرفتم،با گوگل ترنزلیت به انگیلیسی برگردونید،تقریبا میشه فهمید چی به چیه:
    Atmega8 PWM - Timer2 - Pin17 ?
    ویرایش توسط amin69 : 05-05-2014 در ساعت 01:38

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •