قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

   

الصورة الرمزية younescdse
younescdse
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2009
المشاركات: 88
نشاط [ younescdse ]
قوة السمعة:
قديم 28-05-2016, 10:19 PM المشاركة 9   
افتراضي



السلام عليكم
اخى الكريم
جرب هذا الكود واخبرنى هل هذا هو طلبك
كود:
char x;
const char gg[]={192,249,164,176,153,146,130,248,128,144};
void main() 
{
trisa=0;
trisb=0;
porta=1;
while(1)
{
    for(x=0;x<10;x++)
                     {
                       if(x%2)
                               porta=porta>>1;
                       else
                               porta=porta<<1;
                
                       portb=gg[x];
                       delay_ms(1000);
                     }
}
}
[IMG][/IMG]
وشكرا
شكرا لك سيتم فهم وتحليل البرنامج لان فيه سطور لم ادرسها من قبل

اعلانات

magdy_3
:: مهندس متميز ::
تاريخ التسجيل: Aug 2006
الدولة: Philippines
المشاركات: 339
نشاط [ magdy_3 ]
قوة السمعة:
قديم 28-05-2016, 11:18 PM المشاركة 10   
افتراضي


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

اخى الكريم اكتب السطور الغامضة لك وباذن الله اشرحالك

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية younescdse
younescdse
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2009
المشاركات: 88
نشاط [ younescdse ]
قوة السمعة:
قديم 29-05-2016, 12:47 AM المشاركة 11   
افتراضي


السلام عليكم

اخى الكريم اكتب السطور الغامضة لك وباذن الله اشرحالك
المخرج A1 كما اننا لم نربطه بالسفن !!!!

const char gg[]={192,249,164,176,153,146,130,248,128,144} !!!!

if(x%2) !!!


magdy_3
:: مهندس متميز ::
تاريخ التسجيل: Aug 2006
الدولة: Philippines
المشاركات: 339
نشاط [ magdy_3 ]
قوة السمعة:
قديم 31-05-2016, 02:19 AM المشاركة 12   
افتراضي


[quote]
المخرج A1 كما اننا لم نربطه بالسفن !!!!

const char gg[]={192,249,164,176,153,146,130,248,128,144} !!!!

if(x%2) !!![/QUOTE
السلام عليكم
اخى السوال الاول مش فاهمه
والسوال الثانى دى مصفوفة بها عناصر تمثل شكل الارقام على السفن سجما
بمعنى ان العنصر صفر وهو قيمته 192 هى القيمة التى تجعل بورت B يشكل الرقم صفر على السفن سيجما وهكّذا
ارجو ان يكون هذل الامر واضح
والسوال الثالث
x%2 معناها الباقى قسمة المتغير X على 2
وده بستفاد منه اذا كان هناك باقى للقسمة اذن قيمة X فردية
واذا لم يكن هناك باقى اذن قيمة X زوجى


الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,682
نشاط [ عبدالله حجازى ]
قوة السمعة:
قديم 31-05-2016, 05:48 AM المشاركة 13   
افتراضي


السلام عليكم

اخى الكريم اكتب السطور الغامضة لك وباذن الله اشرحالك


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

اولا شكرااا لك اخى مجدى على الكود ...
انا فاهم انك استخدمة امر const عشان تبقى المصفوفه سابتة ولا تحجز مكان من الرامات ..

بصراحة انا نفسى افهم طريقه الحسابات اللى انت مستخدمها فى المصفوفه دى
كود:
 char x;
const char gg[]={192,249,164,176,153,146,130,248,128,144};
انت وضعت الأرقام دى ازاى يعنى ايه الحسبه المستخدمة ...

وشكرااا لك


magdy_3
:: مهندس متميز ::
تاريخ التسجيل: Aug 2006
الدولة: Philippines
المشاركات: 339
نشاط [ magdy_3 ]
قوة السمعة:
قديم 31-05-2016, 09:20 PM المشاركة 14   
افتراضي


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

اولا شكرااا لك اخى مجدى على الكود ...
انا فاهم انك استخدمة امر const عشان تبقى المصفوفه سابتة ولا تحجز مكان من الرامات ..

بصراحة انا نفسى افهم طريقه الحسابات اللى انت مستخدمها فى المصفوفه دى
كود:
 char x;
const char gg[]={192,249,164,176,153,146,130,248,128,144};
انت وضعت الأرقام دى ازاى يعنى ايه الحسبه المستخدمة ...

وشكرااا لك
السلام عليكم
اخى العزيز الامر سهل
ناخذ مثلا الرقم 0 لكى يظهر هذا الرقم لابد ان تعمل الليدات A,B,C,D,E,F ولا يعمل الليد G اذن الكود هو 0bx0111111
x هنا معناها لايهم سواء 1 ام 0 لانى لم استخدمها
وهذا فى حالة كانت السفن سجما كومن كاثود
وفى حالة كانت كومن انود سيصبح الكود بلعكس اى 0bx1000000
وهذه هى الحالة التى نعمل بها فاذا حولنا الرقم 0b11000000 الى عشري
هيكون 192 وهى قيمة العنصر 0 فى المصفوفة gg
و اذا التزمت بتوصيل كما فى الصورة هتلاقى فى برنامج مايكرو سي فى علامة 7 فى شريط المهام اضغط عليها وشكل الرقم الى تريده
وسوف يعطيك الرقم سواء كانت كومن انود او كومن كاثود


التعديل الأخير تم بواسطة : magdy_3 بتاريخ 31-05-2016 الساعة 09:36 PM

الصورة الرمزية younescdse
younescdse
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2009
المشاركات: 88
نشاط [ younescdse ]
قوة السمعة:
قديم 03-06-2016, 10:22 AM المشاركة 15   
افتراضي


السلام عليكم
اخى العزيز الامر سهل
ناخذ مثلا الرقم 0 لكى يظهر هذا الرقم لابد ان تعمل الليدات A,B,C,D,E,F ولا يعمل الليد G اذن الكود هو 0bx0111111
x هنا معناها لايهم سواء 1 ام 0 لانى لم استخدمها
وهذا فى حالة كانت السفن سجما كومن كاثود
وفى حالة كانت كومن انود سيصبح الكود بلعكس اى 0bx1000000
وهذه هى الحالة التى نعمل بها فاذا حولنا الرقم 0b11000000 الى عشري
هيكون 192 وهى قيمة العنصر 0 فى المصفوفة gg
و اذا التزمت بتوصيل كما فى الصورة هتلاقى فى برنامج مايكرو سي فى علامة 7 فى شريط المهام اضغط عليها وشكل الرقم الى تريده
وسوف يعطيك الرقم سواء كانت كومن انود او كومن كاثود
شكرا لك فهمت الكثير من ردك هذا


الصورة الرمزية younescdse
younescdse
:: مهندس متواجد ::
تاريخ التسجيل: Sep 2009
المشاركات: 88
نشاط [ younescdse ]
قوة السمعة:
قديم 03-06-2016, 10:58 AM المشاركة 16   
افتراضي


بارك الله فيك magdy_3

فهمت كل شيئ تمام
بالنسبة للسؤال الاول PORTA=1 اي 0B00000001 يعني تشغيل السفن الاولى
وبالازاحة الى اليسار تنطفئ الاولى ويتم تشغيل الثانية
وهكذا
باارك الله فيك وزادك الله علما الى علمك



الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 07:44 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)