cosmin_cosmin_1 Posted April 16, 2006 Share Posted April 16, 2006 Vreau sa conectez un microcontroller la un card de memorie flash, gen SD,CF,MMC etc, in care tin minte niste "samples"uri pentru a genera niste cuvinte.Problema este ca am cautat pe net modalitati de interfata pentru mai multe tipuri de carduri, dar nu am gasit mai nimic. Va rog,daca ati lucrat cu asa ceva, care ar fi cel mai usor de folosit card de memorie, protocol usor... Daca m-ati ajuta si cu niste scheme, ar fi perfectMultumesc Link to comment
Cristiano Posted April 16, 2006 Share Posted April 16, 2006 Cel mai simplu este sa-l accesezi in mod SPI. Mai departe, depinde daca te intereseaza sa citesti cardul si de pe PC (caz in care va trebui sa implementezi accesul pe baza de fisiere si sistem de fisiere), in caz contrar, protocolul poate fi f. simplu. Uite aici un exemplu (schema + cod sursa): http://www.captain.at/electronics/pic-mmc/ Link to comment
Guest razvan1988 Posted April 17, 2006 Share Posted April 17, 2006 Uita-te la http://mikroelektronika.co.yu/ Compilatoarele de acolo contin librarii de lucru cu FM,SD,MMC iar rutinele sunt destul de usoare. Sper sa iti ajute la ceva. Razvan. Link to comment
cosmin_cosmin_1 Posted April 21, 2006 Author Share Posted April 21, 2006 Atasez si eu un link cu specificatiile MMC: http://homepage.ntlworld.com/seanellis/R2_MMC1.pdf Am facut rost de un card de 32M. Azi il incerc,sa vad ce iese. Link to comment
cosmin_cosmin_1 Posted April 22, 2006 Author Share Posted April 22, 2006 nu am reusit sa fac mai nimic. incerc sa conectez cardul la portul paralel al calculatorului.Am reusit sa comunic cu cardul, imi raspunde la comanda CMD0, dar la CMD1 nu reusesc nicicum sa il conving sa-mi raspunda cu 00h.A lucrat cineva cu card mmc pe portul paralel? nu reusesc sa-i dau de cap,am incercat toate combinatiile de comenzi Link to comment
Cristiano Posted April 23, 2006 Share Posted April 23, 2006 nu am reusit sa fac mai nimic. incerc sa conectez cardul la portul paralel al calculatorului.Am reusit sa comunic cu cardul, imi raspunde la comanda CMD0, dar la CMD1 nu reusesc nicicum sa il conving sa-mi raspunda cu 00h.A lucrat cineva cu card mmc pe portul paralel? nu reusesc sa-i dau de cap,am incercat toate combinatiile de comenziPai cum l-ai "legat"? Cum l-ai alimentat? Link to comment
cosmin_cosmin_1 Posted April 24, 2006 Author Share Posted April 24, 2006 l-am alimentat de la 2 acumulatori. multimetrul indica aproximativ 2.6 V. Data In, CS si CLK le-am conectat la pinii 4,3,2 respectiv de la portul paralel iar Data Out la pinul 10. Conectarea nu a fost directa, ci prin tranzistori NPN.Ce mi s-a parut ciudat este faptul ca valoarea de intrare a portului paralel (379h) depindea de niste valori de delay intre instructiuni. cam greu de explicat, mai bine atasez o portiune din cod.Am lucrat in Delphi sub Windows XP. Portul paralel lucreaza bine, am instalat ce trebuie. Functia ce trimite comanda:parametrii functiei vor fi de forma .. (1,1,1,1, 1,1,1,1) pentru comanda FFData In = pinul 4CS = pinul 3CLK = pinul 2 al portului paralelfunction trimite_comanda(a0,a1,a2,a3,a4,a5,a6,a7:integer):integer;var final:word;begin final:=0; intrare:=4*a0; //Data In=A0, CS=0, CLK=0 portout(888,intrare); //Trimit datele spre card sleep(1); intrare:=intrare+1; //CLK=1, restul la fel portout(888,intrare); //Trimit datele spre card sleep(1); if (PortIn(889)<>126) then final:=final*2+1 else final:=final*2; // Am citit datele de la intrare. Daca valoarea este diferita de 126, am 1 logic, daca e 126, am 0 logic.// In "final" se retine valoarea de la intrare, dupa 8 clock-uriFunctia are 8 portiuni asemanatoare, cu diferenta:intrare:=4*a1, ... ,a7======================================= Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now