سلام
منظور از pwm نرم افزاری ست و ریست کردن یک پین با دستورای ساده و ایجاد تاخیر در بین این عملکرده.
اینجا رو یه نگاه بنداز :
http://www.eca.ir/forum2/index.php?topic=58438.0
چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------ محصولات
سلام من این کارو کردم ولی دقیقا موج pwm روی پین هایی که میخواستم نیومد من میخوام همین portb رو یکی یکی با pwm تا 255 ببرم و بعد یکش کنم
$regfile = "m32def.dat"
$crystal = 2000000
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down , Prescale = 64
Config Portb = Output
Enable Interrupts
Do
Pinb.0 = Ocr1a
Pinb.1 = Ocr1b
Dim X As Byte
For X = 0 To 255
Ocr1a = X
Ocr1b = X
Waitus 200
Next X
Loop
End 'end program
خوب این برنامه فکر کنم اشتباهه چون تو حلقه for می مونه و پورت B تغییری نمی کنه.
تایمر 2 رو هم در مد اسنکرون قرار بده تا هر یک ثانیه اینتراپت بده بعد تو اینتراپتت هر بار یک واحد به مقدار ocra و ocrb اضافه کن. اون قسمت تو برنامه اصلی هم که پین ها رو برابر مقدار ocrها نوشتی اول به جای پین به پورت تغییر بده چون به عنوان خروجی استفاده کردی و سپس همونجا تو لوپت بدون هیچ برنامه ی دیگه ای بزار.
فکر کنم اینطوری بتونی جواب بگیری
چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------ محصولات
1- یعنی یه کریستال ساعت 32/768 به پایه های 28 و 29 وصل کنی و تو قسمت تنظیمات برنامه config clock رو هم تنظیم کنی. توضیحات بیشتر اون رو تو help می تونی بخونی.
2- هر پورت سه رجیستر به نام های DDR، PIN و PORT داره.DDR ورودی و خروجی بودن رو مشخص می کنه و بعد اگه پورت خروجی شد باید از رجیستر PORT استفاده کنید نه PIN .
http://www.eca.ir/forum2/index.php?topic=64441.0
موفق باشید
چرا ناراحتی پاتریک!
+ امروز ی بچه دیدم سرچهارراه گل میفروخت
- از دیدنش ناراحت شدی؟
+ نه
پس چی ناراحتت کرده
+ اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
------------------------------------------------------------------------------------------------------
تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
------------------------------------------------------------------------------------------------------ محصولات
سلام دوستان
برای کسانی که از اینگونه موضوعات جستجو میکنند ولی چیز خوبی نصیبشون نشده این لینک رو میگذارم تا استفاده کنند ...
امیدوارم مفید باشه ....
چگونه همه پایه های میکروکنترلر را PWM کنیم ؟؟
با سه کامپایلر :
کدویژن
بسکام
اتمل استودیو
http://www.eca.ir/forum2/index.php?topic=90246.0
دیدگاه