باسلام
به در خواست چند تا از دوستان این تایپ رو زدم تا کار با SDرو
به صورت کامل اموزش بدم
این تایپ با کدویژن هست ولی فکر نمی کنم با بیسیک باشه (تا جایی که می دونم؟)
بدون مقدمه میرم سر اصل مطلب
امروزه کارت های حافظه یsd/mmcکاربر و محبوبیت ویژه ای دارند از خصوصیات بارز انها که باعث کاربرد وسیع ان شده میتوان به سرعت بالا ظرفیت بالا و عمر زیاد انها و همچنین پایداری اطلاعات ذخیره شده در انها اشاره کرد
ما در ایجا چگونگی استفاده از کتاب خانه DOS-AVRموجود در کامپآیلر avr-bascomرا با هم می اموزیم.
فکر کنم که یک مثال عملی شروع مناسبی باشد پس حرف های اضافه رو تمام می کنم و به توضیع توابع موجود در کتابخانه می پردازم.
موفوق باشید تا قسمت بعد اموزش خدافظ :bye
به در خواست چند تا از دوستان این تایپ رو زدم تا کار با SDرو
به صورت کامل اموزش بدم
این تایپ با کدویژن هست ولی فکر نمی کنم با بیسیک باشه (تا جایی که می دونم؟)
بدون مقدمه میرم سر اصل مطلب
امروزه کارت های حافظه یsd/mmcکاربر و محبوبیت ویژه ای دارند از خصوصیات بارز انها که باعث کاربرد وسیع ان شده میتوان به سرعت بالا ظرفیت بالا و عمر زیاد انها و همچنین پایداری اطلاعات ذخیره شده در انها اشاره کرد
ما در ایجا چگونگی استفاده از کتاب خانه DOS-AVRموجود در کامپآیلر avr-bascomرا با هم می اموزیم.
فکر کنم که یک مثال عملی شروع مناسبی باشد پس حرف های اضافه رو تمام می کنم و به توضیع توابع موجود در کتابخانه می پردازم.
کد:
$regfile = "m32def.dat" : $crystal = 1000000 $baud = 4800 $swstack = 32 $hwstack = 64 $framesize = 64 '*****************************************dim************************************************ Dim Eror As Byte , Temp1 As Byte Dim S As String * 60 , Fl As String * 12 , Ff As Byte '********************************************************************************************* '**************************************config************************************************ این دستورات مربوط به پیکر بندی ساعت و ال سی دی می باشدکه پیکر بندی ساعت برای ثبت زمان فایل ها لازم می باشد. Config Date = Ymd , Separator = / Config Clock = Soft Config Lcd = 20 * 4 Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , _ Db7 = Porta.7 , E = Porta.3 , Rs = Porta.2 '********************************************************************************************* '***************************************library*********************************************** در اینجا دو کتاب خانه مورد نظر را به برنامه اضافه می کنیم. $include "CONFIG_AVR-DOS.Bas" $include "config_mmc.bas" '********************************************************************************************* '*****************************************const********************************************** '********************************************************************************************* '*****************************************begin********************************************** Enable Interrupts Cls : Cursor Off Time$ = "12:00:00" : Date$ = "10/04/27" Print "###############################" Print "# Amozesh AVR-DOS : dars aval #" Print "# Virast aval 1389/2/7 #" Print "# Amin Alikhani #" Print "###############################" Locate 1 , 6 Lcd "*AVR-dos*" Locate 2 , 4 Lcd "*Disigned by*" Locate 3 , 3 Lcd "*amin*" '********************************************************************************************* این دستور ورژن کتاب خانه ی موجود در کامپایلر را نمایش می دهد. Print "AVR-DOS Library version : " ; Ver() '********************************************************************************************* '********************************************************************************************* این تابع سالم بودن کارت حافظه را بررسی میکند و مقدار برگشتی ان در صورت سالم کارت صفر خواهد بود. Print "Setup Port and Reset Card ... " ; If Drivecheck() <> 0 Then Print Print "Card drive is not ready to use!" End End If Print "OK" '********************************************************************************************* '********************************************************************************************* این تابع کارت حافظه را اماده ی کار میکند که در صورت مواجه با مقداری بزرگ تر از صفر به خود باز میگیرد. If Driveinit() <> 0 Then Print "Card not inserted, check Card!" End End If Print "drive cheked ... OK" '********************************************************************************************* '********************************************************************************************* این تابع بررسی میکند که ایا کارت حافظه fat32است یاfat16که اگر هیچ یک از این دو نباشد به معنی این است که کارت مشکل دارد و باید فرمت شود. Print "Init File System ... " ; If Initfilesystem(1) <> 0 Then Print Print "File system is not suported" End End If Print "ok" '********************************************************************************************* '********************************************************************************************* این تابع ظرفیت کل کارت را بر حسب بایت نمایش می دهد. Print "Disksize : " ; Disksize() ; " bytes" '********************************************************************************************* '********************************************************************************************* این تابع مقدار فضای خالی کارت را نمایش می دهد. Print "Disk free: " ; Diskfree() ; " bytes" '********************************************************************************************* '********************************************************************************************* این توابع نام فایل و تاریخ اخرین تغییر یا تاریخ ساخت فایل را بر می گردانند تابع filelenحجم فایل را نمایش می دهد Print "----------------------------------------------" S = Dir( "*.*") While Len(s) > 0 Print S ; " " ; Filedate() ; " " ; Filetime() ; " " ; Filelen() S = Dir() Wend Print "----------------------------------------------" '********************************************************************************************* Print "payan dars aval." End
دیدگاه