ساعة رقمية باستخدام الدوائر المنطقية


(هاني الشطرات) #1

[CENTER][B][FONT=Arial Black][COLOR=DarkRed][SIZE=5]بسم الله الرحمن الرحيم

[/size][/color][/font]الحمد لله رب العالمين، والصلاة والسلام على أشرف الخلق والمرسلين، نبينا محمد، وعلى آله وصحبه أجمعين، أما بعد:
أقدم لكم - اليوم- هذا المشروع الجميل في مادة (Digital Systems)، وقد كان هذا المشروع عبارة عن ساعة رقمية باستخدام الدوائر المنطقية المختلفة، مثل:
AND، OR، MUX، Flip-Flops، والعديد من هذه الأمور المفيدة والمهمة في حياتنا اليومية المختلفة.
[FONT=Arial Black][COLOR=DarkRed][SIZE=5]وقد قمتُ بعمل هذه التجربة أنا وصديق لي كمشروع ختامي لمختبر المادة، وكان النجاح حليفنا في هذا، وقد استعملنا في تصميم هذه الساعة برنامج LOGISIM وقد قمت برفع هذا البرنامج على المنتدى، وكل من يحب أن يجرب ذلك فسأضع لكم تصميم الدارة الذي قمنا بعمله ويمكنكم تشغيل التصميم من خلال ذلك البرنامج.

[/size][/color][/font][FONT=Arial Black][COLOR=DarkRed][SIZE=5]وإليكم التفصيل:

[/size][/color][/font]الصورة التالية توضح الدارة المنطقية العامة للساعة:
[FONT=Arial Black][COLOR=DarkRed][SIZE=5]

فكما تلاحظون من خلال الصورة السابقة أن هذه الدارة تحتوي على عدة صناديق وكل صندوق مظلل بمستطيل أصفر، وهذه الصناديق عبارة عن عدادات ( Counters) لكل من الثواني والدقائق والساعات.
والصندوق الأول والثاني-من جهة اليسار- لهما نفس الدارة، لأن الدقيقة تحتوي 60 ثانية، والساعة تحتوي على 60 دقيقة .

وإذا أخذنا الصندوق الأصفر الأيسر فهو عبارة عن عداد للثواني يقوم بعدِّ 60 ثانية ( 0-59) ثم يقوم بزيادة عداد الدقائق (الصندوق الأصفر الأوسط) بواحد، ثم يقوم الصندوق الأوسط بعدِّ 60 دقيقة (0-59) ثم يقوم بزيادة عداد الساعات (الصندوق الأصفر الأيمن) بواحد 1، ثم يقوم الصندوق الأصفر الأيمن (صندوق الساعات) بعد 24 ساعة (نظام جرينيتش)، ثم بعد ذلك يعيد العد من جديد لبداية يوم جديد.

وإذا لاحظتم في الصندوق الأصفر الأيسر والأوسط، فإن كل صندوق يحتوي على عدادين: العداد الأول (الصندوق 0-9) هو لعدّ خانة الآحاد من 0-9 وهو ينتج لنا 4 Bits وهو ما يسمى في (Digital Systems) بنظام BCD ( Binary Coded Desimal). والصندوق (0-5) وهو لعد خانة العشرات وهو ينتج لنا 3 Bits لأن العد هنا من 0-5 فهذا كاف للعد من 0-5. وهو ما نحتاجه للعد من 0-59.

وإليكم الدرة الداخلية التي تفصل صندوق(0-9):

وإليكم الدارة الداخلية لصندوق(0-5):


ومما يميز هذه الساعة أنك تستطيع أن تعايرها، كالساعات العادية، حيث أنك تقوم بمعايرة الساعة مثلاً ( 1:40:30)، وتبدأ الساعة بالعد من هذا الوقت.

وكانت الفكرة هي ساعة رقمية مع منبه، [/size][/color][/font]وبما أن الوقت لم يسعفنا لم نستطع إكمال دارة المنبه، فعملنا فقط الساعة، فهل هناك من يتبرع ويكمل لنا دارة المنبه؟!!!
فأنا أنتظر ذلك من أعضاء المنتدى!!!

وقد قمت برفع ملف فيديو فيه تصوير للمشروع وفحص للساعة والعدادات على اليوتيوب، ولكن اعذروني فالتصوير غير واضح بشكل ممتاز، وها هو الرابط:
http://www.youtube.com/watch?v=OrtG2tcPypY
[FONT=Arial Black][COLOR=DarkRed][SIZE=5]
وستجدون في المرفقات تصميم الدارة باستخدام برنامج LOGISIM ، فيمكنكم تحميله ومن ثم تجريبه من خلال البرنامج.

مع تمنياتي لجميع أعضاء المنتدى بالتوفيق والنجاح، وجزاكم الله خيراً

والسلام عليكم ورحمة الله وبركاته
[/size][/color][/font][/b] [/center]


#2

مجهود رائع
ولكن هل برنامج LOGISIM موجود فى المنتدى ؟


(هاني الشطرات) #3

شكراً أستاذ أحمد، وجزاك الله خيراً على المرور

البرنامج موجود في مرفقات المشاركة هذه:

http://www.almohandes.org/vb/showthread.php?t=50691


#4

جزاك الله خيرا سأقوم بالتجربة


#5

مهندس هانى كيف يمكننا تشغيل البرنامج
هل فقط بالضغط على المذبذب ؟


(هاني الشطرات) #6

السلام عليكم أستاذ أحمد، وأعتذر عن التأخير في الرد، ها هي طريقة التشغيل:

1- نقوم بتشغيل البرنامج، ومن ثم بعد ذلك فتح الدارة (التصميم).

2- ثم نقوم بتعديل قيم أزرار Edit (1,2,3 وجعلها (1)، وهذا معناه أن أسمح للدارة بأن تأخذ القيم الابتدائية التي ستبدأ من عندها. ثم أختار القيم التي أريدها من خلال الأزرار التي في الأسفل، وأجعل قيمة Enable تساوي (1)، وهذا يعني السماح للدارة بأن تقبل القيم والسماح للدارة بالعمل. والقيم التي اخترتها هي (22:59:45) كما هو موضح في الصورة.

3- ثم نقوم بعدها باختيار قيم Frequency التي ستحدد الفترة التي ستتغير فيها القيم، وهنا اخترنا القيمة (2) Hz لتتغير القيم كل ثانية.

4- ثم نختار الأمر الذي سيقوم بعملية Simulation لهذه الدارة (التصميم) وستلاحظ بعدها بدأ تغير Outpus التي تخص الدارة، كما هو موضح في الصورة.

4- وأخيراً نقوم بإغلاق المفاتيح Edit وجعل القيم فيها (0). وبعد 25 ثانية ستلاحظون أن قيم الدقائق ستصبح ( 000 0000). وتزيد قيمة عداد الساعات بواحد، وستظل العملية جارية. حتى يتم إيقاف البرنامج أو جعل قيمة Enable تساوي (0).

أرجو أن تكون قد تمت الاستفادة من هذا المشروع، وأي سؤال حول هذه المادة فنحن في أتم الاستعداد -إن شاء الله- لذلك.

والسلام عليكم ورحمة الله


#7

شكرا على المساعدة مهندس هانى وتم تجربة الدائرة وتعمل جيدا


(أبو أنس المصري) #8

ربنا يوفقك يا هندسة موضوع رائع

يبدو أننا وجدنا مهندس تحكم يساعدنا في مشاريعنا التي كنا نأمل أن نبدأ فيها


(هاني الشطرات) #9

شكراً أستاذ أبو أنس، وجزاكم الله خيراً على المرور، وأنا -إن شاء الله- جاهز لأي مساعدة

(محمد حمدى ناصف) #10

جزاك الله خيرا


(othman-m) #11

جزاكم الله خيراً


(system) #12

السلام عليكم الصور الخاصة بالمشروع مش بتفتح معايا فممكن حد يساعدني


(اميره سامح) #13

فكره جميله جدااااااااااااااااااا