|
أخى
لم ارى الدائرة التى صممتها بعد ولكن من مجموع المشاركات استنتج أنك تريد التحكم فى عدد من الأجهزة قد لا يتعدى 10
إذن لماذا التحويل للحصول على عدد يصل إلى 99؟
لو العدد حتى 10 يمكن التعامل ببساطة و تحتاج إلى
Select case val
case=1
case=2
. . .
ولو حتى إلى 24 أيضا لكن هذه الطريقة تحتاج لديكودر لأنك بعد الحساب سيكون val به رقم ثنائى و إخراجه على البورت هو رقم ثنائى أى لا يصح توصيل الترانزيستورات و الريلاى بدون ديكودر يحول من ثنائى إلى مخارج منفصلة مثل 7445 BCD to 10 أو 4514 4bit to 16
|
الاستاذ الكريم اتمنى ان اكون قد فهمت سؤالك جيدا حتى تكون اجابتي كما تريد
بالنسبه لارسال الرقم فانا استخدم في دائرة اللاب فيو دالة appende array وذلك لتستقبل الارقام الثنائيه من ال boolen على حسب حالة الجهاز الحاليه وهي تضعها على شكل مصفوفه ثم تليها دالة boolen array لتضع الرقام على شكل متسلسل اي شكل 1100 وسوف يكون الرقم مكون من اربعه خانات ثنائيه وذلك استنادا على عدد الاجهزه المستخدمه للتحكم بها ثم تحولها الى ارقام عشريه واقصى رقم عشري مكون يتكون من خانتين فقط وهو 15 وذلك نسية لان 1111 تقابل العدد 15 عشري وتليها decimal integer string ويتم ادراج الرقم 2 اي عدد الخانات لايتجاوز 2 نسبة ل15 التي تم شرحها مسبقا ثم دالة concatenated string وتستخدم كدامج لدمج الاشاره / حتى تيبن نهاية الرقم اي عندما يصل الرقم منتهيا بهذه الاشاره عليك الارسال لدالة write حتى تقوم للارسال للبك
اي ان عدد الارقام المستخدمه 15عشري فقط ولا يصل الى 99 اتمنى ان اكون قد اجبت على سؤالك كما يجب واتمنى ان احصل على ملاحظتك سريعا