Pci programering?
Pci programering?
Någon som vet en bra sida som tar upp hur man programerar pci porten?
Någon som har gjort det tidigare med bra resultat?
Någon som har gjort det tidigare med bra resultat?
Vad är det du vill göra exakt?
PCI är ingen port på samma sätt som t.ex. serieporten, det är en buss. Och själva bussen är mer eller mindre transparent så det man eventuellt "programmerar" är de kort/chip som sitter på bussen.
Det närmaste jag kommit är att programmera om PCI-ISA bryggan på ett PC104-kort för att få lite mer fart på den bussen... Men det är förmodligen inte till någon större nytta för dig.
PCI är ingen port på samma sätt som t.ex. serieporten, det är en buss. Och själva bussen är mer eller mindre transparent så det man eventuellt "programmerar" är de kort/chip som sitter på bussen.
Det närmaste jag kommit är att programmera om PCI-ISA bryggan på ett PC104-kort för att få lite mer fart på den bussen... Men det är förmodligen inte till någon större nytta för dig.
- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Det sista jag jorde och kopplade
in på en buss i datorn var ett a/d kort av ISA-standard som satt i en burk som hade mindre hårddisk än vad jag har i ram på den bureken jag har nu.... Verkar sundare att lära sig USB2 och interface den vägen... Lättare om inte annat och farten på USB duger ju oftast.
-
- Inlägg: 515
- Blev medlem: 31 maj 2003, 10:42:37
- Ort: Helsingborg
- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Ett fusktips...
Gör ett pcikort, men sno bara ström ifrån bussen och använd en intern usb-kontakt, sätt kortet i en pci-plats så ser det hela ärkeporffsigt ut ändå.... Jag menar, man behöver ju inte ansluta något bara för att man trycker ner det i den platsen och så får du din proffsiga gavelplåt och slipper få gråa hår när du skall lära dig den (förmodligen) bökiga pci-bussen ! USB-kontroller finns det som är väl dokumenterade idag och troligen den lättaste vägen att gå för att skapa egen hårdvara om man inte räknar rs-232 som ändå snart är borta
- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Ja troligen...
Känns lite motbjudande att ge sig in i det träsket... Till USB.kontroller man kan köpa så finns själva drivrutinen, så hela operativsystembiten kan man slippa och bara få API´t direkt framför näsan... Känns lite lättare att hantera om man inte är väldigt envis och duktig programerare...
kolla upp I/ portarna 0xcf8 0ch 0xcf9 (på alla x86 system i alla fall). Det man gör är att man skriver in addressen på port 0xcf8 och läser 32 bitar från data porten 0xcf9. Det du får ut efter att ha hämtat 512 byte (alltså 128 läsningar) är vad som kallas "PCI COnfiguration Space" det är det huvud där det står vilken typ av enhet det är, vem som har gjort den, samt en massa status och kontroll bitar.
Att hålla på med PCI bussen är egentligen väldigt enkelt, om du skulle göra ett eget kort så behöver du bara räkna upp i address (kommer inte ihåg om det är byte/word eller dword) till du kommer till ditt kort, därefter så aktiverar du kortet (sätter vissa flaggor om det behövs) och *vips* så funkar det.
Det jag har beskrivit här är hur ALLA operativsystem måste göra men eftersom du inte skriver ditt eget OS utan istället ska skriva en drivrutin så måste du göra det den hårda vägen: lära dig mål operativsystemets drivrutinsfunktion (det finns böcker i bibel format för detta ämne).
Ta en titt på PLX PCI kretsar om du planerar att göra ett eget PCI kort
Att hålla på med PCI bussen är egentligen väldigt enkelt, om du skulle göra ett eget kort så behöver du bara räkna upp i address (kommer inte ihåg om det är byte/word eller dword) till du kommer till ditt kort, därefter så aktiverar du kortet (sätter vissa flaggor om det behövs) och *vips* så funkar det.
Det jag har beskrivit här är hur ALLA operativsystem måste göra men eftersom du inte skriver ditt eget OS utan istället ska skriva en drivrutin så måste du göra det den hårda vägen: lära dig mål operativsystemets drivrutinsfunktion (det finns böcker i bibel format för detta ämne).
Ta en titt på PLX PCI kretsar om du planerar att göra ett eget PCI kort