جدول المحتويات:

لوحة تطوير Atmega16 / 32 مع شاشة LCD: 8 خطوات
لوحة تطوير Atmega16 / 32 مع شاشة LCD: 8 خطوات

فيديو: لوحة تطوير Atmega16 / 32 مع شاشة LCD: 8 خطوات

فيديو: لوحة تطوير Atmega16 / 32 مع شاشة LCD: 8 خطوات
فيديو: Interfacing of LCD 16x2 with Atmega16/32 | LCD Display 2024, شهر نوفمبر
Anonim
مجلس التنمية Atmega16 / 32 مع LCD
مجلس التنمية Atmega16 / 32 مع LCD
مجلس التنمية Atmega16 / 32 مع LCD
مجلس التنمية Atmega16 / 32 مع LCD
مجلس التنمية Atmega16 / 32 مع LCD
مجلس التنمية Atmega16 / 32 مع LCD

يوضح هذا التوجيه كيفية عمل لوحة التطوير الخاصة بك لمعالجات Atmega16 أو Atmega32. الإنترنت مليء بلوحات التطوير المصنوعة منزليًا ، لكنني أعتقد أن هناك مساحة متبقية لمعالجات أخرى. لقد كانت هذه اللوحة مفيدة جدًا في مشاريعي وقد قمت بالفعل بتصميمها وجعلتها تخدم أحد مشروعي. ما الذي تقدمه؟ - موصل ISP. - جهد مرجعي قابل للتعديل لـ AREF مع أداة تشذيب. - 8 مصابيح LED متصلة بـ PORTA مع وصلات توصيل قابلة للإزالة ، حتى تتمكن من استخدام المصابيح أيضًا مع منافذ أخرى. - قضبان سبايك لـ PORTA و PORTB و PORTC و PORTD. - شريط سبايك معدل لشاشة LCD (4 بت) - موصل منفذ تسلسلي rs232 - وحدة rs232 قابلة للإزالة - 5 فولت منظم ماذا ستحتاج؟ (أجزاء للوحة الرئيسية) - معالج 1x Atmega16 أو Atmega32- 1x كريستال (اختيارك كم سيكون عدد الميجاهرتز) - مكثفات 2x 27 pF للكريستال- 1x 7805 منظم الجهد- 1x 47uF 16V مكثف- 3x 100nF مكثف- 1x مقبس تيار مستمر 2 ، 1 مم أو 2 ، 5 مم (أيًا كان ما تريد استخدامه) - مقياس جهد 1x 1K - 8x LED (أي لون) - مقاومات 8x 330 أوم - الكثير من قضبان السنبلة - أجزاء لوحدة rs232- Max232 IC- 4x 0 ، 1uF المكثفات - عدد 2 ليد (أخضر وأحمر) - 2x 330 أوم مقاومات - قضيب سبايك - موصل D9

الخطوة 1: لوحات الدوائر

لوحات الدوائر
لوحات الدوائر
لوحات الدوائر
لوحات الدوائر

توجد دوائر من كلتا اللوحتين ويحتوي ملف pdf على ملفات مطبوعة من هذه اللوحات. يمكنك حفر الألواح الخاصة بك من هذه الصور. يحتوي الملف المضغوط على جميع ملفات Eagle من هذه اللوحات. لا تتردد في تعديل هذه كيف تريد.

الخطوة 2: النقش أو الطحن

النقش أو الطحن
النقش أو الطحن
النقش أو الطحن
النقش أو الطحن

هناك طريقتان لعمل هذه الألواح ، الحفر أو الطحن. أنا لست كيميائيًا ، لذلك استخدمت الخيار الأخير. لقد صنعت طاحونتي من هذه التعليمات الرائعة ، لذلك إذا كان لدى شخص ما أيضًا مطحنة nc وأراد استخدامه لصنع هذه اللوحات ، فقط أخبرني وسأرسل رموز G.

الخطوة 3: اللحام

لحام
لحام
لحام
لحام

ستعرض الصورة أدناه اسم المكون ومكان وجوده على اللوحة.

الخطوة 4: الاختبار

اختبارات
اختبارات

قبل أن نتمكن من اختبار لوحة التطوير الخاصة بنا ، سنحتاج إلى كابل مبرمج AVR. هنا تعليمات جيدة حول كابل البرمجة. نحتاج فقط 6 أسلاك. SCK و MISO و MOSI و RST و Ground و + 5 V وهذا هو السبب في أن الموصل الخاص بي يحتوي على 6 دبابيس فقط. تحتاج إشارات SCK و MISO و MOSI و RST إلى 390 مقاومة أوم والتي عادة ما تكون ملحومة على اللوحة ، لكنني أردت توفير بعض المساحة من اللوحة وهذا هو سبب وجود المقاومات داخل الكبل. بدون هذه المقاومات لن تعمل البرمجة. علينا أيضًا عمل كبل بين وحدة rs232 واللوحة الرئيسية. هناك أيضًا زوجان من "أسلاك الاختبار" على الصورة وهذه مفيدة حقًا عندما سنقوم باختبار لوحتنا.

الخطوة 5: البرمجة وبرنامج الاختبار البسيط

البرمجة وبرنامج الاختبار البسيط
البرمجة وبرنامج الاختبار البسيط

بعد ذلك ، سنحتاج إلى بعض برامج "الاختبار" لاختبار مجلسنا. الأهمية! يجب علينا تعطيل JTAG من PORTC ، إذا لم نفعل ذلك ، فلن تعمل وحدة lcd ، لذلك من الضروري. في تشغيل Linux يمكننا القيام بذلك باستخدام الأمر avrdude: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m يقوم هذا الأمر بتعطيل JTAG وتعيين مذبذب داخلي 8 ميجا هرتز واستخدامه. لوحنا به بلورات خارجية ، لكن الناس يستخدمون أحجامًا مختلفة من البلورات ، لذا فإن هذا الأمر آمن للجميع. إذا كنت تريد استخدام البلور الخارجي الخاص بك هنا فهو موقع لحساب الصمامات الصحيحة. كن حذرًا مع برمجة الصمامات. إذا قمت بتعيين قيم فتيل خاطئة ، فلن يعمل المعالج. هناك طريقة لاستعادتها بنبض خارجي ، ولكن دعونا نأمل ألا تضطر إلى القيام بذلك =) برنامج اختبار بسيط: # include (avr / io.h) int main (void) {DDRA = 0xff؛ // تعيين المنفذ كإخراج DDRB = 0xff ؛ DDRC = 0xff ؛ DDRD = 0xff ؛ PORTA = 0x00 ؛ // تعطيل جميع عمليات السحب: موانئنا تعمل بشكل صحيح. ضع أحد طرفي السلك إلى أحد رؤوس المصابيح الأمامية والمس بالطرف الآخر كل منافذ ترتفع خطوة بخطوة. يجب أن يلمع المصباح في كل مرة. إذا لم يلمع ، فهناك خطأ ما في اللحام. تذكر الاختبار أيضًا أن كل مصباح LED يعمل.

الخطوة 6: اختبار المنفذ التسلسلي

اختبار المنفذ التسلسلي
اختبار المنفذ التسلسلي
اختبار المنفذ التسلسلي
اختبار المنفذ التسلسلي

إذا كان كل شيء يعمل بشكل مثالي ، فقد حان الوقت لاختبار وحدة rs232 الخاصة بنا. هناك برنامج صغير يختبر عمل TX و RX الخاص بنا. الاستخدام في Linux: قم بإنشاء ملف يسمى Makefile وانسخ النص أدناه في الملف. يفترض رمز Makefile أنك تستخدم Atmega16 وكبل البرمجة الخاص بك هو stk200 تذكر تعيين الأذونات الصحيحة لـ المنفذ التسلسلي الخاص بك / dev / ttyS0CC = / usr / bin / avr-gccCFLAGS = -g -Os -Wall -mcall-prologues -mmcu = atmega16 -std = gnu99OBJ2HEX = / usr / bin / avr-objcopy AVRDUDE = / usr / bin / avrdude: $ (TARGET).hex $ (AVRDUDE) -p m16 -P / dev / parport0 -c stk200 -u -U flash: w: test.hex٪.obj:٪.o $ (CC) $ (CFLAGS) $ <-o $@٪.hex:٪.obj $ (OBJ2HEX) -R.eeprom -O ihex $ <$ @ clean: rm -f *.hex *.obj *.o تنزيل الملف المصاحب serial.c ووضعه في نفس المجلد حيث يوجد Makefile. قم بتشغيل لوحة التطوير الخاصة بك ووضع الكابل بين وحدة rs232 واللوحة الرئيسية. يجب أن تضيء المصابيح الموجودة على الوحدة النمطية الآن. ضع سلك اختبار بين دبوس PA0 وبعض من دبوس المصابيح. استخدم الجهاز الطرفي وانتقل إلى المجلد حيث يوجد test.c و Makefile. قم بتوصيل مبرمج ISP باللوحة. حان الوقت الآن لإرسال الكود الخاص بنا في المعالج ويحدث الأمر مع الأمر الطرفي: قم بتنزيل برنامج يسمى GTKterm (Serial Port Terminal). Fedora: yum install gtktermUbuntu: sudo apt-get install gtkterm ابدأ GTKterm وتنسيقه باستخدام سرعة 9600 كيلو بايت ، 8 بتات بيانات ، 1 بت توقف ، لا تكافؤ ، لا يتجاوز أي شيء. إذا نجح كل شيء ، يجب أن يكتب "يعمل!" على شاشة GTKterm عندما تضغط على الزر "z" وعندما تضغط على الزر "x" ، يجب أن يضيء المصباح الموجود على اللوحة وعندما تضغط على "c" يجب إيقاف تشغيله.

الخطوة 7: اختبار وحدة LCD

اختبار وحدة LCD
اختبار وحدة LCD
اختبار وحدة LCD
اختبار وحدة LCD

حان الوقت الآن لاختبار وحدة LCD الخاصة بنا. لقد أرفقت برنامجًا رائعًا للتحكم في شاشة LCD. لقد قمت بتنزيل الكود من موقع Scienceprog.com وقمت بتعديله قليلاً. قم ببرمجة المعالج بهذا الرمز وقم بتوصيل وحدة lcd على اللوحة. توصيلات سنون وحدة LCD: 1 = VSS (أرضي) 2 = VDD (5 فولت) 3 = VO (أرضي) 4 = RS5 = R / W6 = E11 = PC412 = PC513 = PC614 = تحتوي وحدة PC7My LCD على موصلين (انظر الصورة) ، لأن النص يتجه لأعلى لأسفل إذا وضعت الوحدة كما ينبغي. لقد قمت بعكس ولصق موصل جديد بالجانب الآخر. الآن يعمل في كلا الاتجاهين.

الخطوة 8: بعض مقاطع الفيديو

مقاييس التسارع باهتة

موصى به: