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

أدوات الموضوع

الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 10-09-2012, 12:18 AM المشاركة 1   
افتراضي مساعدة: ارسال نص كبير من الكومبيوتر الى الميكرو سيريال بورت ؟ Twitter FaceBook Google+



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


منورين جميعا وبقالى كتير ماصدعتكمش

الموضوع باختصار مثل عنوان الموضوع بالظبط

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

كمثال عندى مصفوفة 32x32
=1024
اريد ان ارسل هذا الرقم من البيتات دفعة واحدة ..................
اقصى عدد يرسلة الكومبيوتر للبك هو حرفين فقط
الا فى حالة لو تم الارسال مع الكتابة send as typing
وحتى فى هذة الحالة يقوم بالارسال بمزاجة انت وحظك
===============================

ام تفضلون ال USB المشكلة فى اليو اس بى ليس لها شروحات مع الفجول بيسك 6 .
ولا يوجد فى المنتدى شروحات للتعامل معها .............
مع انى وجدت مكتة للتعامل مع اليو اس بى عن طريق vb6

لو تفيد اى احد او يستطيع ان يفيدنا ممكن ارفعها لة

ولا على اية اليكم الرابط

http://www.intel.com/intelpress/usb/...vboverview.htm




اعلانات

الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 666
نشاط [ funky112233 ]
قوة السمعة:93
قديم 10-09-2012, 12:56 AM المشاركة 2   
افتراضي


بسم الله الرحمن الرحيم

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

بالنسبة للمشكلة دى

من المعروف ان مفيش فى الالكترونيات ارسال 1024 بايت مرة واحدة هكذا
لاننا هكذا سوف نحتاج الكثير والكثير بل والكثير ههههههه من الاطراف

والحل اكيد انت عارفة

ولا ااقولك علي اية اليك الحل ههههههههههههههههه

طبعا من خلال جملة For
وهو عمل تكرار للبيانات على السرعه الكاملة الممكنة للارسال
وعلى فكرة بتكون سريعه جدا جدا وبذات انك بتتعامل مع كمبيوتر
يعنى الى هيوقف السرعه بتاعتك هو الميكرو وبردو هتكون سريعه جدا

وبكدة تقدر ترسل بيانات كثيرة جدا فى اجزاء من المللى من الثانية
وزى التعامل مع الشاشات الصورة عبارة عن 1024 بايت مثلا فى بعض الشاشات
وبيتم ارسالهم فى وقت قليل جدا
لدرجة انك ممكن تعرض صور كثير جدا ورا بعض يعنى فديو وتخيل السرعه المطلوبة بقى

فالحل هو تكرار امر الارسال على حسب العدد الى انت عايزة

كود:
for(x=0;x<1024;x++){ss[x]}
ss هنا هى المصفوفة
دة شكل الكود فى الميكروسى لكن فى الفجول بيسك مش فاكر بيتكتب ازاى

وممكن تخلى 1024 متغير مثلا بتكتب انت فية عدد خانات المصفوفة

وفى الاستقبال
بردوة من خلال جملة For وكل مرة تحفظ فى خانة شكل

كود:
for(i=0;i<1024;i++){dd[i] = uart_read;}
هنا dd هى المصفوفة الى هتحفظ فيها

وبردوة ممكن تخلى 1024 متغير بياخد قيمتة من اول حاجة بترسلها

يعنى الاول ترسل عدد الخانات وتحفظة فى المتغير دة بتاع التكرار
وبعد كدا تبدء ترسل بياناتك عادى

وبالتاكيد هناك طرق اخرى ولكن هذه الافضل ان شاء الله

بالتوفيق يا بشمهندس
واذا كانت هذه الطريقة لا تنفع فاخبرنى حتى نتعاون ايضا ان شاء الله

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

الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 10-09-2012, 01:15 AM المشاركة 3   
yel


وعليكم السلام ورحمة الله وبركاتة
انا عارف والله انك اول من سوف ترد بارك الله فيك مهندسنا الغالى محمد .



انا عارف طبعا ان الارسال بيتم بايت تلو الاخر .

ولكن معلوماتى فى التسلسلى والاتصال باليو اس بى للاسف ضعيفة جدا لانها ماكانت من ضمن اهتماماتى .



احييك لانك (استشفيت) المقصود من الموضوع
هو فعلا نقل صورة كاملة من برنامج فجول او c++
من الكومبيوتر الى الشاشة LCD او ماتركس .


الحلقة الناقصة عندى
هى كيفية تتابع الارسال دون تدخل منى
اريد ان اضغط على ارسال فيتم الارسال تلو الاخر
وطبعا نعلم ان السرعة كبيرة .........



لتقريب الفكرة :
المصفوفة ممكن تكون عبارة عن متغيرات
ولكن ماهى طريقة تغير بايتات المصفوفة واحد تلو الاخر ؟؟؟؟


بصرف النظر طبعا عن الرقم الذى قمت انا بوضعة سابقا لان الرقم ممكن يزيد او ينقص .

كمثال
كود:
  char x{8}{8}={.................}
طبعا بصرف النظر ايضا عن تكملة الكود
ولكنة طبعا سوف يعطينا اعمدة وسطور 8اعمدة فى 8 سطور


كيف اقوم بجعل السيريال بورت يقوم بتغير قيمة
x[0]

وبعدها
x[1]
وبعدها
x[2]


وهكذا
دون تدخل
اى ارسال 64 دفعة واحدة
========================
وهناك مشكلة اخرى
عندما اقوم باستخدام الدالة usrt داخل الكود البرنامج يتوقف عندها ولا يكمل لباقى الاوامر ؟؟؟؟
==============================


احتمال مكونش قادر اوصل الفكرة او الحلقة المفقودة عندى
وياريت تستحملنى هههههههههههههههههه


التعديل الأخير تم بواسطة : ناصراحمد2 بتاريخ 10-09-2012 الساعة 03:07 AM

الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 10-09-2012, 01:32 AM المشاركة 4   
افتراضي


اعتقد انى بدات افهم مقصدك من ردك السابق ........


هل تقصد :


كود:
if (Usart_Data_Ready()) {
x[0]=Usart_Read();
}
if (Usart_Data_Ready()) {
x[1]=UART1_Read();


وهكذا ؟؟


وهل فى الامر الثانى لن تتاثر x[0] ?????

طبعا مع ملاحظة انى افهم قصدك باستخدام For


الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 666
نشاط [ funky112233 ]
قوة السمعة:93
قديم 10-09-2012, 02:20 AM المشاركة 5   
افتراضي


بسم الله الرحمن الرحيم

الله ينور عليك هو دة مقصدى
وطبعا لاء مفيش امر هيأثر على التانى

ال
كود:
x[0]
دة موضع و
كود:
x[1]
ودة موضع تانى فاملهومش دعوة بعض

وطبعا بدل ما تكتب الامر زى مانت كاتبة فوق كدة للتوضيح هتحطة فى جملة for واظن انت قلت فهمت المقصود منها وهو الاختصار فقط

وراجع كلامى تانى هتلاقى كل الى انت سئلت عنة ان شاء الله

وعموما انت عارف ان المصفوفة ترتيب خانات
وهكذا بترسل خانة خانة

وزى ما قولتلك بالنسبة لتغير الرقم 1024
فانا قلتلك حط مكانة متغير وقم بارسالة اول شىء علشان تعرف هتكرر جملة فور فى الاسقبال كام مرة علشان تقدرتستقبل خانات المصفوفة كاملة بدون زيادة او نقصان على حسب عدد خانتها فى كل مرة

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

وبالنسبة لموضوع ان الميكرو بيهنج عند كتابة الدالةuart
فانا شايف انها مكتوبة غلط فى s زيادة
يمكن يكون دة السبب
بس المفروض ان الميكروسى تديك انظار ان فى حرف غلط

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


الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 10-09-2012, 02:51 AM المشاركة 6   
افتراضي


تسلم ايدك يابشمهندس


بالنسبة ل s الذيادة هى ليست زيادة ولا حاجة انما هى فقط الفرق بين الميكروسى والميكرو برو
فى الميكرو سى لازم نكتب usart اما فى الميكرو برو نكتبها UART1


هو فعلا المعلومة وصلت من اول رد تفضلت بة
لكن احتمال تكون كانت معصلجة شوية .

شكرا وبارك الله فيك

===============================
تبقى لدينا مشكلة خارج الموضوع
وهى كيفية صنع برنامج يقوم بتحويل الصور الى هكس بشكل متتابع
اتمنى من الاخوة المتخصصين فى الفجول والسى شارب يفيدونا فية

وطبعا اخى محمد انا عارف ان كل الفكرة وصلتك هههههههههه

وياريت نحاول كل واحد من اتجاة لعلنا نصل لنتيجة باذن الله

عندى خلفية بسيطة فى الvb6 راح احاول فى الموضوع


وهذا الرابط لمن يريد اخذ فكرة عن الفجول بيسك 6

http://vb4arab.com/vb/forumdisplay.php?f=4






.


الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 666
نشاط [ funky112233 ]
قوة السمعة:93
قديم 10-09-2012, 02:40 PM المشاركة 7   
افتراضي


بسم الله الرحمن الرحيم

اكيد طبعا ياريت لو نعرف ازاى نعمل برنامج تحويل للصور مدمج مع البرنامج بتاعنا

وان شاء الله هنبحث عن الطريقة

لكن حاليا فى برامج جاهزة للتحويل

تقضل هذا البرنامج رائع

http://www.4shared.com/zip/wGDu4jrc/Image2Code-11.html?

ولكن يجب ان تكون الصورة بصيغة Bitmap // .bmp

وهو هيحولهالك لكود

دة شكل البرنامج اول ما هتفتحوة



العلامة السمرا دة الزرار الى هدوس علية علشان تفتح وتجيب الصورة

وبعد متختار الصورة



الاسمر دى الصورة الى انت اخترتها

والاحمر الحجات دى ممكن تقلب فى الصورة وكدة

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

واول ما هتدوس علية هيطلعلك ملف فية بيانات الصورة زى كدة




وهناك برامج اخرى كثيرة فقط اكتب فى جوجل

Bitmap to code


الصورة الرمزية ناصراحمد2
ناصراحمد2
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: EGYPT
المشاركات: 1,334
نشاط [ ناصراحمد2 ]
قوة السمعة:98
قديم 10-09-2012, 06:59 PM المشاركة 8   
افتراضي


ممتااااااااااز
والاجمل انة برنامج مجانى


والاجمل اكتر انة يدعم اكثر من لغة برمجية وخاصة السى .


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

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025