ايران ويج

نسخه‌ی کامل: تايمرها
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3
سلام
من چنتا مثال كاربردي درباره تايمر 0و1و2 ميخاستم.برنامش به زبان بيسيك باشه.
يكم بيشتر توضيح بده كه چيشو مي خواي بدوني
pwm - timer - counter
آخه تايمرها حرف واسه گفتن زياد دارن و رو يه قسمت بحث شه بهتره ؟
pwm راه اندازي موتور dc و timer واسه زمان هاي دقيق براي ساخت ساعت
از كتاب اقاي كاهه خوندم واون يكمي هم كه حاليم ميشد رو هم گاتي كردم.اگه اينا رو بگي حله!
سلام
اول زمان
در مورد بدست آوردن زمان دقيق واسه ساعت از كدوم تايمر؟(دقيق ترين كدومه؟؟)
اگه اينو بگين بعدي در مورد pwm واسه موتور dcيه.
سلام دوباره .
تايمر 2 يه قابليت خوبي داره كه مي تونه از كرستال ساعت ( 32768 هرتز ) پالسهاش رو قبول كنه .
مي توني يه كرستال ساعت به پايه 28 و 29 در Atmega 32 وصل كني طبق دستورات زير تايمر دو را كريستال ساعت تغذيه كني .

کد:
Config Timer2 = Timer , Async = On , Prescale =128
Enable Interrupts
Enable Timer2
On Timer2 Ant
تايمر دو در مود تايمر بوده و از كريستال خارجي كه فركانش رو تقسيم بر 128 كرده تغذيه شده و در هر بار سرريز شدن وقفه به زير روال Ant مراجعه مي كند .
به عبارت ديگر در هر ثانيه يه بار در هر كجاي برنامه كه باشد به برنامه وقفه مراجعه كرده و پس مراجعه با دستور Return به ادامه برنامه اصلي بر مي گردد .
اگر Prescale =32 باشد در هر ثانيه 4 بار مراجعه مي كند و به همين ترتيب مي توان با تغيير عدد 32 زمان مراحعه را تغيير داد . البته هر عددي نمي توان گذاشت . فقط يه سري اعداد پيش فرض .

پرو‍ژه زير هم مي تونه كمكت كنه .
ساعت با تايمر لجوج ، ترموستات و نمايش تاريخ شمسي با AVR
سلام
يه سوال كلي كه منو درگيره خودش كرده!
مهندس اين تنظيم فيوزبيتها واسه كلاك خارجي وكريستال وRTC ديگه چه صيغه ايه؟
كلاك خارجي با كريستال يا RTC چه فرقي دارن؟
اينا رو هم بگين فكر كنم حله!!!
سلام
بدست اوردن زمان برای تایمر از فرمول زیر هست
زمان=کریستال/(بیت تایمر * پرسکال)
در مثال زیر کریستال 1مگا هرتز است و پرسکال 1 میباشد
از تایمر کانتر 16 بیتی 1 اصتفاده شده بنابراین طبق فرمول تایمر بهد از 65536 میکرو ثانیه سر ریز میشود
میکرو ثانیه65536=1000000/(1*16^2)
کد php:
$regfile "m32def.dat"
$crystal 1000000
Config Timer1 
Timer Prescale 1
Enable Interrupts
Enable Timer1
Enable Ovf1
On Ovf1 Q
Start Timer1
Do
Locate 1 1
Lcd Timer1
Loop
Q
:
Locate 2 1
Lcd 
"vdv"
Return 
ممنون
ولي من تو برنامه نويسيش مشكل دارم مشكل من اينه:
اين تنظيم فيوزبيتها واسه كلاك خارجي وكريستال وRTC ديگه چه صيغه ايه؟
كلاك خارجي با كريستال يا RTC چه فرقي دارن؟
سلام
میکرو ها برای راه اندازی و تنظیم عملکردشون به یه نوسان ساز نیاز دارند که این نوسان ساز میتونه کریستال ، یا نوسان ساز داخلی یا کلاک خروجیه یه دستگاه دیگه باشه
کریستال : یه قطعه دو پایه هست که به پایه xtal 1 , xtal2 کمیکرو میخوره و کارش نوسان سازی هست ، در حالت عادی میکرو از نوسان ساز داخلی خودش که یه نوسان ساز rc هست و روی 1 مگا هرتز تنظیم شده استفاده میکنه که شما میتونی با تغییر فیوز بیت ها از کریستال خارجی استفاده کنید
rtc :rtc یه ساعت مجزا هست که به دیگر عمل کرد های میکرو کاری نداره و زمان رو به طور دقیق میشماره ، در این حالت کریستالی جدا از کریستال میکرو به دو پایه tosc1 , tosc2 متصل میشه ، فرکانس کریستال 32.768 کیلو هرتز هست
فیوز بیت ها رو دارم جمع اوری میکنم تا فردا نحوه تنظیم همشون رو میزلرم
سلام
در مورد كلاك خارجي كه گفتين ميشه از يه دستگاه ديگه گرفت مثلا چه دستگاهي؟؟
rtc رو فقط تو حالت تايمر 2 متصل ميكنيم؟؟؟
چرا وقتي كه ميخايم زمان دقيق بدست بياريم بايد كريستال بذاريم مگه فركانس ميكرو 8مگا نيست پس چرا بايد يه كريستال به همون فركانس بزاريم؟؟؟
سلام
ميخواهم از تايمر0 در ATMEGA32 طوري استفاده كنم كه اگر PINB.0==1 شد تايمر 2 ثانيه بشمارد و وقتي شمارش تمام شد ‌PORTC.0==1 شود.
برنامه ي اين كار با C چه طور ميشود؟
ممنون ميشم اگر كمكم كنيد.[/quote]
با تشكر.
صفحه‌ها: 1 2 3