الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في ربط Seven Segment Display مع Atmega16

بدأه khalid elabbass في 7 سبتمبر 2009 · 1 رد · 1,601 مشاهدة · في الميكروكنترولر (المتحكم) و الدوائر الرقمية و المنطقية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

أعمل حالياً على ربط multiplexed seven segment display بخانتين

استخدم atmega16 بمذبذب داخلي 1 ميقا هيرتز

لإخراج كود الرقم المراد عرضه D منفذ

استخدم رجلين من منفذ C لتفعيل الخانة المراد الكتابه فيها

لاحظت أنه عند التشغيل يحدث تداخل في إظهار الخانتين وبالتجربة وجدت أن الرجلين المستخدمين للاختيار تتأثر احداهما بالأخري

تم تغيير هاتين الرجلين باخريين متباعدتين ولكن في هذه الحالة تتأثر جميع أرجل المنفذ

'code in bascom AVR
B = D / 10	'first digit
C = D Mod 10 '2nd digit
Portc.3 = 0  'disable digit 1
Portc.2 = 1  'enable digit 0
S = C
Gosub Convert 'subroutine to 

output the displayed number to 

port "D"
Waitms 5	
 Portc.2 = 0  'disable digit 0
Portc.3 = 1  'enable digit 1
S = B
Gosub Convert	'output the 

displayed number to port "D"
Waitms 5
Convert:
Select Case S
Case 0 : Portd = 1
Case 1 : Portd = 79
Case 2 : Portd = 18
Case 3 : Portd = 6
Case 4 : Portd = 76
Case 5 : Portd = 36
Case 6 : Portd = 32
Case 7 : Portd = 15
Case 8 : Portd = 0
Case 9 : Portd = 4
End Select
Return

وشكراً جزيلآ

تم تعديل هذه المشاركة بواسطة khalid elabbass في 7 سبتمبر 2009 في 09:44

#2

انا استخدم الاسمبلى فى البرمجة

لكن اريد انت اتكلم معك عن الهارد وير

هل جميع وحدات السفن سجمن تستخدم نفس المنفذ لنقل البيانات

اذا كان كذلك فستحتاج الى 8 bit register لكل منفذ والباقى سهل جدا فى هذه الحالة

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

مواضيع مشابهة