توضیحات
شبیه سازی کرنومتر به کمک وقفه تایمر شماره صفر به زبان C
برنامه ای به زبان C برای Atmega32 در نرم افزار Atmel Studio نوشته شد که قادر است کرونومتری را شبیه سازی کند.
بدین منظور لازم است تایمر به اندازه 10 میلی ثانیه شمارش کند و در انتهای 10 میلی ثانیه Seven Segment را به درستی تحریک کند. برای این کار از کریستال داخلی 8 مگاهرتز برای راه اندازی Cpu و تایمر ها استفاده شده است. از آنجایی که این سرعت برای شمارش 10 میلی ثانیه زیاد است در نتیجه توسط ثبات کنترل تایمر صفر TCCR0 این مقدار تقسیم بر 8 شده است( صفحه 78 Datasheet ) در نتیجه فرکانس کاری تایمر صفر به 1 مگاهرتز تقلیل میابد. پس با هربار شمارش تایمر صفر 1 میکروثانیه زمان لازم است. با کمی دقت متوجه میشویم که اگر 250 عدد توسط تایمر شمرده شود 250 میکروثانیه زمان محاسبه میگردد. این مقدار شمارش در ثبات OCR0 قرار میگیرد تا هربار که تایمر صفر به آن رسید هم Reset کند و هم وقفه اجرا گردد.
همانطور که در برنامه و در قسمت وقفه می بینید، از متغیر Help برای شمارش تعداد 40 تا 250 میکرو ثانیه استفاده شده است. با تمام شدن این 40 عدد، 10 میلی ثانیه زمان صرف میشود و موجب تغییر اولین عدد صدم روی Seven Segment میشود. متغیر های Tenth_1, Tenth_2 برای نگهداری حساب صدم به کار میرود و متغیرهای Centesimal_1, Centesimal_2 نیز مقادیر دهم را نگهداری میکنند.
هر زمان که وقفه تمام شود، در برنامه main ، این متغیر ها روی پورت های A, B تقسیم میشود. نحوه اتصال Seven Segment را در Proteus می بینید .
شبیه سازی کرنومتر به کمک وقفه تایمر شماره صفر به زبان C توسط کارشناسان گروه ۱.۲.۳ پروژه پیاده سازی گردیده و به تعداد محدودی قابل فروش می باشد.فایلهای پروژه به صورت کامل پس از خرید فایل بلافاصله در اختیار شما قرار خواهد گرفت.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.