آزمایش بالاترین تولید فرکانس با یک پایه میکرو(12mhz اخرین رکورد)

در اين بخش مي‌توانيد در مورد تمامي مسائل مرتبط با میکروکنترلرهای ARM به بحث بپردازيد

مدیران انجمن: Mahdi Mahdavi, SAMAN, sinaset, شوراي نظارت

ارسال پست
Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22039 بار

آزمایش بالاترین تولید فرکانس با یک پایه میکرو(12mhz اخرین رکورد)

پست توسط sinaset » دو شنبه 17 دی 1397, 11:44 am

بنام خدا
باسلام 

تصویر
فکر میکنم خیلی ها علاقه دارن بدانند با یک پایه میکروکنترولر چه مقدار می توان فرکانس تولید کرد! 

در اولین ازمایش خوب،اینجانب، با پایه PINA.5 توانستم فرکانس 12 مگاهرتز را با میکروکنترولر stm32f103c8t ایجاد کنم!

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

بنظر میاید بشود به کمک دستورات اسمیلی به فرکانس بالاتر نیز رسید..!

*تصور میکنم،در میکروکنترولر AVR نهایت فرکانسی که میشد با کدهای معمولی تولید کرد،حدود 100 کیلو هرتز و یا در همین محدود! درست کرد.

کدهای صفحه اصلی :
Please Login or Register, to see this code
[لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید] برنامه (که کیل و stm32cubx و .. ان نیز همراه ان می باشد)
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.

Colonel II
Colonel II
نمایه کاربر
پست: 7545
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9280 بار
سپاس‌های دریافتی: 22039 بار

Re: آزمایش بالاترین تولید فرکانس با یک پایه میکرو(12mhz اخرین رکورد)

پست توسط sinaset » شنبه 7 اردیبهشت 1398, 10:40 am

باسلام 

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

ولی ازمایشی که در بالا قرار دادم،موفقیت امیز بود! 

به این نکته هم پی بردم،هرچقدر در زمانی که قصد داریم،یک پایه را زیاد خاموش و روشن کنیم! از دیگر پروسس ها (مثل فعال بودن واحد ها دیگر به صورت همزمان!) کمتر استفاده کنیم،سرعت خروجی بهتره و بالاتر خواهد بود! روشن بودن واحدهای دیگر،باعث میشود،فرکانس 12 مگاهرتز بالا! کمتر و کمتر شود!.. اما استفاده از واحد DMA تا حدودی خیلی کمتر روی تولید فرکانس، بیشتر تاثیر گذار است! .

همچنین عامل دیگر،که باعث میشد،نشود یک پایه رو تا مرز 12 مگاهرتز خاموش و روشن کنیم، خود دستورات برنامه نویسی بود! استفاده از کدهای کتابخانه ! پروسس و پردازش رو طولانی تر میکرد! هر چقدر دستورات سطح پایین تر نوشته میشدن! سرعت خاموش و روشن شدن پایه بهتر میشد! کدهایی که در بالا گذشته شده،تقریبا،پایین ترین سطح در همان C می باشد! 

نتیجه می گیریم،شاید اگر با زبان اسمبلی دستورات را می نوشتم! سرعت نیز بازهم از این بیشتر میشد!

کتابخانه ها Keil تا حدودی سنگین هستن! ولی خوب این بخاطره این است که،واقعا نوشتن دستورات برای این همه واحد! در انواع اقسام میکروکنترولر بسیار دشوار است! برای همین ساده سازی تا حدودی بهتر است ! (استفاده از کتابخانه ها اماده)

باتشکر.
 
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.
با عرض پوزش،دیگر در انجمن حضور ندارم،که به پیام ها پاسخ بدم.

ارسال پست

بازگشت به “میکروکنترلرهای ARM”