Fórum témák

» Több friss téma
Fórum » SD kártya kezelése PIC-kel
 
Témaindító: brejti, idő: Szept 18, 2006
Témakörök:
Lapozás: OK   7 / 14
(#) Beles válasza AZoli hozzászólására (») Júl 20, 2014 /
 
Na mostmár rájöttem, hogy miért nem kapok adatot. Minden küldés után ki kell olvasni az SPI1BUF-ot, különben Receive overflow hiba keletkezik... Viszont R1 response az most 0x3F lett CMD0 parancs után!
(#) don_peter válasza Beles hozzászólására (») Júl 20, 2014 /
 
Megosztanád az inicializáló függvényedet?
És a beállításokat, hogy tudjam majd én is mit kell beállítanom?
Had tanuljak belőle és még kitudja lehet átírható C18-ra.
Egyelőre érdemben nem tudok hozzászólni.

Egyébként szimulátorban teszteled vagy élesben?
Sima SPI-vel megy a dolog igaz?
A hozzászólás módosítva: Júl 20, 2014
(#) Beles válasza don_peter hozzászólására (») Júl 20, 2014 /
 
Ha működni fog, akkor elküldöm! Élesben tesztelem, van egy Pickit2-őm és Pickit3-am, meg egy dugaszos próbapanelem.
(#) don_peter válasza Beles hozzászólására (») Júl 20, 2014 /
 
Megköszönném.
Megpróbálom átírni 18F442-re.
Ha az megvan természetesen én is megosztom és utána mehet a FAT 16..
Jó lenne előrébb jutni vele mert amint elnézem nem sokan foglalkoznak vele...
Előre is köszi..
(#) Beles válasza don_peter hozzászólására (») Júl 20, 2014 /
 
Addig is a tananyag: Bővebben: Link
(#) Beles hozzászólása Júl 20, 2014 /
 
Na sikerült az inicializálás! Köszönöm a segítséget mindenkinek!
(#) don_peter válasza Beles hozzászólására (») Júl 20, 2014 /
 
Thanks..Tanulmányozom..

És megy frankon?
Ha nem nagy gond akkor elkérném az eddigieket hátha én is ki tudok belőle indulni...
Ha nem publikus akkor privátban vagy e-mailben is jó.
Köszi előre is..
A hozzászólás módosítva: Júl 20, 2014
(#) Beles hozzászólása Júl 21, 2014 /
 
Na sajnos nem sokáig jutottam el a tegnapi probléma után. Ugyanis csak akkor tudom inicializálni az SD kártyát, ha rajta van a logikai analizátoként használt pickit2 bekapcsolt táppal a PIC SCK és SDO kimenetén. Tehát pickit3-al debugolom az IC-t, pickit2 pedig logikai analizátorként rákötve az SPI buszra. CMD0 parancs után meg is kapom az R1 válaszban a 0x01-et. De ha nincs rajta a pickit2, akkor nem. Raktam a pickit2 helyére 10k ellenállásokat, tápra és GND-re is kötve, minden lehetséges variációban, de nem megy. R1 válasza 0x0F. Ilyen a világon nem létezik.
(#) AZoli válasza Beles hozzászólására (») Júl 21, 2014 /
 
Közös a tápja a pic-nek és az SD-nek? 3,3V? A GND rendben, elég rövid és kis impedanciás a két eszköz között? Másik SD-vel is próbáltad?
A hozzászólás módosítva: Júl 21, 2014
(#) Beles válasza AZoli hozzászólására (») Júl 21, 2014 /
 
A táp közös és 3,3V. Hát azt nem mondanám, hogy a kábelek jók, mert próbapanelen van összedugdosva kb 5cm-es egyeres vezetékekkel...
(#) AZoli válasza Beles hozzászólására (») Júl 21, 2014 /
 
A 24EP tud olyat, hogy OC kimenetnek konfigolhatod a lábakat. Nincs véletlenül bekapcsolva? Milyen sebességgel kommunikálsz? Ha OC, lehet hogy a 10k felhúzás kevés volt.
(#) don_peter válasza Beles hozzászólására (») Júl 21, 2014 /
 
Az SPI inicializálása után futtasd le ezt és menni fog
  1. // Indítjuk az MMC-t SPI módban
  2.     for(i=0; i < 10; i++) {  
  3.         SPI(0xFF);        // küldünk 10*8=80 impulzust
  4.     }
A hozzászólás módosítva: Júl 21, 2014
(#) Beles válasza AZoli hozzászólására (») Júl 21, 2014 /
 
70mips a clk, 4*64-osztóval, azaz kb273kbps-el. OC kimeneteket nem állítom sehol a programban.
(#) don_peter hozzászólása Júl 21, 2014 /
 
Idáig eljutottam.
Csatoltam a képet.

Ha nem küldöm ki SPI init után a 80 óra impulzust, akkor megy az SDHC is, viszont akkor nem megy a CMD0 és CMD1 parancs.

Tehát az init már működik elvileg, most már csak azt kell megoldanom, hogy egy .txt fájlt megnyisson vagy létrehozzon és azt írja folyamatosan. ...
Nem lesz egyszerű..
A hozzászólás módosítva: Júl 21, 2014

sd_spi.JPG
    
(#) Beles hozzászólása Júl 21, 2014 /
 
Én meg odáig jutottam, hogy fél délután keresztül szivattam magam. Ugyanis elmentem venni SD kártya tartót, hogy csináljak egy kis próbapanelt, ezzel is kiszűrve a vezetékelés okozta hibákat. A panel teliföldesre csináltam. Csak hogy az SD kártyát behelyezve a tartóban a lábak hozzáértek a teliföldhöz alulról, ahogy a képen látható. Én meg nem értettem hogy honnan ered a zárlat... Persze leszedni sem volt egyszerű a kártyatartót! Szóval ha valaki tervez venni hasonlót, jól nézze meg az alját .
(#) don_peter válasza Beles hozzászólására (») Júl 21, 2014 /
 
Az kemény lehetett
Akkor most már megy a dolog?
E zárlat miatt volt gond?
Fájlt olvasni vagy írni már próbáltál?
A hozzászólás módosítva: Júl 21, 2014
(#) Beles válasza don_peter hozzászólására (») Júl 21, 2014 /
 
Ez csak a ma délután eredménye, emiatt nem jutottam előrébb még az inicializálástól! Majd hétvégén folytatom leghamarabb...
(#) Beles hozzászólása Júl 26, 2014 /
 
Sziasztok!
Eljutottam odáig, hogy megvan a file melyik blokban van. Viszont a FAT táblában egy blokkal arrébb van a bejegyzés, mint amit számolok. Mit rontok el?
A file start clustere:4
Bejegyzés melyik blockban van: 4*2/512+1 = 1
Bejegyzés blockon belüli offsete: 4*2%512 = 8
Ugyebár a FAT tábla a bootblock után kezdődik, azaz az 1 blockban.
A hozzászólás módosítva: Júl 26, 2014
(#) Beles válasza Beles hozzászólására (») Júl 26, 2014 /
 
Na közben rájöttem, a FAT tábla a Reserved Region után van, de a reserved regionba beletartozik a bootblock is. Nekem 2 a reserved region. Javítsatok ki, ha tévedek!
(#) don_peter válasza Beles hozzászólására (») Júl 26, 2014 /
 
Püff neki..
Én még eddig nem jutottam szóval segíteni nem tudok, de követem az eseményeket.
.txt fájlt tettél rá az SD-re?
(#) Beles válasza don_peter hozzászólására (») Júl 26, 2014 / 1
 
Igen! De most még gépen írom c++-ban. Odáig jutottam, hogy a root foldert ki tudom listázni hosszú file nevekkel együtt. Meg tudom találni a file-okat, és a FAT táblában a bejegyzést. Még a fileok olvasása nincs leprogramozva, meg a subdirectory listázása sem. Csatoltam képet hogy néz ki most
Ha gépen működni fog, már nem tart sokból majd PIC-re átírni, mert direkt úgy csinálom, hogy PIC-re is jó legyen!
De még mindíg van egy két dolog, ami nem tiszta sajnos! Pl olyan fileveket is listáz, amit már nem kellene( a képen a vesszős n betűvel kezdődő file-ok).

dir.jpg
    
(#) don_peter válasza Beles hozzászólására (») Júl 27, 2014 /
 
Na ez már egész szépen alakul.
Csak megint az a baj, hogy C++..
Kikészít, hogy mindenki ASM vagy C++-ban dolgozik. ...
Nekem is rá kellene állnom a témára, de még van pár befejezetlen projektem aminek a végére akarok érni..
(#) Beles válasza don_peter hozzászólására (») Júl 27, 2014 /
 
De ha a gépen menni fog, akkor átírom C-re C30 fordítóra Ha ilyen tempóba haladok tovább, szerintem egy hét alatt kész lesz.
(#) don_peter válasza Beles hozzászólására (») Júl 27, 2014 /
 
Na az jó Kiemelt figyelemmel kísérem az alakulást.
Én még egyelőre negáltam az SD inicializálásánál, de az már PIC-en van.
C18 és 18F442-re írtam.
Remélhetőleg én is előrébb jutok majd...
(#) Beles válasza don_peter hozzászólására (») Júl 27, 2014 /
 
A subdirectory-ban vajon miért van két bejegyzés . és .. néven?
Mostmár subdirectory-ban a fileok kiiratása is működik, valamint txt file kiírása
(#) Norberto válasza Beles hozzászólására (») Júl 27, 2014 /
 
Hali!

Single dot .: This represents current directory.

Double dot ..: This represents parent directory.

(#) Beles válasza Norberto hozzászólására (») Júl 27, 2014 /
 
Köszi! Azaz ha feljebb akarok lépni egy mappával, akkor a parent directory-t olvasom be?
(#) Norberto válasza Beles hozzászólására (») Júl 27, 2014 /
 
Pontosan, ahogy írod.
(#) Beles hozzászólása Júl 28, 2014 /
 
Na sikerült már PIC-el is kilvasni a 0. szektort, azonban nem azt kapom, mint amit gépen látok a 0. blokkban Van benne egy olyan szöveg a kapott adatban, hogy "invalid partition table error..."
De ha számítógépen rákeresek HxD-vel, nincs is ilyen karakterlánc az SD-n Ez hogy lehet?
(#) norbiv8 válasza Beles hozzászólására (») Júl 28, 2014 /
 
A vesszős n betűvel kezdődő fájlokat létrehoztad és törölted valamikor, nem? Régen a DOS navigátor tudott törölt fájlokat "visszahozni" és azoknak hiányzott az első betűje, amit kézzel kellett megadni. Valami olyasmi rémlik, hogy fizikailag a fájl nem lett törölve, csak valami olyan karaktert írt a DEL parancs, amiről tudta az oprendszer(?), hogy törölt fájl. Nem lehet, hogy ezt látod?
Következő: »»   7 / 14
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem