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

   

الصورة الرمزية mohatvnet
mohatvnet
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
الدولة: https://t.me/pump_upp
المشاركات: 958
نشاط [ mohatvnet ]
قوة السمعة:
قديم 27-05-2012, 01:57 PM المشاركة 9   
افتراضي



اخي الكريم semmoor الكود الدي رفعته يحتوي على مجموعة من الاخطاء فهل ممكن ان تصلحها لكي اعمل برنامجي الخاص مع تطبيقات اخرى

وما دور هده تعليمة #include <built_in.h> لم يتم شرحها

اعلانات

الصورة الرمزية Semmoor
Semmoor
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
المشاركات: 300
نشاط [ Semmoor ]
قوة السمعة:
قديم 28-05-2012, 08:18 PM المشاركة 10   
افتراضي


اخي الكريم semmoor الكود الدي رفعته يحتوي على مجموعة من الاخطاء فهل ممكن ان تصلحها لكي اعمل برنامجي الخاص مع تطبيقات اخرى

وما دور هده تعليمة #include <built_in.h> لم يتم شرحها


اخي الكريم الكود اللي رفعته مافيه شي يعني جربته مع الدائرة واشتغل تمام وايضا ارفقت صورة للتأكيد.

اما بالنسبة include builtin مو شرط تكون موجودة امسحها وضيفتا تقوم ببعض الروتينات الداخلية في المايكروسي على حسب مافهمته!!

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

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 03-09-2013, 05:01 AM المشاركة 11   
افتراضي


;"char filename[] = "MYFILE55TXT
اعلان عن متغير عبارة عن مصفوفة لتخزين اسم الملف , TXT عبارة عن نوع صيغة الملف ماله دخل في الاسم الملف.

;"...unsigned char txt[] = "This is the added data
اعلان عن متغير ايضا مصفوفة لتخزين الكتابة اللي نبي نضيفه في الملف اللي راح يتم انشائه داخل الميموري.

;unsigned short character
اعلان عن متغير لقرأءة محتويات الملف, يعني يقوم بقراءة البيانات اللي تم كتابتها في الملف.

;unsigned long file_size, i
المتغير file_size راح يخزن حجم الملف اللي تم انشاؤه لاننا عندما ننشأ ملف ونريد قراءة محتوياته يجب علينا اولا تحديد حجمه, اما i راح يستخدم كعداد في اللوب عند قراءة البيانات باستمرار.

....................... الان داخل main function.......................................


;(Usart_Init(2400
راح نستخدم السريال بورت والبودرايت اي سرعة انتقال البيانات راح تكون 2400, راح نستخدم السريال بورت عشان نعرض البيانات المكتوبة داخل الملف, طبعا في البروتس شي اسمه virtual terminal لعرض البيانات بواسطة السريال بورت.


...هذه الأوامر الثلاثة في الاسفل مهمة يجب كتابتها عند استخدام الميموري في المايكروسي....
Spi_Init_Advanced(MASTER_OSC_DIV16,DATA_SAMPLE_MID DLE,
CLK_IDLE_LOW, LOW_2_HIGH);

هذا الامر يقوم بإخبار لغة المايكروسي باننا سنستخدم الميموري.


;((while(Mmc_Init(&PORTC,2)
يقوم بتعريف المنفذ port c بانه المنفذ اللي موصول فيه chip select او اختصار CS حق الميموري, الامر يقوم بتحديد عنوان الباس حق الميموري.

;((while(Mmc_Fat_Init(&PORTC,2
يقوم بتعريف FAT file system , طبعا عند التعامل مع الملفات في الميموري راح نستخدم نظام FAT في انشاء الملفات.


;(Mmc_Fat_Assign(&filename,0x80
يقوم بانشاء الملف كما تلاحظ قمنا بارسال المتغير اللي يحمل اسم الملف filename,
0x80 يعني اذا لم يكن الملف اصلا موجود, باختصار انشاء ملف بالاسم المحدد اذا لم يكن موجود.


;()Mmc_Fat_Rewrite
يقوم بعمل فورمات للملف اللي تم انشاؤه عشان نبدا نكتب بعض البيانات من جديد.


;(Mmc_Fat_Write("This is MYFILE.TXT.",19
هذا الامر يقوم بكتابة النص الموجود داخل علامة التنصيص , لاحظ مهم جدا عند الانتهاء من كتابة البيانات يجب كتابة حجم النص المكتوب رقما.


;()Mmc_Fat_Append
يقوم باعلام لغة المايكروسي باننا نريد اضافة بعض البيانات في الملف اللي تم انشاؤه , يعني راح يكون تكمله بعد النص اللي تم كتابته مؤخرا.


;((Mmc_Fat_Write(txt,sizeof(txt
الان هذا هو النص اللي نريد اضافته txt كما تعلم بان txt عبارة عن مصفوفة تحمل بعض البيانات تم الاعلان عنه في الاعلى,
وكما قلت بان بعد اضافة اي نص يجب علينا ذكر حجمه بس دي المرة راح نستخدم طريق ثانية , الامر sizeof يتيح لنا ذلك,

طبعا يتم كتابة الامر sizeof وداخله نقوم بكتابة المتغير اللي يحمل النص ,
اي ان الامر sizeof يقوم بكتابة حجم النص المكتوب اللي هو txt, كما تعلمون ان احيانا يكون صعب حساب كم حرف تم كتابته!!؟؟
لهذا نحتاج الامر sizeof .




;(Mmc_Fat_Reset(&file_size
يقوم بتجهيز الملف لعملية القراءة وايضا يقوم بكتابة حجم الملف اللي تم تهيئته في المتغيرfile_size , لاننا بحاجة لحجم الملف لعملية القراءة.

............... داخل الحلقة لوب لعملية القراءة........................
(++for(i=0; i<file_size; i
حلقة تدوم باستمرار على حسب حجم الملف في file_size.


;(Mmc_Fat_Read(&character
يقوم بقراءة محتويات الملف وتخزينه في المتغير character.


;(Usart_Write(character
يقوم بارسال البيانات التي تم قراءته الى السريال بورت.

<<<<<<<<<<<<<الحمدلله>>>>>>>>>>>>>>>>>



شباب لامانع لدي من نشر الموضوع لأي موقع للفائده.
ارجو من الكل الاستفادة.
سلام..........
سلام عليكم
اخي كريم
توجد تعاريف انت كتبتها تخص Mmc
مثلا
كود:
;(Mmc_Fat_Read(&character
وغيرها لم اجدها في مكتبه مايكروسي
هل هذه الاوامر ثابته ام انها موجوده في مايكروسي


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 03-09-2013, 05:40 AM المشاركة 12   
افتراضي


وجدت تعاريف في مكتبه مايكروسي
تحت عنوان multie media card library


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 08-11-2013, 06:07 PM المشاركة 13   
افتراضي


سلام عليكم
لماذا يتم أستخدام uart في الارسال ولم يستخدم SPI مع علم ميموري تتعامل مع spi


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 09-11-2013, 11:36 AM المشاركة 14   
افتراضي


أخواني هل تستخدم ميموري sd-card فقط في عائله 18f بالنسبه للبك وماذا عن العائله 16f


hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 585
نشاط [ hamadalla31 ]
قوة السمعة:
قديم 26-04-2014, 12:27 PM المشاركة 15   
افتراضي


موضوع متميز ابرك الله لك
نفس سؤال اخي حسن هل يمكن ان يعمل علي البيك 16F


الصورة الرمزية Semmoor
Semmoor
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
المشاركات: 300
نشاط [ Semmoor ]
قوة السمعة:
قديم 26-04-2014, 07:54 PM المشاركة 16   
افتراضي


لا أظن انه يمكنك استخدام بيك من عائلة 16F لان اوامر ذاكرة الــ SD CARD تاخذ مساحة اكبر على حسب مافهمت.

قد جربت من زمان ولم يعمل معي لهذا استخدمت بيك من عائلة 18F.

لو تلاحظ وش مكتوب في مكتبة الذاكرة في الميكروسي :

MMC FAT 16 Library works with PIC18 family only

اي ان المكتبة لاتعمل الا مع عائلة PIC18



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