ايران ويج

نسخه‌ی کامل: MMC
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3 4 5 6
(۰۱-مهر-۱۳۸۹, ۲۰:۲۰:۱۹)salehjg نوشته است: [ -> ]
(۰۱-مهر-۱۳۸۹, ۱۹:۵۲:۲۷)mohammad qc نوشته است: [ -> ]تشکر از جوابتون
ولی باز جواب نداد یعنی فایل AVR-DOS.LBX درون LIB هست
در ضمن config_avr-dos.bas و config_mmc.bas راکپی میکنم ولی بسکام این دو را ارور میگیرد . قبل از کپی برنامه "include "Config_MMC.bas$ را ارور میگیرد .
نمودونم باید چه کار کنم لطفا راهنمایی کنید.درضمن برنامه راهم گذاشته ام .

سلام
برنامه رو نیگاه کردم ولی اشکال های دیگه ای داره(البته با توجه به متن کد که پست دادین)
(یه سوال: ABU چیه؟ توی بسکام تعریف نشده هست.)
Abu printer باید به هم چسبیده نوشته شوند،(اگر ABU چیز خاصی نباشد و جزء اسم آرایه باشه)

مثلا آرایه Abuffer تعریف نشده هست.

یا
..

فکر کنم شما فایل دیگه ای رو include کردید که اینا تعریف شدن.

اگه در موردشون توضیح بدین، شاید با کمک دوستان مشکلتون حل بشه.

موفق باشید.

باسلام مجدد
با عرض معذرت برنامه ای که گذاشته بودم تغییراتی داده شده بود و برنامه اصلی نبود برنامه اصلی به شرح زیر است :
$regfile = "m32def.dat"

$crystal = 8000000

$swstack = 64

$hwstack = 128

$framesize = 128

Config Portc = Output : Portc = 0

Config Pind.1 = Input : Portd.1 = 1

Rec_key Alias Pind.1

Config Porta.1 = Output : Porta.1 = 0

Led_rec Alias Porta.1

Config Porta.2 = Output : Porta.2 = 0

Led_play Alias Porta.2

Config Int0 = Falling

On Int0 Request

Enable Interrupts

Enable Int0

'****************************************************************

Waitms 1

$include "Config_MMC.bas"

$external _mmc

Gbdriveerror = Driveinit()

If Gbdriveerror <> 0 Then

Led_rec = 1 : Wait 1 : Led_rec = 0

Else

Led_play = 1 : Wait 1 : Led_play = 0


End If

Gbdriveerror = Drivecheck()

'****************************************************************

Config Adc = Single , Prescaler = 32 , Reference = Avcc

'****************************************************************

Declare Sub No_key

Dim Abuffer(512) As Byte

Dim Wsrampointer As Word

Dim Lsectornumber As Long

Dim Cop_lsec As Integer

Lsectornumber = 100

Dim I As Integer

For I = 1 To 512

Abuprint(i) = 0

Next

I = 1

'************************************WRITING PROCEDURE*************

Do

If Rec_key = 0 Then

Call No_key

Led_rec = 1

Start Adc

Goto Main

End If

Loop

Main:

Wsrampointer = Varptr(abuprint Er(1))

Do

For I = 1 To 512

Abuffer(i) = Getadc(0)

Abuffer(i) = Abuffer(i) - 498

Next


Gbdriveerror = Drivewritesector(wsrampointer , Lsectornumber)

Lsectornumber = Lsectornumber + 1

I = 1

Loop

Request:

Stop Adc

Cop_lsec = Lsectornumber

Led_rec = 0

Lsectornumber = Lsectornumber - 1

'********************************READING PROCEDURE*****************

From_one:

Do

If Rec_key = 0 Then

Call No_key

Goto Start_play

End If

Loop


Start_play:

Led_play = 1 : Led_rec = 0

Lsectornumber = 100

Wsrampointer = Varptr(abuffer(1))

Gbdriveerror = Drivereadsector(wsrampointer , Lsectornumber)

Do

I = 1

For I = 1 To 512

Portc = Abuffer(i)

Waitus 117

Next

Lsectornumber = Lsectornumber + 1

Gbdriveerror = Drivereadsector(wsrampointer , Lsectornumber)

Loop

Until Cop_lsec = Lsectornumber

'*************************************

Portc = 0

Led_play = 1 : Led_rec = 1

Goto From_one

Return

End

'*************************************

Sub No_key

Do

Loop Until Pind.1 = 1

Waitms 5

End Sub

درضمن آرایه abuffer نیز تعریف شده است .Dim Abuffer(512) As Byte
سلام
مدتی است نمی تونم بیام

من برنامه را نوشتم(هم با AVR-DOSو هم باCMD)
و در پروتیوس کار می کنه ولی در بیرون کار نمی کنه

در بیرون بعضی وقت ها آی سی هنگ می کنه

سلام
آقا محمد برای گذاشتن کد ترجیحا از کد قالب بندی شده(همون دکمه ی # توی تولبار) استفاده کنید تا پست دراز نشه.


دوتا فایل رو پاک کردم، همون ارور هایی که شما گفتید رو داد.
پس مشکل شما از نبودن فایل ها در داخل فولدر برنامه و یا متفاوت بودن نام آنها با نام هایی هست که include کردید Exclamation
دو تا فایلی که گفتم بغل برنامه گذاشتم، کامپایل نشد چون اشکال های زیر هنوز هست ولی ارور های قبلی اصلاح شد. Exclamation Biggrin




این قسمت یعنی چی؟ Amaze
کد:
Wsrampointer = Varptr(abuprint Er(1))

abuprint و Er نام آرایه هستند؟ اگه هستند پس چرا فاصله دارند، چرا جایی تعریف نشدند؟Confused
اگه abuprint یه تابع(فانکشن) هست،(که توی کد تعریف نشده) باید Er(1) رو داخل پرانتز به فانکشن ارسال کنید.

هر چی می دونستم گفتم.
امیدوارم مشکلتون حل بشه.
موفق باشید. Smile
(۰۲-مهر-۱۳۸۹, ۱۵:۰۱:۰۶)salehjg نوشته است: [ -> ]سلام
آقا محمد برای گذاشتن کد ترجیحا از کد قالب بندی شده(همون دکمه ی # توی تولبار) استفاده کنید تا پست دراز نشه.


دوتا فایل رو پاک کردم، همون ارور هایی که شما گفتید رو داد.
پس مشکل شما از نبودن فایل ها در داخل فولدر برنامه و یا متفاوت بودن نام آنها با نام هایی هست که include کردیدExclamation
دو تا فایلی که گفتم بغل برنامه گذاشتم، کامپایل نشد چون اشکال های زیر هنوز هست ولی ارور های قبلی اصلاح شد.Exclamation Biggrin




این قسمت یعنی چی؟Amaze
کد:
Wsrampointer = Varptr(abuprint Er(1))

abuprint و Er نام آرایه هستند؟ اگه هستند پس چرا فاصله دارند، چرا جایی تعریف نشدند؟Confused
اگه abuprint یه تابع(فانکشن) هست،(که توی کد تعریف نشده) باید Er(1) رو داخل پرانتز به فانکشن ارسال کنید.

هر چی می دونستم گفتم.
امیدوارم مشکلتون حل بشه.
موفق باشید.Smile

تشکر از جوابتون
در مورد Wsrampointer = Varptr(abuprint Er(1)) من نمی دونم این عبارت از کجا می آید شاید موقع کامپایل این ایجاد می شه عبارت درست
((1)Wsrampointer = Varptr(abuffer
راستش بخواهی خودم هم نمی دونم در مورد ارور های قبلی چه عبارتی را در برنامه گذاشتی که بسکام عبارت
$include "Config_MMC.bas" را error نگرفت .
باتشکر
با سلام به دوستان
خیلی ممنون از وقتی که گذاشتید یک قسمت از مشکل من فعلا حل شد
باتشکر از دوستان
(۱۹-شهریور-۱۳۸۹, ۱۳:۲۳:۴۴)milad_arm نوشته است: [ -> ][i]سلام
اگه روش دیگه ای واسه راه اندازی هست بگین
از این کتابخونه avr-dosخسته شدم کار نمی کنه
[/i]

Angry

سلام دوستان نقشه ای که آقای شُیر محمدی گذاشتند یک اشگال داره اونهم اتصال مستقیم پایه های MMC به میکرو که اونم با 5ولت تغذیه شده !
اگر برق میکرو رو با تغذیه MMC یکی کنیم درست میشه!
حالا چطور ایشون فرمودند من با این مدار به تنیجه رسیدم !
کسی از دوستان PCB از MMC و AVR داره در اختیار ما قرار بده که کار کرده باشه؟ اگر با نمونه برنامه هم بود خوشحال میشیم
با تشکر
پایه های mmc

سورس و مدار :
http://chiaco.persiangig.com/document/MM...6_test.rar

منبع : http://www.eca.ir/forum2/index.php?topic=15492.0
منبع : http://www.eca.ir/forum2/index.php?topic=14245.0

فایل پیوست برای آشنایی بیشتر با MMC است
سلام
شاید زیاد ربط نداشنه باشه ولی این سه تا دستور رو که تعریف کردین کاربردش چه؟ و اعدادی رو که می زاریم بر چه حسابی هست؟
$swstack = 64

$hwstack = 128

$framesize = 128

و یکی هم اینکه من میخوام دوتا میکرو رو با هم اتصال داده که یکی master و دیگری slave باشه . میکروی slave بنا به کد دریافت شد بره فایل مورد نظر رو از حافظه بخونه و اجرا کنه.
Open Fl For Output As #1
به نظرتون با این دستور , کد گذاشتن برای فایل درس میشه؟
و یکی هم اینکه جطوری اطلاعات رو به mmc بریزم؟ با کامپیوتر میشه اطلاعات رو روش ریخت؟ چون فقط میخوام با میکرو فقط اطلاعت رو بخونم
منم با abbasalifix داریم مموری رو به میکرو وصل میکنیم اما با مگا32 ولی هنوز هیچ نتیجه ای نداده

اینم بگم اشتباه نکنید که mmc با sd که همون مموری های موبایل اند فرق داره

یه مگا64 داریم که میخوایم با این هم تست کنیم

شاید بگم 2شب نخوابیدیم ولی هنوز هیچ نتیجه ای نگرفتیم

با مگا64 هم کار نمی کنه و اررور میده که مموری رو نمیشناسه

یا اررور 255 میده
صفحه‌ها: 1 2 3 4 5 6