Program Standarní rozhranní Paralelní port Sériový port, IRDA Firewire USB, Bluetooth Rozhraní pro pevné disky ATA, SATA, SCSI (příště) Cvičení: Blikající stromeček, řízení křižovatky, infračervený příjímač, osciloskop ze zvukové karty, měření sběrnice I2C, měření sběrnice USB, měření komunikace klávesnice, zvuková karta z paralelního portu, stavba I2C převodníku do paralelního portu.
První krůčky v C Datové typy: void speciální typ nespecifikovaný/prázdný int, unsigned int, signed int = DWORD char (zase signed unsigned) = BYTE int * = Ukazatel na proměnou typu int int nazev[32] pole 32 hodnot typu int (paměť 4*32 byte) Funkce mají jeden návratový typ Deklarace: navratovytyp nazev (prametry); int main(void) { deklarace proměných tělo programu } P ROGRAM = algoritmus + data
Programové konstrukce rozhodování if (podmínka) { příkaz else příkaz } Iterace for (i=0;i<10;i++) { příkaz1; } iterace s podmínkou while (podmínka) { příkaz2; }
Rozhraní pro záznamová média Úplně první PC XT mělo kazetový magnetofon Disketovou mechaniku 160KB 5'25 palce IBM ROM BASIC Rozhraní záznamové jednotky jednotky pružných disků Jednotky 5.25 palce Jednotky 3.5 palce připojeny přes vlastní řadič, maximálně 2 na PC pevné a optické jednotky pevné disky a optické jednotky (viz samostatná hodina) vlastní řadič, dvě jednotky na kabel, rozhraní IDE, ATA později ještě druhý řadič, rozhraní EIDE, ATA
ATA - IDE standart, norma pro pevné disky, později i pro optické jednotky (ATAPI) Advanced Technology Attachment Packet Interface (ATAPI), with the full standard ATA/ATAPI. ATA - Advanced Technology Attachment Marketingem změněno na IDE (Integrated Drive Electronics) a později na EIDE Nedávno zase změněno na PATA Parallel ATA (P-ATA), Nové rozjranní SATA
Paralelní ATA - EIDE http://en.wikipedia.org/wiki/eide přenáší najednou 16 bitů (nebo 32 ale po 16 vodičích ve dvou krocích) 40 pinové konektory Kabely: má 3 konektory dva blíže kabely 40tižilový původní jen do jistých rychlostí 80tižilový pro rychlosti ULTRADMA 66 a výše kvůli přeslechům se mezi všechny vodiče připojili kabely se zeměním ale konektor zůstal stejný
Pán otrok a cable select Dva disky na jednom kabelu Jakpak se asi domluví kdo kdy bude hovořit s řadičem disku? buď pomocí: propojek na disku Cable select (CS) Master řídí přístup ke kabelu systém ho najde jako primární měl by to být disk a ne CDROM apod Pozor: Když je disk sám někdy (jistě u disků Western Digital) musí být propojka na SINGLE Slave druhé zařízení přístup ve volném čase masteru Cable select A drive setting called cable select has also emerged. In this mode of operation, the drives automatically configure themselves as master or slave. This is achieved by cutting wire 28 (on 40 wire cables, or wires 56
Přenosové rychlosti PIO programmed input output procesor vykonává instrukce IN OUT a tak komunikuje s diskem hodně zátěžové pro procesor PIO modes: pio0 pio1 pio2 pio3 pio4 DMA Direct Memory Access procesor naprogramuje jen disk a v paměti se objeví data DMA módy: DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5 ATA33 znamená nejvýše UDMA2 => 33.3 MB/s ATA66 znamená nejvýše UDMA4 => 66.7 MB/s ATA100 znamená nejvýše UDMA5 => 100 MB/s ATA133 znamená nejvýše UDMA6 => 133 MB/s V dnešní době disky PATA vytáhnou cca 55MB/s
SATA http://en.wikipedia.org/wiki/serial_ata přenáší data sériově po 7dmi pinovém kabelu rychlosti možné do 150MB/s (až do 300MB/s (ATA II)) hotswapping native command queing (změna pořadí příkazů) Žádný Master/Slave Jiný konektor na napájení (3.3V 5V 12V)
SCSI http://en.wikipedia.org/wiki/scsi Small Computer System Interface standart pro rohraní pro přenos dat SCSI host adapter řadič sběrnice SCSI (mezi PC a zařízeními SCSI) Každé zařízení podobně jako IDE disk musí mít řadič pro sběrnici SCSI V dnešní době SCSI zůstalo dominantní na poli Worksations a Serverů Periferie disky DVDROM CDRW apod tiskárny, scannery (dříve) Rozhraní SCSI se objevilo počátkem 80 let minulého století verze výrobci nemusejí implementovat celou sadu příkazů dané verze SCSI 1, SCSI 2, SCSI 3 Výrobci často dodávali přípony ULTRA, WIDE, FAST SCSI aby odlišili přenos. rychlosti
Bluetooth http://en.wikipedia.org/wiki/bluetooth Název po králi Haraldu Blåtandovi (Harold Bluetooth, Harold Modrozub), králi Dánska a Norska (935 and 936) velkému sjednotiteli severských národů bezdrátový přenos k perfieriím jako jsou tiskárny, sluchátka, telefony, PDA, klávesnice 2.45 Ghz, channel hopping (změna frekvence vysílače 1000x za sekundu) hodně zjednodušeně bezdrátové USB Verze: 1.0 a 1.0B první pokus a nic moc. 1.1 opravy a podpora nešifrovaných spojení 1.2 samozřejmě zpětně kompatibilní s 1.1 rychlejší přenosové rychlosti adaptivní freq. hopping 2.0 zase zpětně kompatibilní rychlejší 2.1 Mbit/s vestavěný QoS (priorita toků zařízením)
USB úvod http://en.wikipedia.org/wiki/universal_serial_bus Universal serial Bus pro připojení běžných periferií k počítači myši, klávesnice, zvuková karta, modemy, fotoaparáty, externí paměti, sítě Asymetrická topologie (nesouměrné propojení) K jednomu USB portu (řadič sběrnice USB) lze připojit více zařízení je třeba užít USB HUB (funguje podobně jako síťový hub/switch) Standarty USB 1.1, USB 2.0 Hardwarová implementace rozhraní UHCI implementace veze 1.1 firmou INTEL (a VIA koupila licenci) OHCI - implementace veze 1.1 firmou Compaq EHCI implementace verze 2.0
USB třídy zařízení Zařízení se dělí podle funkcí do tříd každá třída má standartizovaný protokol pro komunikaci operační systém nemusí mít ovladače pro konkrétní zařízení protože se chová jako zařízení z nějaké třídy (v nejlepším případě) třídy USB HID Human Interface Devices rozhraní počítač člověk klávesnice, myši USB Mass Storage Devices externí paměťová média USB comunications device class modemy, winmodemy, síťové karty USB Audio, Printer, Video...
Konektory a fyzické rozhraní 4 žílový kabel Diferenční datové vodiče D+ D- 2 žíly napájení 5V, max 0.5A pro všechna zařízení připojené na ten samý port Konektory typ A nejznámější typ B, mini A, mini B atd. Rychlost rozhranní tři různé toky Low speed klávesnice apod. 1.5Mbit/s Full speed mass storage 12 Mbit/s High speed pro USB 2.0 480Mbit/s
USB technické detaily Zařízení z pohledu řadiče jsou functions (jedno zařízení může mít vicero funkcí) Functions mají pipes (roury pro přenos) až 15 pro každou stranu přenosu (z a do zařízení) Druhy přenosu control transfers krátké přikazy zařízení dotazy na stav apod. isochronous transfers jako Firewire, přenosy s jistou ganrantovanou rychlostí, něco se může ztratit interrupt transfers zařízení co mohou dostat data kdykoli např. klávesnice bulk transfers velké přenosy dat omezenou dobu, např přenosy dat do/z přenosných disků (fotoaparátů)