دائما اى حد يفكر يبدأ فى مجال برمجه المتحكمات يلاقى ناس بتنصحه يشتغل على ال AVR وناس تانيه بتنصحه بال PIC ..
طيب مين الافضل ؟!

ولما افكر فى مشروع امتى اشتغل بال PIC وامتى اشتغل بال AVR ؟
مبدئياً مفيش مفهوم اسمه مين افضل من مين فى عالم المتحكمات ..فى حاجه اسمها ايه المناسب بالنسبه للمشروع اللى انا شغال عليه ..
في بعض الاحيان نحتاج أن نصمم جهاز أو نظام تحكم بسعر رخيص جدا ولا نحتاج لقدرات خارقـة أو متحكمــات متطــورة لتشــغيله لــذا نبحــث عــن المتحكــم الارخــص والــذي يكفــي فقـط لهذه المهمة لذا لا تستغرب إن علمت أن المتحكمات (STM8 (8-bit تعتبر من أكثر المتحكمات مبيعـا فــي العــالم لانهــا أرخــص مــن كــل مــن ـ AVR وال PIC الــ 8 بــت وتتفــوق عليهــم فــي تقــديم قدرات مناسبة بسعر منخفض.
وعلشان نقدر نحدد ايه النوع الافضل بالنسبه لمشروعنا لازم نحدد 6 حاجات بسيطه :
—————————————————–
أولا : السرعه :-
هنا سنجد أن متحكمات الـ AVR – 8 bit تتفوق بفارق كبير جدا ويعتبر أدائها أسرع بنحوـ 4 أضعاف مـن مثيلتها في الــ PIC –8 bit وذلك لأن متحكمـات الــ AVR تستطيع أن تنفذ عـدد أوامر في الثانية الواحدة
سنجد أن الـ AVR يمكنه تنفيذ 16 مليون أمر برمجي في الثانية الواحدة بينما الـ PIC بنفس التردد يستطيع أن ينفذ فقط 4 مليون أمر في الثانية الواحدة.
يرجع هذا الامر إلى تقنية الـ Pipeline التي تتميز بها جميع متحكمات الـ AVR ولا تتواجد إلا في بعض فئات الـ PIC المتطورة نسبيا.
—————————————————–
ثانيا : التصميم الداخلي ومعالجة البيانات
عنــدما نكتــب برنامــج بلغــةAssembly نجــد فــارق ضــخم بيــنهمــا حيــث يتمتــع الــ AVR بوجــود 32 ” Register ” يمكــن اســتخدامهم فــي معالجــة وتخزيــن البيانـــات المؤقتـــة بســـرعة وكفـــاءة بينمـــا يجـــبرك الـــ PIC علـــى أســـتخدام مســـجل واحـــد فقـــط في معظم الاوامر وهذا يعني أن البرامج المكتوبة على الـ AVR أكثر كفاءة وأسرع بكثير من البرامج المكتوبة على الـ PIC
———————————————————-
ثالثا : استهلاك الطاقة
هنا يتفوق الـ PIC على الـ AVR بفارق واضح، حيث تتميز متحكمات البيــك باســتهلاك منخفــض للطاقة (سواء على مستوى فارق الجهد أو التيار الكهربائي) ومع ذلك نجد شركة Atmel قد حسنت كثيرا بعض إصدارات AVR بتقنيات استهلاك منخفضة للطاقة مثل Save Pico Power لكن ستظل متحكمات البيك أفضل من الـ AVR في هذا الجانب.
—————————————————————–
رابعا : البرمجة والدعم
منــذ بدايــة تصــنيع الــ AVR قــد اعتمــدت شــركة ATmel علــى compilers مفتوحــة المصدر وتدعم الـ ANSI – C مباشرة مثل AVR-GCC المجاني مما تسبب في جعلها الخيار المفضـــل لـــدى الهـــواة والمحـــترفين ( وهـــو نفـــس الســـبب الـــذي جعـــل مصـــممي لوحـــات آردوينـــو يختارون شرائح الـ AVR بدلا من ال PIC لصناعة الآردوينو ).
أما شركة Microchip فقد اتخذت مسار مختلف، حيث نجد أن برنامج MPLAB يخالف الـ ANSI – C خاصة عند كتابة برامج لعائلات مثل PIC16F مما يجعل تعديل الاكواد المكتوبة بها لاستخدامها مرة أخرى أو نقلها لمتحكمات أخرى عملية صعبة.
————————————————————
خامسا : السعر مقارنة بالامكانيات
فـــي الأسواق المحلية تعتـــبر كل مـــن شـــرائح الـــ AVR وال PIC متقـــاربين فـــي الســـعر لنفـــس العائلات ..لكن نجد أن AVR ATmega16 يوفر قدرات مضاعفة مقارنة بسعر Pic16F مثلا: التميجا : أسـرع 4مـرات مـن البيـك + تـوفير نحـو 3 أضـعاف عـدد مخــارج الــ PWM ونحـو ضـعف معـدل سحب التيار لكل طرف من أطراف المتحكم كما أن الذاكرة في الـ ATmega16 تساوي مرة ونصف حجم الذاكرة في الـPIC16F877.
* نستنتج من ذلك انه في حالة الرغبة بتطوير نظام سريع الاستجابة أو يقوم بعمليات حسابية معقدة وبسعر مناسب فإن الـ AVR هو الخيار المثل لغالب الانظمة المدمجة المعتمدة على المتحكمات 8 بت
——————————————————————–
سادسا : التوافر في الأسواق
هنا نجد أن شركة MicroChip (المصنعة للـ PIC) تتفوق على ATmel فكلا السوقين المحلي والعــالمي نجــد أن منتجــات Microchip متــوفرة بــه بــوفرة ويســهل الوصــول إليهــا مقارنــة بالـــAVR .
*هــذه هــي أهــم الســباب الــتي قــد تجعلــك تفضــل الــ AVR عــن البيــك وقــد تحســم الصــراع بيــن المتحكمات الـ 8 بت، لكن مجددا تذكر أنه في بعض الحالات يكون عليك اختيار متحكم لأنه الأنسب والأفضل سعرا
at | Permalink
فى الجون