PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : توابع cmsis مورد نیاز برای ذخیره اطلاعات بر روی sd-card



a.moghadam
14-10-2012, 02:08
با سلام به همه دوستان
من یه کارت sd به هدربورد lpc1768 وصل کردم و میخوام یه سری اطلاعات روش ذخیره کنم
برای نوشتن برنامه مشکل دارم
اگر کسی pdf آموزشی یا هر چیز دیگه داره که توابع cmsis ویه سری توضیحات درباره نوشتن برنامه
داره لطف کنه وبرام بذاره
باتشکر

a.moghadam
16-10-2012, 03:51
سلام مجدد
من این توابع رو پیدا کردم

You can see links before reply

ولی مثلا برای تابع write sector به جای پارامتراش متوجه نمیشم باید چی گذاشت؟؟

You can see links before reply

لطفا کمک کنیدcry::

mrm
16-10-2012, 14:31
پارامتر اول : Sect : شماره اون سکتوری که میخواید اطلاعات داخلش نوشته بشه
پارامتر دوم : buf : اشاره گری (یا اسم ارایه ) که اطلاعاتی که میخواید داخل اس دی بنویسید
پارامتر سوم: cnt : تعداد سکتوری که میخواید اطلاعات نوشته بشه
فرض کنید میخواید 1024 بایت رو در سکتور 5 و6 بنویسید اطلاعات به این صورت هست
در صورتی که مقدار برگشتی true بود یعنی اطلاعات درست نوشته شده

unsigned long pSector;
unsigned char data[1024];

pSector=5;
memcpy(&data[0],/*somewhere in memory*/,1024);

if(SD_WriteSector(pSector,&data[0],2))
printf("done");
else
printf("error writing to SD");

a.moghadam
16-10-2012, 17:59
ممنون از پاسخ شما mrm
میشه توضیح بدید memcpy چیه؟؟ وچرا SD BOOL در ابتدای تابع writesector نوشته نشده؟؟
برای تقسیم بندی فضای حافظه sd از چه تابعی باید استفاده کرد؟؟این کار به حجم حافظه sd هم بستگی دارد؟؟
از این تابعwriteSector میشه برای ذخیره یه سری سیگنال آنالوگ که روی یکی از پایه های میکرو به دیجیتال تبدیل شدن استفاده کرد؟؟
لطفا توضیح بدید

mrm
17-10-2012, 11:41
memcpy یک ارایه رو از حافظه کپی میکنه در یک ارایه دیگه.
SD_BOOL فقط در زمان تعریف تابع باید نوشته بشه ( باید توابع رو در سی بلد باشید ) و نوع مقدار برگشتی از تابع ، رو مشخص میکنه.
میتونید از این دستور برای ذخیره نتیجه تبدیل انالوگ به دیجیتال استفاده کنید.
ولی فقط برای میکرو قابل خوندن هست و اگر اون رو بزنید به کامپیوتر اطلاعات به راحتی قابل خوندن نیست.
برا اینکه بتونید اون رو هم در کامپیوتر ببینید باید ار FAT استفاده کنید.

a.moghadam
18-10-2012, 02:57
باز هم ممنون از پاسختون
خیلی سخت شد:unh:
راستش من کارهای ابتدایی با arm انجام دادم( در حد روشن و خاموش کردن یه led)
fat چیه؟؟
اگه برنامه نمونه ای داشته باشید که بتونم ازش کمک بگیرم شاید راه گشا باشه!

a.moghadam
20-10-2012, 03:43
با سلام دوباره
کسی هدرفایلی که این توابع رو ساپورت کنه داره ؟؟؟
اگه کسی داره لطفا برام بذاره
ممنون میشم

a.moghadam
13-11-2012, 01:54
سلام دوستان
برای تنظیمات اولیه استفاده از sd card بجز تابع () SD_Init از تابع دیگه ای باید استفاده کرد؟؟؟
اگه نخوام از فرمت fat استفاده کنم یعنی از همین توابع معمول مثل SD_WriteSector استفاده کنم،اطلاعات با چه فرمتی در sd ذخیره میشوند؟؟؟
وبا نرم افزار خاصی مثل matlab میشه فایل ذخیره شده روی sd رو خوند؟؟؟
لطفا کمک کنید