دورات هندسية

 

 

طلب مساعدة ضروري ياشباب

صفحة 3 من 4 الأولىالأولى 1 2 34 الأخيرةالأخيرة
النتائج 21 إلى 30 من 34
  1. [21]
    ماجد عباس محمد
    ماجد عباس محمد غير متواجد حالياً
    مشرف متميز


    تاريخ التسجيل: Sep 2006
    المشاركات: 5,226

    وسام مشرف متميز

    Thumbs Up
    Received: 151
    Given: 0
    اقتباس المشاركة الأصلية كتبت بواسطة نور الدين مولانا مشاهدة المشاركة
    بس نحن بنقدر نساوي برنامج ل pic16f877 بعد ما تقرا v1 و v2 تضرب القيمة وحتى معامل الطاقة يمكن حسابه من خلال البرنامج وبعدين عرض الناتج النهائي
    أخى
    مادام هذا يمكن انجازة بهذا المتحكم يبقى أن تستخدم قطعة ساعة الكترونية وهى ic لها 8 طرف تحسب الوقت بكريستال 32k واليوم والتاريخ وهى مستخدمة فى كل حاسب تحدد منها أول الشهر لتخزن القراءة الحالية وتطرح منها القراءة السابقة ثم ترسل الرسالة
    طبعا إما عن طريق الولوج على الانترنت لأحد المواقع المجانية لإرسال الرسائل أو استخدام شريحة هاتف و جهاز

    0 Not allowed!



  2. [22]
    نور الدين مولانا
    نور الدين مولانا غير متواجد حالياً
    عضو


    تاريخ التسجيل: Oct 2007
    المشاركات: 27
    Thumbs Up
    Received: 2
    Given: 0
    انا اسف كتير على هذا النقطاع بسبب ظروف قاهرة
    ياخ محمد اذا فيك ترسلي برنامج الضرب الخاص pic16f877 وبكون مشكور
    ويارتك تبقى معي على اتصال دائم يا اخ محمد
    وشكرا وثاني مرة بكرر اسفي على الانقطاع

    0 Not allowed!



  3. [23]
    محمدالقبالي
    محمدالقبالي غير متواجد حالياً
    مشرف متميز
    الصورة الرمزية محمدالقبالي


    تاريخ التسجيل: Sep 2007
    المشاركات: 893

    وسام مشرف متميز

    Thumbs Up
    Received: 28
    Given: 36

    Lightbulb اهلا بعودتك اخي نور الدين

    السلام عليكم

    كود:
     
    first you have to identify the following registers
    FIRST_NUM
    SECOND_NUM
    RESULT
    then you have to assigne the values of FIRST_NUM & SECOND_NUM
     
    ********* MAIN CODE *****;
    MULTI
     
    MOVF       RESULT,W
    ADDWF    SECOND_NUM,F
    DECFSZ   FIRST_NUM
    GOTO      MULTI
    RETURN
    ************************************;
    كود:
    مع تحياتي/ اخوك محمد القبالي


    اخي العزيز نورالدين ارجو ان تكون في تمام الصحه والعافيه ولقد كنت منتظرك بفارغ الصبر لسماع اخراخبار المشروع

    الكود المرفق لعمليه الضرب لرقمين بشرط ان الناتج يكون بطول اربعه بت يعني مايزيد عن FFh هل ينفع هذا الكود في برنامج ام ان هناك قيم اكبر من FFh ارجو الرد



    0 Not allowed!


    سبحان الله وبحمده -- سبحان الله العظيم


  4. [24]
    نور الدين مولانا
    نور الدين مولانا غير متواجد حالياً
    عضو


    تاريخ التسجيل: Oct 2007
    المشاركات: 27
    Thumbs Up
    Received: 2
    Given: 0
    مشكور كتير على هالاهتمام اللي اسعدني كتير
    والله يا صديقي بحتاج اكتر من 4 bits يعني اكبر من FFh
    وبدي اسالك
    مش بالضرب لازم يكون عندنا ازاحة قبل كل عملية جمع مشان نتحصل على الضرب الصحيح ؟

    0 Not allowed!



  5. [25]
    محمدالقبالي
    محمدالقبالي غير متواجد حالياً
    مشرف متميز
    الصورة الرمزية محمدالقبالي


    تاريخ التسجيل: Sep 2007
    المشاركات: 893

    وسام مشرف متميز

    Thumbs Up
    Received: 28
    Given: 36
    هناك اكثر من طريقه لتنفيذ عمليه الضرب منهاما هو بالازاحه والاخرى بالجمع يعني 5 ضرب 6 يساوي 5+5+5+5+5+5 ويساوي 30 وهذه اسهل من عمليه الازاحه والتي تاخذ كم كبير من التعليمات.

    انتظر الكود الثاني

    ملاحظه:
    يوجد هناك فحص قبل عمليه الضرب وهو اذا كان العدد المضروب فيه يساوي الصفر فان الناتج بشكل مباشر يساوي الصفر.

    0 Not allowed!


    سبحان الله وبحمده -- سبحان الله العظيم


  6. [26]
    نور الدين مولانا
    نور الدين مولانا غير متواجد حالياً
    عضو


    تاريخ التسجيل: Oct 2007
    المشاركات: 27
    Thumbs Up
    Received: 2
    Given: 0
    انا بالانتظار
    بس ياخي لعزيز مش هذه الطريقة تاخذ وقت بالحساب ولا هذا الوقت بيكون صغير بالنسبة ل pic يعني اذا ضربنا عددين كبار 230*250 لازم نجمع العدد 250 230 مرة ممكن ياثر على الوقت ولا نقدر نهمل هذا الوقت

    0 Not allowed!



  7. [27]
    محمدالقبالي
    محمدالقبالي غير متواجد حالياً
    مشرف متميز
    الصورة الرمزية محمدالقبالي


    تاريخ التسجيل: Sep 2007
    المشاركات: 893

    وسام مشرف متميز

    Thumbs Up
    Received: 28
    Given: 36

    سلام

    اخي نورالدين من المعروف ان المتحكم يشتغل بكريستاله اقل شيئ 4MHz يعني دوره تنفيذ التعليمه هي 1us فالتاخير في عمليه الضرب لن يؤثر على البرنامج نهايئا واذا انت خايف من التاخير ممكن تشغل المتحكم بكريستاله 8MHz يعني يكون اسرع.

    بالنسبه للكود :

    كود:
     
    MAIN:                                             ; the main code of the program
    MOVLW        D'150'                      ; the multiply number
    MOVWF        FIRST_NUM
    MOVWF        SECOND_NUM
    CALL             MULTI
    MOVF           LSD_TEMP,W
    MOVWF        LSD
    MOVF           MSD_TEMP,W
    MOVWF        MSD
    GOTO          END_MULTI             ; end multiply operation
     
    MULTI:                                            ; main loop of multi
    MOVF          LSD_TEMP,W 
    ADDWF       SECOND_NUM,W
    MOVWF      LSD_TEMP 
    BTFSC       STATUS,C                  ; is LSD_TEMP  > 256..carry bit set
    INCF           MSD_TEMP               ; if yes add 1 to MSD_TEMP 
    DECFSZ     FIRST_NUM               ; if no decraes 1 from FIRST_NUM
    GOTO        MULTI
    RETURN

    الفكره انه يتم حفظ الرقم في مسجلين منفصلين الاول LSD والثاني MSD يحيث انه كلما تجاوزت قيمه المسجل الاول 256 نقوم باضافه واحد الى المسجل الثاني ونستخدم في هذه العمليه المسجل STATUS وبالاخص البت C والتي تكون واحد اذا كان هناك في عمليه الجمع ناتج اكبر من 256.

    ملاحظه : القيمه الناتجه تكون بصيغه hex decimal ففي المثال السابق 150 ضرب 150 يساوي 22500 هذا بالنظام العشري ولكن بالنظام السادس عشر يساوي 57E4 فسيكون LSD = E4 و MSD= 57

    ارجو ان يكون الشرح واضح

    0 Not allowed!


    سبحان الله وبحمده -- سبحان الله العظيم


  8. [28]
    نور الدين مولانا
    نور الدين مولانا غير متواجد حالياً
    عضو


    تاريخ التسجيل: Oct 2007
    المشاركات: 27
    Thumbs Up
    Received: 2
    Given: 0
    شكرا كتير كتير كتير ياخ محمد
    الشرح واضح ومفهوم
    بس بدي اسالك ومعليش استحملني لاني عم تقل عليك
    هل pic تقرا السجلين مع بعض بحيث تقرا الناتج 57E4 مثلا
    ولا لازم نحن نكتب برنامج مشان تقراهم مع بعض

    0 Not allowed!



  9. [29]
    محمدالقبالي
    محمدالقبالي غير متواجد حالياً
    مشرف متميز
    الصورة الرمزية محمدالقبالي


    تاريخ التسجيل: Sep 2007
    المشاركات: 893

    وسام مشرف متميز

    Thumbs Up
    Received: 28
    Given: 36
    اسال وماتقلق

    لايستطيع المتحكم قراه مسجلين كمسجل واحد ولكن مثلا اذا اردنا عرض الرقم على شاشه عرض كرقم واحد وهذ المهم يمكن ذلك بارسال lsd ثم msd بشكل منفرد

    0 Not allowed!


    سبحان الله وبحمده -- سبحان الله العظيم


  10. [30]
    محمدالقبالي
    محمدالقبالي غير متواجد حالياً
    مشرف متميز
    الصورة الرمزية محمدالقبالي


    تاريخ التسجيل: Sep 2007
    المشاركات: 893

    وسام مشرف متميز

    Thumbs Up
    Received: 28
    Given: 36
    اخي نور الدين اين دائره عمل المشروع

    0 Not allowed!


    سبحان الله وبحمده -- سبحان الله العظيم


  
صفحة 3 من 4 الأولىالأولى 1 2 34 الأخيرةالأخيرة
الكلمات الدلالية لهذا الموضوع

عرض سحابة الكلمة الدلالية

RSS RSS 2.0 XML MAP HTML