امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
کنترل اختصاصی مموری کارت
نویسنده پیام
student-p آفلاین
كاربر دو ستاره
**

ارسال‌ها: 168
موضوع‌ها: 24
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 18
( 125 تشکر در 76 ارسال )
ارسال: #1
Question  کنترل اختصاصی مموری کارت
با سلام

دنبال یه برنامه میگردم که یه سری فایل صوتی رو با توجه به دستور ارسالی به میکرو از طریق مثلا چند میکرو سوئیچ از روی مموری کارت (MMC) خوانده و پخش کنه،فرض کنید ما 5 تا فایل صوتی رو مموری مورد نظرمون داریم حالا
میخواهیم با فشار یکی از سوئیچ های مورد نظرمون فایل مربوط به اون رو پخش کنیم.
بنده به این منظور چند برنامه ایی رو (که یکی از اونا رو در زیر پیوست کردم) مورد بررسی قرار دادم ولی نتیجه نگرفتم (به این دلیل که برنامه ذیل فایل های روی مموری رو یکی پس از دیگری پخش میکنه)چون مطمئنم که برنامه رو باید طوری نوشت که آدرس ابتدا و انتهایی هر ترک (فایل صوتی) رو بشه شناسایی کرد تا زمانی که مثلا سوئیچ 4 رو فشار میدهیم فایل صوتی شماره 4 پخش شه که مشکل من دقیقا همینه که چطور اینکار روبکنم.
در ضمن برنامه پیوست شده توسط بنده تست شده و کاملا جواب میده!
راستی یه جایی خوندم برای این منظور باید مموری را سکتور بندی کرد؛اگه ممکنه یه اطلاعاتی هم در مورد واحد حافظه ایی از قبیل Sector-Block-page رو بدین که مثلا اگه یه مموری 256مگابایت داریم واحد های حافظه ایش به چه صورتی هست.

اگر امکانش هست یه توضیح در مورد برنامه ذکر شده بدین (مخصوصا اونجایی که میکرو مشغول پیکربندی و شناسایی مموری میشه)
(Exclamationدر ضمن نگید که تو تاپیکا سرچ کنم که قبلا این کارا رو کردم)[/code]
واقعا ببخشیدShy پر حرفی کردما؛از لطفتون ممنونممممممممممم. :QuestionQuestionQuestion


[code]$regfile = "M8def.dat"
$crystal = 10000000
'$sim
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Prescale = 1

Const Msbl = 0
Const Msbh = 1
Const Dly = 2
Const Bits8 = 8
Const Bits16 = 16
Const Bits32 = 32

Dim Dat As Byte
Dim Resp As Byte
Dim I As Word
Dim Addr As Long
Dim Adres As Long
Dim Tanzim As Byte

Cs Alias Portd.1
Mosi Alias Portd.2
Clk Alias Portd.3
Miso Alias Pind.0

Declare Sub Minit
Declare Sub Mread(byval Addr As Long )


Config Portd.0 = Output
Config Portd.1 = Output
Config Portd.3 = Output
Config Pind.2 = Input
Waitms 300
Config Spi = Soft , Din = Pind.0 , Dout = Portd.2 , Ss = Portd.1 , Clock = Portd.3
Spiinit
'******** MAIN PROGRAM *************
Main:
Minit
Adres = 1048576
Inja:
Mread Adres
Adres = Adres + 512
Goto Inja
Xloop:
Set Cs
Shiftout Mosi , Clk , Dat , Msbl
Endloop:
Goto Endloop
End
'end program
'======= SUB ROUTINES AND FUNCTIONS =======
'*** INITIALIZATION OF MMC ***
Sub Minit
Set Cs
Dat = &HFF
For I = 1 To 10
Shiftout Mosi , Clk , Dat , Msbl

Next I
Resp = 255
Reset Cs
Cmd0:
Dat = &H40
Shiftout Mosi , Clk , Dat , Msbl
Addr = &H00000000
Shiftout Mosi , Clk , Addr , Msbl
Dat = &H95
Shiftout Mosi , Clk , Dat , Msbl
While Resp <> &H01
Shiftin Miso , Clk , Resp , Msbl

Wend
Set Cs
Waitms 50
Reset Cs
Dat = &HFF
Cmd1:
While Resp <> &H00
Set Cs
Shiftout Mosi , Clk , Dat , Msbl
Shiftin Miso , Clk , Resp , Msbl
Reset Cs
Dat = &H41
Shiftout Mosi , Clk , Dat , Msbl
Addr = 0
Shiftout Mosi , Clk , Addr , Msbl
Dat = &HFF
Shiftout Mosi , Clk , Dat , Msbl
Shiftout Mosi , Clk , Dat , Msbl
Shiftin Miso , Clk , Resp , Msbl
Wend
Dat = &HFF
Set Cs
End Sub

'**** READ routine assumes ADDR uses Status subroutine *****
Sub Mread(byval Addr As Long)
Set Cs
Dat = &HFF
Shiftout Mosi , Clk , Dat , Msbl
Shiftin Miso , Clk , Resp , Msbl
Reset Cs
Dat = &H51
Shiftout Mosi , Clk , Dat , Msbl
Shiftout Mosi , Clk , Addr , Msbl
Dat = &HFF
Shiftout Mosi , Clk , Dat , Msbl
Shiftin Miso , Clk , Resp , Msbl
While Resp <> 0
Shiftin Miso , Clk , Resp , Msbl
Wend
While Resp <> &HFE
Shiftin Miso , Clk , Resp , Msbl
Wend
For I = 1 To 512
Shiftin Miso , Clk , Resp , Msbl
Pwm1a = Resp
Waitus 30
Next I
Shiftin Miso , Clk , Resp , Msbl
Shiftin Miso , Clk , Resp , Msbl
Set Cs
End Sub
۲۶-مرداد-۱۳۸۹, ۲۳:۳۱:۲۱
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
student-p آفلاین
كاربر دو ستاره
**

ارسال‌ها: 168
موضوع‌ها: 24
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 18
( 125 تشکر در 76 ارسال )
ارسال: #2
RE: کنترل اختصاصی مموری کارت
وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووایSad
یعنی چی؟
کسی نیست کمک کنه؟
ما که در همین جور در جنب و جوشیم، یه مدت دیگه هم صبر میکنیم!017

۳۱-مرداد-۱۳۸۹, ۰۹:۵۱:۴۲
وب سایت ارسال‌ها
پاسخ
maxn@morteza آفلاین
در حال پیشرفت
***

ارسال‌ها: 318
موضوع‌ها: 29
تاریخ عضویت: اردیبهشت ۱۳۸۸

تشکرها : 157
( 607 تشکر در 221 ارسال )
ارسال: #3
RE: کنترل اختصاصی مموری کارت
منم قبلا با این مسله مشکل داشتم باید از یه میکرو ایتفاده کنی که 4kbsram داشته باشه بعد از fat استفاده کنی توی برنامت تا فایلارو از هم جدا بتونی اجرا کنی اگه بگردی خیلی مطلب راجب این مسله هست

داده پردازان سریر سیستم
۰۶-شهریور-۱۳۸۹, ۱۳:۴۰:۰۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : رسول, t3r!p3000, salehjg, h0x00i
joker آفلاین
کاربر با تجربه
****

ارسال‌ها: 798
موضوع‌ها: 67
تاریخ عضویت: آذر ۱۳۸۵

تشکرها : 849
( 3655 تشکر در 908 ارسال )
ارسال: #4
RE: کنترل اختصاصی مموری کارت
از کتابخانه DOS-AVR استفاده کن : http://members.aon.at/voegel
البته توضیحات خوبی هم اقای تروشه توی یکی از آموزشهاشون (مربوط به شبه سیستم عامل بود ) دادن که به کار شما هم یه قسمتهائیش میاد


فایل‌(های) پیوست شده
.zip   domino.mmc.tarooshe.zip (اندازه: 1.19 MB / تعداد دفعات دریافت: 144)

[تصویر:  sajdelogo.gif]
(آخرین ویرایش در این ارسال: ۰۶-شهریور-۱۳۸۹, ۱۳:۴۹:۲۶، توسط joker.)
۰۶-شهریور-۱۳۸۹, ۱۳:۴۹:۰۳
ارسال‌ها
پاسخ
تشکر شده توسط : رسول, reza555, t3r!p3000, salehjg, h0x00i, eai


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question خواندن/نوشتن بر روی کارت مغناطیسی SMNsoft 14 31,089 ۱۸-دى-۱۴۰۱, ۰۵:۱۰:۱۳
آخرین ارسال: Arsam.6988
  اموزش ساخت کارت خوان مغناطیسی mehrab888 0 1,472 ۰۶-آذر-۱۳۹۷, ۱۹:۱۸:۳۲
آخرین ارسال: mehrab888
  راهنمایی در مورد کنترل دور موتور کولر sinastar 12 23,448 ۱۰-آبان-۱۳۹۷, ۱۰:۱۸:۵۹
آخرین ارسال: alimogmov
  کنترل زاویه اتش تریستور nex2004 67 79,728 ۲۲-بهمن-۱۳۹۵, ۲۲:۴۴:۱۷
آخرین ارسال: pars_paya2
  ساخت کنترل فاز با avr mfazl22 3 3,832 ۲۸-اردیبهشت-۱۳۹۵, ۲۲:۴۸:۰۷
آخرین ارسال: kimiafars
  [فوری] کنترل سرعت موتور با کیپد kurd9691 0 2,231 ۱۴-اردیبهشت-۱۳۹۵, ۱۶:۵۷:۴۶
آخرین ارسال: kurd9691
  با میکرو یک کلید 220 رو کنترل کنیم saeidjan 7 13,676 ۱۹-بهمن-۱۳۹۴, ۱۰:۵۴:۱۵
آخرین ارسال: sharin
  مشکل عجیب با sd کارت و avr reza-m 2 2,709 ۲۱-دى-۱۳۹۴, ۱۶:۳۲:۳۲
آخرین ارسال: reza-m
  شمارنده سه رقمی با امکان کنترل morvarid 1 2,557 ۲۴-مرداد-۱۳۹۴, ۱۵:۳۷:۱۴
آخرین ارسال: omid_phoenix
  [سوال] سرعت میکرو کنترل avr sajjad12 3 3,052 ۱۴-مرداد-۱۳۹۴, ۱۱:۵۷:۳۶
آخرین ارسال: sajjad12

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS