تا قبل فراگیر شدن میکروکنترلر های ARM و AVR در ایران ، حق انتخاب زیادی برای میکروکنترلر وجود نداشت. تا مدت ها که یکه تاز میدان میکروکنترلر های 8051 بودند یا بهتر بگوییم خانواده 8051 که بعد ها میکروی PIC هم به آن اضافه شد. با توجه به امکاناتی که میکروکنترلر های PIC داشتند انتخاب ها همه معطوف شد به این میکروی جدید. هرچند که واقعا در سطح جهانی جدید محسوب نمی شد ولی خوب در ایران انتخاب جدیدی بود. به دلیل اختلاف فاحشی که هم در امکانات و هم در سرعت پردازشی این دو خانواده وجود داشت ، کاربرها سر این که کدام میکرو را برای کار و پروژه انتخاب کنند مردد نبودند و بحث جدالی هم وجود نداشت. اما کمی بعد که میکرو کنترلر های AVR وارد بازار ایران شدند ، با توجه به امکانات قابلیت ها ، سرعت پردازشی توجه زیادی به خود جلب کردند به نحوی که تعداد کاربران استفاده کننده آنها بشدت زیاد شد و کم کم بحث و جدلی پیش آمد که کدام میکرو بهتر است ، کدام صنعتی تر است ، کدام پایدار تر است و از این دست سوال های رایج اما متاسفانه به جای برخورد صحیح و جواب اصولی افراد جبهه گیری می کردند و با دلیل و برهان های بی پایه و اساس سعی در برتر نشان دادن یکی از این دو خانواده را داشتند. بحث های زیادی در انجمن های الکترونیک فارسی زبان در این خصوص صورت گرفته و اگر دقت کنید هیچکدام به یک جواب منطقی ختم نشده و فقط افراد سلیقه خود را در جواب دخیل کرده اند. اصولا نحوه برخورد باید خالی از تعصب باشد ، چرا که ما فقط استفاده کننده هستم و چه بسا که در اشتباه بوده ایم ، به همین جهت سعی دارم در این مقاله مقداری به لحاظ منطقی مو شکافی کنیم و به جوابی منطقی برسیم. عمده مسائلی که در خصوص برتری PIC از AVR ذکر میشه به شرح زیر است
نویزپذیری کم
صنعتی بودن
با کمی دقت در خصوص مساله در می یابیم که چقدر این دو دلیل ذکر شده بی پایه و اساس هستند و حالا چرا افراد به این دو دلیل استناد می کنند خود جای بحث دارد. در خصوص مورد اول باید متوجه باشیم که هر وسیله ای شرایطی برای استفاده دارد که اگر آن شرایط را فراهم نکنیم ، قطعا وسیله مورد استفاده دچار مشکل خواهد شد ، به عنوان مثال شما نمی تواند انتظار داشته باشید که با ماشین خود در دریا رانندگی کنید ، اگر چنین کاری انجام دادید به قطع ماشین شما غرق خواهد شد. پس آیا بر این اساس می توانیم نتیجه بگیرم که ماشین خوب نیست و قایق بهتر است ؟ مسلما خیر نمی توان چنین نتیجه ای گرفت ، پس نویزپذیری دلیلی نیست که بتوان یک میکرو را برتر از میکروی دیگر دید. چرا که اگر طراحی سخت افزار به صورت اصولی انجام نشده باشد فرقی نمی کند که شما BMW سوار باشید یا فراری ، در هر دو صورت غرق خواهید شد. دلیل بعدی صنعتی بودن است ، اصلا صنعتی بودن چه تعریفی دارد که میکروی PIC شامل آن تعریف می شود ؟ در این مواقع افراد فقط تجربه خود از مشاهده دستگاه های صنعتی را بیان میکنند که پردازنده استفاده شده PIC بوده است بدون توجه به این دستگاه های صنعتی موجود در ایران قدیمی هستند و در زمان تولید آنها بهترین انتخاب میکروی PIC بوده است. چرا که در دستگاه های صنعتی جدید میکروی AVR هم بسیار استفاده شده است ، مثل PLC های زیمنس . مسائل مهم تری وجود دارند که شما مجبور به انتخاب یک میکرو می کنند ، مثل سرعت پردازش ، میزان حافظه برنامه و حافظه موقت سیستم ، تعداد پورت ها ، تعداد کانال های آنالوگ ، دقت مبدل آنالوگ و مهم تر از همه محیط های توسعه برنامه و روش های پروگرام برنامه . فکر میکنم یکی از دلایل اصلی موفقیت AVR انتخاب کامپایلر اوپن سورس GCC برای توسعه برنامه و روش ساده پروگرام آن بود و البته امکانات بسیار زیاد آن. در کل فرقی نمی کند ، شما از هر میکرویی که دوست داشته باشید می تواند در پروژه خود استفاده کنید فقط به این شرط که اول شرایط استفاده را ایجاده کرده باشید ، سخت افزار را به صورت صحیح طراحی کرده باشید و برنامه را به شکل درستی توسعه داده باشید.
تفاوت بین زبان C و امبدد C. اول از همه، معرفی مختصری درباره تاریخچه زبان C و امبدد C خواهیم داشت. ما همیشه از زبان C، در پردازندههایی که روی آن سیستمعامل نصب شده، استفاده میکنیم. این بدان معنی است که زبان C برای اجرای بر روی س...
آیا تئوری و ریاضیات در زندگی ما کاربردی دارد؟ تقریبا همهی ما، یا بهتره که بگوییم همهی ما، جامعهی فارغالتحصیلان کمابیش سوار تاکسی، مهمانی و خلاصه اینور اونور شنیدیم که درس دیگه فایده نداره و الان همهی درس خوندهها بیکار هستن ...
آموزش میکروکنترلر AVR – قسمت دهم; در قسمت نهم آموزش میکروکنترلر AVR به stack یا پشته و مقدمه ای بر تایمرها و کانترها پرداختیم، در این جلسه از آموزش میکروکنترلر AVR به شیوه استفاده از تایمرها و جزئیات آنها و همچنین وقفه ها میپ...
آموزش میکروکنترلر XMEGA – قسمت سوم; در قسمت دوم آموزش میکروکنترلر XMEGA به مباحث کلی در مورد خانواده XMEGA از جمله محدوده دما و تغذیه و کلاک پرداختیم. در این قسمت از آموزش میکروکنترلر XMEGA به آشنایی با رجیسترهای پورت در این ...
آموزش میکروکنترلر AVR – قسمت نهم; در قسمت هشتم آموزش میکروکنترلر AVR به بررسی خواندن و نوشتن رجیسترهای 16 بیتی و Status Register پرداختیم، در این جلسه از آموزش میکروکنترلر AVR به صحبت راجب به stack یا پشته و مقدمه ای بر تایمرها...
آموزش میکروکنترلر AVR - قسمت هشتم; سیسوگ در قسمت هفتم آموزش میکروکنترلر AVR به بررسی منابع کلاک در AVR پرداخت، حال در قسمت هشتم آموزش میکروکنترلر AVR به 3 مبحث اشاره می کند; 1-خواندن و نوشتن در رجیسترهای داخلی خانواده AVR که...
آموزش میکروکنترلر XMEGA - قسمت اول; این سری آموزشها که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت رایگان در اخت...
آموزش میکروکنترلر AVR – قسمت هفتم: سیسوگ در قسمت ششم آموزش میکروکنترلر AVR به بررسی مراحل راه اندازی یک دیکودر BCD به 7segment به وسیله کامپایلرهای بسکام و کدویژن پرداخت، حال در این قسمت از آموزش میکروکنترلر AVR میخواهیم با م...
آموزش میکروکنترلر AVR – قسمت ششم; این سری آموزش های میکروکنترلر AVR که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت...
آموزش میکروکنترلر AVR – قسمت پنجم ; این سری آموزش ها که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت رایگان در اخ...
آموزش میکروکنترلر AVR – قسمت چهارم ; این سری آموزشها که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت رایگان در اخ...
آموزش میکروکنترلر AVR – قسمت سوم ; این سری آموزشها که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت رایگان در اختی...
منظور از محیط صنعتی بیشتر مربوط به نویز های الکترومغناطیسی هست که به واسطهی موتور های سهفاز تولید میشن. چراکه نویز الکتریکی در همهجا هست و منحصر به صنعت نمیشه. PIC ها هم بیشتر از این نظر بهتر هستن. مطلب زیر رو مطالعه بفرمایید. http://www.microchip.com/design-centers/emc
بسیار متشکرم دوست عزیز ، برای لینک ، اما دقت داشته باشید که نویز های الکترومغناطیسی به شد میرا هستند و خیلی بعیده که تو فاصله منطقی یکی دومتر از تجهیز بتونه تاثیر خاصی بذاره همیشه عامل اصلی انتقال نویز خطوط دیتا و همچنین تغذبه مدار است. در بحرانی ترین حالت پالس های EMP که مثلا بخوام دستگاه برش پلاسما رو مثال بزنم به راحتی با یه کاور وفلزی قابل درمان است اما نویز های وارده از طریق خطوط تغذیه و دیتا باید به صورت مناسبی فیلتر بشن.
عالی بود
خواهش میکنم دوست عزیز
منظور از محیط صنعتی بیشتر مربوط به نویز های الکترومغناطیسی هست که به واسطهی موتور های سهفاز تولید میشن. چراکه نویز الکتریکی در همهجا هست و منحصر به صنعت نمیشه. PIC ها هم بیشتر از این نظر بهتر هستن. مطلب زیر رو مطالعه بفرمایید.
http://www.microchip.com/design-centers/emc
بسیار متشکرم دوست عزیز ، برای لینک ، اما دقت داشته باشید که نویز های الکترومغناطیسی به شد میرا هستند و خیلی بعیده که تو فاصله منطقی یکی دومتر از تجهیز بتونه تاثیر خاصی بذاره
همیشه عامل اصلی انتقال نویز خطوط دیتا و همچنین تغذبه مدار است.
در بحرانی ترین حالت پالس های EMP که مثلا بخوام دستگاه برش پلاسما رو مثال بزنم به راحتی با یه کاور وفلزی قابل درمان است اما نویز های وارده از طریق خطوط تغذیه و دیتا باید به صورت مناسبی فیلتر بشن.