Fórum témák
» Több friss téma |
Cikkek » IDE csatolás PIC-ekhez IDE csatolás PIC-ekhez
Szerző: mspike, idő: Aug 7, 2005, Olvasva: 21733, Oldal olvasási idő: kb. 2 perc
Egy rövid áttekintés a legfontosabb ide regiszterekből :
1. Adatregiszter /cs0=0 /cs1=1 A2=0 A1=0 A0=0 Ide kerül a kiolvasott adat/ és ide rakjuk a beírandó adatot. 16Bit széles... vagyis az adatbusz felső részére is szükségünk lesz. Ez az egyetlen 16Bites regiszter az egész IDE szabványban. 2. Error info reg. /cs0=0 /cs1=1 A=001 (remélem érthető így) Ha hiba történik akkor ide kerül egy szám ami jelzi az okát..., hogy pontosan mit is jelentenek az ide kerülő kódok arról a teljes hivatalos IDE szabványban kaphatunk átfogó képet (ata3.pdf (kell hozzá acrobat) 3. Sector Count Regiszter /cs0=0 /cs1=1 A=010 Nos ez a regiszter CHS (Cylinder/Head/Sector) címzésben azt adja meg hány sectort birizgálunk, miután mi a modernebb LBA címzéssel akarunk foglalkozni így ezt a regisztert használjuk a 28Bit-es LBA cím alsó 8bitjeként. 4. LB of Cylinder number /cs0=0 /cs1=1 A=100 Ide kerül az LBA következő 8 bitje 5. High 2 bits of Cylinder num /cs0=0 /cs1=1 A=101 Itt mi mind a 8 bitet használjuk (CHS-ban csak 2 bit) az LBA következő 8 bitje. 6. Head and Device select Regiszter /cs0=0 /cs1=1 A=110 Az egyik legfontosabb Az alsó 4 bitje az LBA felső 4 bitje. Az 5. bitje (figyelem 0. bitnél kezdjük számolni a regisztereket.) szabja meg melyik eszközhöz szólunk Master = 0 Slave = 1. (ha van kettő eszközünk, ha nincs mindig a masternek szólunk. A felső három bit LBA módban 111. !!!! 7. Command / Status Reg. /cs0=0 /cs1=1 A=111 Ez is egy elég fontos regiszter. Ha olvassuk aktív státuszt ad vissza, ha írjuk parancsot adunk az eszköznek valamire... (erről az IDE parancsok részben) Nos olvasáskor... 0. Bit --> Error bit. Ha hiba történt 1. 1. Bit --> Index pulse... elvileg minden fordulatnál van itt egy 1-es púlse Nem fontos nekünk 2. Bit --> ECC --> erről nem sikerült még semmit megtudni, állítólag nem fontos Nekünk 3. Bit --> DRQ. (Data Request) Na ez fontos... ha ez a bit aktív adatot vár a DATA REG-be. (ha írunk) vagy adatot rakott nekünk ugyan oda (ha olvasunk). 4. Bit --> SKC --> Seek executed (modern vincsiknél nem játszik) 5. Bit --> WFT. Íráshiba... ha ez van cumi van... Ilyenkor írjunk máshova alighanem badsector van... 6. Bit --> RDY. Ready... felpörgött a vinyó, amíg ez a bit nem aktív soha ne adjunk ki parancsot... TÖNKRE VÁGJA a vinyát... 7. Bit --> BSY. Busy.. ez aktív ha még az előző parancs végrehajtása folyik. (illik vizsgálni) 8. Interrupt / Software reset reg. Ezt nem használjuk még, mert Interruptozni nem akarok eleinte máspedig a reset lábra teljes rálárásunk van pic felöl így nem kell soft resetelni. 9. Active Status Reg. /cs0=1 /cs1=0 A=111 tudom ilyen már volt de ez mégis más... 0. Bit --> Master Active (azt jelzi, hogy melyik eszköz aktív.) 1. Bit --> Slave Active (lsd. eggyel feljebb) 2-5. Bit --> Active HEAD (aktív fej, LBA-nál nem igazán fontos) 6. Bit --> Write in Progress (írás folyamatban, ilyenkor ne kapcsoljuk ki 7. Bit --> Floppy Present... na igen erre aztán totál nem lesz szükségünk... Ime egy kis összefoglaló táblázat (ATA3.PDF-ből) arról, miként is kell címezni, hogy jó regisztert kapjunk Folyt. köv. a parancsokkal ! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |