PCD-7106C. programátorská příručka

Podobné dokumenty
PCD-8104/05/06. programátorská příručka

PCT-8424/25/26. programátorská příručka

PCT-7303C/E. programátorská příručka

PCT-8303/8306. programátorská příručka

PCT-8303/8306 PCT-8360/8363. programátorská příručka

PCA-8428/8429 PCA-8439/8439. programátorská příručka

PCA-7428CL/CS/CE. programátorská příručka

Karta DIO portů PCD-7006C Uživatelská příručka

Karta DIO portů PCD-7106C Uživatelská příručka

MU-851 MU-853 DOUT (PNP/NPN) RS-485

MU-825 MU-826 DIO, CNT RS-485

Mikrokontroléry. Doplňující text pro POS K. D. 2001

MU-413 analogové vstupy, RS-485

Karty čítačů PCT-7424C/E Uživatelská příručka

Karty čítačů a DIO portů PCT-8424, PCT-8425 a PCT-8426 Uživatelská příručka

MU-415/416 MU-815/816. 4/8x AIN (24 bitů), DIO, CNT, RS-485

Karta DIO portů PCD-8006 Uživatelská příručka

MU-419 analogové vstupy, RS-485

Karty DIO portů PCD-8104, PCD-8105 a PCD-8106 Uživatelská příručka

Multifunkční karty PCA-8428/8429/8438/8439 Uživatelská příručka

typové označení:... (např. UDAQ-1408A) výrobní číslo:... (např ) datum pořízení:... údaje vyplnil:...

Prostředí pro výuku vývoje PCI ovladačů do operačního systému GNU/Linux

NÁVOD K OBSLUZE. ústředna CS-484E-3

Systém řízení sběrnice

NÁVOD K OBSLUZE. ústředna CS-484E-3

Systémy pro měření, diagnostiku a testování prototypů II. Odůvodnění vymezení technických podmínek podle 156 odst. 1 písm. c) ZVZ

Přehled zapojení I/O modulů k systému Control4 - řada FN

Principy komunikace s adaptéry periferních zařízení (PZ)

Systémy pro sběr a přenos dat

Obsluha periferních operací, přerušení a jeho obsluha, vybavení systémových sběrnic

MĚŘICÍ PŘÍSTROJ PRO PC. 4 VSTUPY: 0 10 V ZESÍLENÍ : 1x, 2x, 4x, 8x VÝSTUP: LINKA RS232 RS232 DRAK 4 U1 U2 U3 U4

PŘÍLOHY. PRESTO USB programátor

Karty IRC čítačů PCT-7303C/E Uživatelská příručka

Karty IRC čítačů a SSI rozhraní PCT-8303/8306, PCT-8360/8363 Uživatelská příručka

Mikropočítačová vstupně/výstupní jednotka pro řízení tepelných modelů. Zdeněk Oborný

Karty analogových výstupů PCA-8288 a PCA-8688 Uživatelská příručka

4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

PiKRON s.r.o. ( ) 16. července Filtrace vstupních dat z AD převodníků... 3

XI/ON - modulární systém vstupů/výstupů

Komunikační protokol MODBUS RTU v displejích TDS

NÁVOD K OBSLUZE konfigurační SW CS-484

Řízení IO přenosů DMA řadičem

PCKIT LPT MODUL SBĚRNICE IOBUS PRO PC LPT. Příručka uživatele. Střešovická 49, Praha 6, s o f c o s o f c o n.

Komunikační protokol MODBUS RTU v displejích TDS

EC Motor. IO Modul EC200. EC200 Int. EC200 Ext. Verze 1.20, revize PMControl s.r.o.

DOMINUS Millennium MU4-N

Seznámení s Quidy. vstupní a výstupní moduly řízené z PC. 2. srpna 2007 w w w. p a p o u c h. c o m

UDAQ-1216A UDAQ-1416A. multifunkèní modul pro rozhraní USB

Moduly MicroUnit serie. všechny typy s výjimkou řady MU-43x, MU-44x a MU-84x

Obousměrný modul ECX-4

Modul univerzálních analogových vstupů R560. Shrnutí

Profilová část maturitní zkoušky 2014/2015

dokument E01 Programovatelná řídicí stanice TRONIC 2008 E Uživatelská příručka SYSTÉM TRONIC 2000 TRONIC CONTROL 2008

Modul se montuje naklapnutím na standardní DIN lištu. Příklady zapojení: viz domat Aplikační a projekční příručka.

Multifunkční dataloger s displejem EMD-1500

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

Registrový model HDD

Systém přenosu audiosignálu pro evakuační rozhlasy 200M-EVA.E BOX + DIN35-LOCK* Slave 2. Slave 4

CW01 - Teorie měření a regulace cv. 4.0

karet Analogové výstupy (AO) (DIO) karty Zdroje informací

FVZ K13138-TACR-V004-G-TRIGGER_BOX

Přijímací modul ECA-4

E-Line - vzdálené I/O

DRAK 3 INTELIGENTNÍ A/D PŘEVODNÍK. 3 VSTUPY: 0(4) - 20mA, 0-5/10V VÝSTUP: LINKA RS485 MODUL NA DIN LIŠTU RS485

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

Profilová část maturitní zkoušky 2015/2016

AD4RS. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

MXIO. Kompaktní I/O modul. Shrnutí. Použití Kompaktní I/O modul pro sběr dat a řízení procesů. Funkce. Technické údaje

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

MK3x3 programovatelné relé

OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ

MODUL 3 KANÁLOVÉHO D/A PŘEVODNÍKU 0 25 ma

MXIO. Kompaktní I/O modul. Shrnutí. Použití Kompaktní I/O modul pro sběr dat a řízení procesů. Funkce

Albatros MultiV ALBATROS MultiV ALBATROS MultiV-R Datový převodník LG PI485 / MODBUS TCP LG PI485 / MODBUS RTU s možností rozpočítávání spotřeby elekt

Firmware řídící jednotky stejnosměrného generátoru

AD4USB. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace i napájení přes USB

Kompaktní procesní stanice

Distribuované vstupní/výstupní moduly MODULY XFL 521, 522, 523 A 524

QTREE-DUMX4 Vícekanálový multiplexer pro připojení měřidel Mitutoyo na USB port PC Uživatelská příručka. Řízení jakosti podle norem ISO 9000

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

Manuál přípravku FPGA University Board (FUB)

GFK-2004-CZ Listopad Rozměry pouzdra (šířka x výška x hloubka) Připojení. Skladovací teplota -25 C až +85 C.

Obsah. Zobrazovací a ovládací prvky na čelním panelu. Účel použití. Elektrické zapojení. Obr : Binární vstupní / výstupní modul 07 DC 91

Přenos signálů, výstupy snímačů

VETRONICS 760. Technická specifikace mobilní jednotky

RE3USB programovatelné USB relé

Instalace systémového ovladače USB modulů TEDIA

Přijímací modul ECA-16

Vysílací modul ECT-16

UNIVERZÁLNÍ PID REGULÁTORY

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Měřicí systémy. Obsah. Systémy složené z autonomních měřicích přístrojů a modulů Sériová rozhraní. Sériová rozhraní - pokračování 1

Obsah. Zobrazovací a ovládací prvky na čelním panelu. Účel použití. Elektrické zapojení. Obr : Binární vstupní / výstupní modul 07 DC 92

Multifunkční karty PCA-7428C Uživatelská příručka

Komunikace procesoru s okolím

Z čeho se sběrnice skládá?

QuidoDuplex RS. Sada pro přenos 4 nebo 8mi dvoustavových signálů obousměrně přes RS485 nebo RS června 2011 w w w. p a p o u c h.

Jízda po čáře pro reklamní robot

I/O rozhraní CIO. CONEL s.r.o. Sokolská Ústí nad Orlicí. Tel : Fax: info@conel.cz WWW:

RXIO. Kompaktní I/O modul. Shrnutí. Použití Kompaktní I/O modul pro sběr dat a řízení procesů. Funkce

Transkript:

programátorská příručka

historie dokumentu: datum verze změny 2.1.2013 01.2013 výchozí verze 19.3.2013 03.2013 drobná zpřesnění 26.3.2014 03.2014 oprava verzí firmware v odstavci 1.2 30.9.2015 09.2015 drobná zpřesnění Výhrada odpovědnosti, autorských práv, ochranných známek a názvů: Ačkoliv byla tato programátorská příručka vytvořena s maximální pečlivostí, nelze vyloučit, že obsahuje chyby. Domníváte-li se, že jsou některé údaje uvedeny nesprávně, neúplně nebo nepřesně, prosíme, informujte technickou podporu. Pro případ typografických nebo obsahových chyb si TEDIA vyhrazuje právo kdykoliv provést opravy nebo zpřesnění publikovaných informací. Právě tak produkty popsané v programátorské příručce mohou být kdykoliv revidovány se záměrem zlepšení technických parametrů nebo dosažení lepších užitných vlastností. Doporučujeme proto před každým užitím této příručky ověřit, zda není k dispozici vydání nové. TEDIA nezodpovídá za žádné škody vzniklé užitím této programátorské příručky nebo informací v příručce obsažených. a její součásti jsou autorským dílem chráněným ustanovením zákona č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon) v platném znění. Všechna jména a názvy použité v textu mohou být chráněnými známkami nebo obchodními názvy výrobků příslušných firem. 1994 2015 TEDIA spol. s r. o.

OBSAH 1. Základní informace 1.1 Úvod 1.2 Verze firmware 1.3 Technická podpora 2. PCI řadič 2.1 Úvod 2.2 Prostor PCI konfiguračních registrů 2.3 Mapování funkčních registrů 3. Funkční registry 3.1 Přehled registrů 3.2 Rozdělení registrů 3.3 Porovnání registrů karet PCD-7006C a 4. Registry digitálních vstupů/výstupů 4.1 Úvod 4.2 Funkce digitálních portů 4.3 Registry DINReg0,, DINReg5 (RD) 4.4 Registry DOUTReg0,, DOUTReg5 (WR) 4.5 Registr DIOCfgReg (WR/RD) 4.6 Registr DIOCfg2Reg (WR) 5. Registry pro obsluhu přerušení 5.1 Úvod 5.2 Funkce obvodů pro obsluhu přerušení 5.3 Registr INTEnReg (WR) 5.4 Registr IRQCfgReg (WR) 5.5 Registr IRQStatusReg (RD) 5.6 Registr IRQClrReg (WR) 5.7 Registr TimerReg (WR, RD) 5.8 Schéma registrové struktury 6. Pomocné diagnostické registry 6.1 Úvod 6.2 Registr CardIDReg (RD) 6.3 Registr CPLDTypeReg (RD) 6.4 Registr CPLDVerReg (RD)

1. Základní informace 1.1 Úvod Tato programátorská příručka navazuje na uživatelskou příručku karty obsahující základní technické údaje, popis instalace a popis zapojení konektorů. Uživatelská příručka tedy obsahuje informace postačující běžnému uživateli k nasazení karty ve spolupráci s hotovými aplikačními programy, případně k vytváření vlastních programů nad ovladači s abstraktním API (v případě Windows se jedná například o ovladač TEDIA_DAQ01). Oproti tomu programátorská příručka obsahuje popis použitého PCI řadiče, popis všech funkčních registrů karty a popis programování na úrovni registrů. tedy umožňuje programování nad systémovým ovladačem s API nabízejícím přímý přístup k registrům (v případě Windows se jedná o ovladač tedia_ox952), tzn. vytváření speciálních programů nebo vlastních ovladačů (například pro různé SCADA systémy nebo pro operační sytém Linux). 1.2 Verze firmware Aktuální verze firmware v době vydání příručky: CPLD - typ firmware: 1C (reprezentováno hodnotou 1C H ) CPLD - verze firmware: 0.4 (reprezentováno hodnotou 04 H ) Typ CPLD je kontrolní číslo přidělené standardnímu firmware. Odlišné číslo představuje buď konfiguraci nesprávným firmware (například určeným pro jinou kartu) nebo zakázkovým firmware. Verze firmware CPLD je doplňkovým údajem pro definici vlastností karty. Funkce popsané v této příručce vycházejí z uvedených verzí firmware. 1.3 Technická podpora V případě nejasností se lze obrátit na technickou podporu výrobce: adresa: TEDIA spol. s r. o., Zábělská 12, 312 11 Plzeň, Česká republika URL: http://www.tedia.cz/podpora e-mail: aktuální informace najdete na adresách http://www.tedia.cz/kontakty http://www.tedia.cz/podpora telefon: +420 373730421 (základní číslo) +420 373730426 (technická podpora) Doporučujeme seznámit se s užitečnými pravidly pro kontaktování technické podpory (viz výše uvedená URL). Ačkoliv byla tato programátorská příručka vytvořena s maximální pečlivostí, nelze vyloučit, že obsahuje chyby. Domníváte-li se, že jsou některé údaje uvedeny nesprávně, neúplně nebo nepřesně, prosíme, informujte technickou podporu. verze dokumentu 09.2015 strana 1

2. PCI řadič 2.1 Úvod Karty jsou osazeny PCI řadičem typu OXuPCI952 kompatibilním s PCI Local BUS Specification Revision 3.0. Použitý řadič je z pohledu PCI specifikace dvojfunkční, zjednodušeně řečeno - pracuje jako dvě PCI zařízení umístěná v jediném slotu. První PCI funkce (dále označena F0) obsahuje dva UARTy; ani jeden z nich není kartou využit. Druhá PCI funkce (dále označena F1) mapuje obvody lokání sběrnice, na kterou jsou připojeny všechny periferní obvody (digitální vstupy/výstupy apod.). 2.2 Prostor PCI konfiguračních registrů V následující tabulce jsou vybrané registry z prostoru PCI konfiguračních registrů. Jelikož je PCI řadič dvojfunkční, tabulka obsahuje dvě sady registrů. adresa jméno registru PCI funkce F0 PCI funkce F1 01 H 00 H Vendor ID 1760 H (tzn. VID TEDIA) 1760 H (tzn. VID TEDIA) 03 H 02 H Device ID 0304 H 0305 H 0B H 09 H Class Code 118000 H (tzn. PCI třída "other data acquisition controller") 118000 H (tzn. PCI třída "other data acquisition controller") 13 H 10 H BAR0 UART0 (I/O, 8B, adresu přidělí BIOS) lokální sběrnice (I/O, 256B, adresu přidělí BIOS) 17 H 14 H BAR1 UART1 (I/O, 8B, adresu přidělí BIOS) lokální sběrnice (MEM, 4kB, adresu přidělí BIOS) 1B H 18 H BAR2 nevyužito konfigurační registry řadiče (I/O, 32B, adresu přidělí BIOS) 1F H 1C H BAR3 nevyužito konfigurační registry řadiče (MEM, 4kB, adresu přidělí BIOS) 23 H 20 H BAR4 konfigurační registry řadiče nevyužito (I/O, 32B, adresu přidělí BIOS) 27 H 24 H BAR5 UART0 + UART1 + konfig. registry nevyužito (MEM, 4kB, adresu přidělí BIOS) 2D H 2C H Subsystem Vendor ID 1760 H (tzn. VID TEDIA) 1760 H (tzn. VID TEDIA) 2F H 2E H Subsystem ID 0001 H 0001 H 3C H Interrupt Line číslo IRQ kanálu (přidělí BIOS) číslo IRQ kanálu (přidělí BIOS) 3D H Interrupt Pin 01 H (INTA) 01 H (INTA) K čemu jsou určeny výše popsané PCI konfigurační registry Vendor ID a Device ID jsou určeny pro 100% identifikaci karty (resp. každé PCI funkce samostatně) v systému (v případě nejednoznačnosti mohou být navíc použity Subsystem Vendor ID a Subsystem ID, popř. Class Code) BARx jsou určeny pro zjištění přidělených prostředků, tzn. počáteční adresu bloků funkčních registrů karty Interrupt Line je určen pro zjištění aktuálního propojení INT signálu karty s logickým IRQ kanálem přerušení 2.3 Mapování funkčních registrů V následující odstavcích je řešena problematika mapování funkčních registrů. Proč jsou funkční registry mapovány duplicitně v I/O a MEM prostoru (např. PCI funkce 1, BAR0 a BAR1), jaký je mezi oběma prostory funkční rozdíl Všechny registry karty jsou mapované duplicitně v obou prostorech a jejich funkční význam je identický. Existuje zřejmě jediný důvod, proč pro přístup k funkčním registrům používat I/O prostor - jednodušší podpora v operačních systémech, resp. vývojových prostředcích, které neumožňují jednoduché 32bitové adresování MEM prostoru (např. MS-DOS). Ve všech ostatních případech je výhodnější používat MEM prostor. Z tohoto důvodu i nízkoúrovňový ovladač pro Windows tedia_ox952 mapuje výhradně MEM prostor. verze dokumentu 09.2015 strana 2

K čemu jsou určeny registry PCI funkce F0 (tzn. UARTy a konfigurační registry řadiče) Ani jeden řadič UART není kartou využit. Konfigurační registry řadiče obsahují životně důležité informace, například pro časování lokální sběrnice nebo mapování zdrojů přerušení. Jejich přepsání způsobí zpravidla nefunkčnost karty, případně celého počítače. Jedinou nápravou je pak restart počítače (obsah registrů je obnovován z EEPROM paměti při každém startu počítače). K čemu jsou konfigurační registry řadiče PCI funkce F1 (tzn. BAR2 a BAR3) Tyto registry mají identickou funkci jako registry BAR5 PCI funkce F0. Jakým způsobem má ovladač, případně program přistupovat k funčním registrům karty Výhradně prostřednictvím BAR0 (I/O prostor) nebo BAR1 (MEM prostor) PCI funkce F1. Odlišuje se nějak mapování funčních registrů v BAR0 a BAR1 PCI funkce F1 karty Ačkoliv význam funkčních registrů mapovaných v I/O a MEM prostoru je identický, mapování je odlišné. Pro všechny registrové bloky mapované v I/O prostoru (tzn. i BAR0 PCI funkce F1) předává BARx registr 16bitovou adresu prvního registru bloku a všechny další registry jsou mapovány s rozestupem +1. Prostor s velikostí 256B tak může mapovat 256 funkčních registrů. K funkčním registrům mapovaným v prostoru BAR0 PCI funkce F1 lze přistupovat výhradně s daty velikosti 1 byte. +3FC Pro všechny registrové bloky mapované v MEM prostoru (tzn. i BAR1 PCI funkce F1) předává BARx registr 32bitovou adresu prvního registru bloku a všechny další jsou mapovány s rozestupem +4 (první registr je na adrese BARx+0, druhý registr na adrese BARx+4, atd.). Blok 256 funkčních registrů tak zabírá 1kB paměti. Funkčně lze +FF přistupovat výhradně na adresy BARx+0, BARx+4, atd., přenášená data mohou mít +004 velikost byte, word (platných je nejnižších osm bitů z 16) nebo doubleword (platných +03 je nejnižších osm bitů z 32). +02 Funkční registry popisované v následujících kapitolách jsou specifikovány jako ofset od +01 adresy předané registrem BAR1 PCI funkce F1. V případě použití I/O prostoru (tzn. +00 +000 BAR0 PCI funkce F1) stačí ofset vydělit čtyřmi. Viz obrázek vpravo. BAR0 BAR1 256 B 1 kb verze dokumentu 09.2015 strana 3

3. Funkční registry 3.1 Přehled registrů Následující tabulka uvádí přehled funkčních registrů implementovaných v aktuální verzi firmware (viz 1. kapitola). ofset F1/BAR1 význam pro operaci zápis význam pro operaci čtení +000 DOUTReg0 DINReg0 +004 DINReg1 +008 DOUTReg2 DINReg2 +00C DOUTReg3 DINReg3 +010 DOUTReg4 DINReg4 +014 DOUTReg5 DINReg5 +080 DIOCfgReg (zpětné čtení) +084 DIOCfg2Reg +200 IRQCfgReg IRQStatusReg +204 IRQClrReg +208 TimerReg TimerReg +20C INTEnReg (zpětné čtení) +3F4 CardIDReg +3F8 CPLDTypeReg +3FC CPLDVerReg 3.2 Rozdělení registrů Registry lze podle významu rozdělit do několika skupin, v předešlé tabulce jsou skupiny registrů vyznačeny barvou s následujícím významem: bílá registry digitálních vstupů/výstupů (datové i konfigurační) žlutá registry související s přerušením systému zelená pomocné diagnostické registry Uvedené skupiny registrů budou popsány v následujících kapitolách. Upozornění: Všechny neobsazené adresy jsou rezervovány a program nesmí na tyto adresy přistupovat (tzn. nesmí na ně zapisovat ani z nich číst). 3.3 Porovnání registrů karet PCD-7006C a Jelikož se karty PCD-7006C (šest obousměrných osmibitových digitálních portů) a (osm reléových výstupů, osm izolovaných vstupů a čtyři obousměrné osmibitové digitální porty) odlišují pouze v několika funkčních registrech, byla tato příručka doplněna tabulkou obsahující porovnání odlišností registrů obou typů karet. registr význam u karty PCD-7006C význam u karty DINReg0 vstupní hodnoty portu 0 nebo zpětné čtení stavů výstupů zpětné čtení stavu výstupů portu 0 (port je konfigurován trvale jako výstupní) DOUTReg1 výstupní hodnoty portu 1 nemá význam (port je konfigurován trvale jako vstupní) IRQCfgReg programovatelných šest bitů (D5 D0) programovatelné čtyři bity (D5 D2) D0 je trvale 1 (port 0 fixně jako výstup) D1 je trvale 0 (port 1 fixně jako vstup) IRQCfg2Reg programovatelný bit D7 programovatelné bity D6 a D7 IRQCfgReg jako zdroj přerušení jsou (kromě časovače) použity odlišné signály digitálních portů, IRQStatusReg struktura a funkce registrů však zůstává identická IRQClrReg Podrobný popis registrů je uveden v samostatných příručkách obou karet. verze dokumentu 09.2015 strana 4

4. Registry digitálních vstupů/výstupů 4.1 Úvod V následujících odstavcích budou popsány registry související s digitálními vstupy a výstupy, viz přehled v 3. kapitole. Registry lze dále rozdělit na skupinu datových registrů DINReg0, DOUTReg0, a konfigurační registry DIOCfgReg DIOCfg2Reg 4.2 Funkce digitálních portů šest vstupních registrů digitálních portů pět výstupních registrů digitálních portů registr pro konfiguraci směru digitálních portů (tzn. volba vstupní nebo výstupní port) speciální konfigurační registr Port 0 je trvale výstupní a ovládá relé; jeho aktuální stav lze zpětně číst. Port 1 je trvale vstupní a přenáší informace o stavu izolovaných vstupů. Zbývající čtyři digitální porty jsou řešeny jako obousměrné, každý port (tzn. osmice digitálních signálů) lze individuálně nastavit jako vstupní nebo výstupní. Aktuální stav portu lze zjistit čtením registru; v případě konfigurace jako vstupní port je čten stav vstupních signálů, v případě konfigurace jako výstupní lze zpětně číst data zapsaná do výstupního registru. Další podrobnosti jsou patrné z obrázku níže (zakreslen jeden osmibitový port). DIOCfgReg 0 = budič neaktivní 1 = budič aktivován 0 = přenos ve směru 1 = přenos ve směru DOUTRegX třístavový budič obousměrný budič DIO konektor, popř. obvody izolovaných vstupů nebo reléových výstupů DINRegX 0 = pull-up rezistory jsou neaktivní 1 = pull-up rezistory jsou aktivovány DIOCfg2Reg k ostatním portům 4.3 Registry DINReg0,, DINReg5 (RD) Tyto registry slouží ke čtení stavu digitálního portu, každý bit registru zpřístupňuje jeden signál osmibitového digitálního portu (nejnižší bity registrů zpřístupňují signály DIO00/08/ /40, nejvyšší bity DIO07/15/ /47). Je-li port konfigurován jako vstupní, je čtena hodnota přiváděná na signály. Je-li port konfigurován jako výstupní, je čten aktuální stav definovaný DOUTReg registrem. 4.4 Registry DOUTReg0,, DOUTReg5 (WR) Tyto registry slouží k ovládání stavu výstupního digitálního portu, každý bit registru zpřístupňuje jeden signál osmibitového digitálního portu (nejnižší bity registrů ovládají signály DIO00/08/ /40, nejvyšší bity DIO07/15/ /47). Je-li port konfigurován jako vstupní, lze do DOUTReg registru zapisovat, avšak jeho obsah neovliňuje stav signálů. Je-li port konfigurován jako výstupní, definuje tento registr stav výstupních signálů. Jelikož je port 1 je trvale vstupní, registr DOUTReg1 není implementován. Počáteční stav registrů lze konfigurovat změnou obsahu EEPROM karty dodávaným programem. Obsah EEPROM je do registrů přenesen po resetu, resp. zapnutí počítače v průběhu desítek milisekund. Defaultní obsah všech registrů je nulový. verze dokumentu 09.2015 strana 5

4.5 Registr DIOCfgReg (WR/RD) Tento registr slouží ke konfiguraci DIO portů jako vstupních nebo výstupních. D7 D6 D5 D4 D3 D2 D1 D0 RSRV DIR5 DIR4 DIR3 DIR2 DIR1 (---/0) DIR0 (---/1) DIR0 rezerva pro řízení směru přenosu portu DIO0; port je konfigurován trvale jako výstupní, zapisovaná hodnota je ignorována a čtená hodnota je trvale 1 DIR1 rezerva pro řízení směru přenosu portu DIO1; port je konfigurován trvale jako vstupní, zapisovaná hodnota je ignorována a čtená hodnota je trvale 0 DIR2 řízení směru přenosu portu DIO2 0 výstupy DOUT registru jsou deaktivovány, port pracuje jako vstupní 1 výstupy DOUT registru jsou aktivovány, port pracuje jako výstupní DIR3 řízení směru přenosu portu DIO3 0 výstupy DOUT registru jsou deaktivovány, port pracuje jako vstupní 1 výstupy DOUT registru jsou aktivovány, port pracuje jako výstupní DIR4 řízení směru přenosu portu DIO4 0 výstupy DOUT registru jsou deaktivovány, port pracuje jako vstupní 1 výstupy DOUT registru jsou aktivovány, port pracuje jako výstupní DIR5 řízení směru přenosu portu DIO5 0 výstupy DOUT registru jsou deaktivovány, port pracuje jako vstupní 1 výstupy DOUT registru jsou aktivovány, port pracuje jako výstupní RSRV rezerva (z důvodu dopředné kompatibility doporučena hodnota 0) Počáteční stav registru lze konfigurovat změnou obsahu EEPROM karty dodávaným programem. Obsah EEPROM je do registru přenesen po resetu, resp. zapnutí počítače v průběhu desítek milisekund. Defaultní obsah registru je 01 H,tzn. port 0 je nastaven jako výstupní a ostatní porty jako vstupní. 4.6 Registr DIOCfg2Reg (WR) Tento registr slouží ke konfiguraci vlastností DIO portů. D7 D6 D5 D4 D3 D2 D1 D0 PULLUPEN IRQMODE RSRV PULLUPEN aktivace pull-up rezistorů všech obousměrných DIO portů (tzn. rezistory 10 kohm zapojené mezi signál portu a napětí 5 V) 0 pull-up rezistory deaktivovány 1 pull-up rezistory aktivovány IRQMODE volba vstupů pro přerušení (viz následující kapitola) 0 režim kompatibility s PCD-7104 1 režim kompatibility s PCD-7006C RSRV rezerva (z důvodu dopředné kompatibility doporučena hodnota 0) Počáteční stav registru lze konfigurovat změnou obsahu EEPROM karty dodávaným programem. Obsah EEPROM je do registru přenesen po resetu, resp. zapnutí počítače v průběhu desítek milisekund. Defaultní obsah registru je 80 H, tzn. je zvolena kompatibilita s kartou PCD-7104 a současně jsou aktivovány pull-up rezistory. Aktivace pull-up rezistorů je určena pro počáteční inicializaci karty a nemá význam pro běžné užití. Počáteční inicializace probíhá automaticky po zapnutí nebo resetu; v prvním kroku je nastaven obsah datových registrů výstupů, v druhém kroku jsou porty konfigurovány jako vstupní nebo výstupní a nakonec ve třetím kroku jsou rezistory přepnuty z režimu pull-down do pull-up; popsané řešení tedy zajistí, že na porty použité jako výstupy nejsou před dokončením inicializace připojeny pull-up rezistory. verze dokumentu 09.2015 strana 6

5. Registry pro obsluhu přerušení 5.1 Úvod V následujících odstavcích budou popsány registry související s obvody pro přerušení systému, viz přehled v 3. kapitole. Přehled registrů: INTEnReg IRQCfgReg IRQStatusReg IRQClrReg TimerReg aktivace obvodů pro řízení signálu přerušení PCI sběrnice (INTA) povolení zdrojů přerušení příznaky zdrojů přerušení nulování příznaků přerušení generátor časových značek pro periodické vyvolávání přerušení S obvody přerušení souvisí i registr DIOCfg2Reg popsaný v předešlé kapitole. 5.2 Funkce obvodů pro obsluhu přerušení Obvody pro obsluhu přerušení umožňují vyvolat přerušení systému jedním ze zdrojů, případně zvolenou kombinací zdrojů přerušení. Karta disponuje těmito zdroji přerušení: Generátor časových značek Umožňuje vyvolávat přerušení se zvolenou časovou periodou v rozsahu 1 255 ms. Digitální vstupy Umožňuje vyvolávat přerušení sestupnou nebo náběžnou hranou vybraných signálů DIO portů. Pro správnou obsluhu je potřeba vzít v úvahu, že přerušení systému je vyvoláno první detekovanou událostí, tzn. přechodem obsahu IRQStatusReg registru z nulové hodnoty do nenulové. Pro další vyvolání přerušení je tedy nezbytné, aby programová obsluha přerušení zpracovala všechny požadavky detekované od vyvolání přerušení do vykonání této obsluhy a vynulovala všechny nastavené příznaky. 5.3 Registr INTEnReg (WR) Tento registr slouží k aktivaci obvodů pro řízení signálu přerušení PCI sběrnice a současně k nulování záchytného registru generujícího signál PCI sběrnice INTA. D7 D6 D5 D4 D3 D2 D1 D0 INTEN RSRV INTEN aktivace obvodů pro řízení INTA 0 záchytný registr generující řídicí signál INTA je trvale nulován 1 funkce záchytného registru je aktivována, tzn. karta může vyvolat přerušení systému RSRV rezerva (z důvodu dopředné kompatibility doporučena hodnota 0) 5.4 Registr IRQCfgReg (WR) Tento registr slouží k povolení základních zdrojů přerušení. D7 D6 D5 D4 D3 D2 D1 D0 RSRV TIM IRQ3 IRQ2 IRQ1 IRQ0 IRQ0 IRQ1 IRQ2 povoluje vyvolání přerušení odvozené od sestupné hrany digitálního portu DIO08 0 záchytný registr navázaný na digitální vstup je blokován 1 funkce záchytného registru je aktivována povoluje vyvolání přerušení odvozené od náběžné hrany digitálního portu DIO09 0 záchytný registr navázaný na digitální vstup je blokován 1 funkce záchytného registru je aktivována povoluje vyvolání přerušení odvozené od sestupné hrany digitálního portu DIO24 nebo DIO16 0 záchytný registr navázaný na digitální vstup je blokován 1 funkce záchytného registru je aktivována verze dokumentu 09.2015 strana 7

IRQ3 povoluje vyvolání přerušení odvozené od náběžné hrany digitálního portu DIO25 nebo od sestupné hrany digitálního portu DIO24 0 záchytný registr navázaný na digitální vstup je blokován 1 funkce záchytného registru je aktivována TIM povoluje vyvolání přerušení odvozené od generátoru časových značek 0 záchytný registr navázaný na generátor časových značek je blokován 1 funkce záchytného registru je aktivována RSRV rezerva (z důvodu dopředné kompatibility doporučena hodnota 0) S obvody přerušení souvisí i registr DIOCfg2Reg popsaný v předešlé kapitole. V režimu kompatibility s PCD-7104 jsou použity vstupy DIO24/DIO25, v režimu kompatibility s PCD-7006C pak DIO16/DIO24. 5.5 Registr IRQStatusReg (RD) Tento registr slouží k zjištění stavu záchytných registrů povolovaných registrem IRQCfgReg. D7 D6 D5 D4 D3 D2 D1 D0 RSRV TIM IRQ3 IRQ2 IRQ1 IRQ0 IRQ0 IRQ1 IRQ2 IRQ3 TIM RSRV stav záchytného registru navázaného na digitální vstup DIO08 0 registr není nastaven, tzn. od posledního nulování nedošlo k detekci aktivní hrany 1 registr je nastaven, tzn. od posledního nulování došlo k detekci aktivní hrany stav záchytného registru navázaného na digitální vstup DIO09 0 registr není nastaven, tzn. od posledního nulování nedošlo k detekci aktivní hrany 1 registr je nastaven, tzn. od posledního nulování došlo k detekci aktivní hrany stav záchytného registru navázaného na digitální vstup DIO24 nebo DIO16 (viz popis IRQCfgReg) 0 registr není nastaven, tzn. od posledního nulování nedošlo k detekci aktivní hrany 1 registr je nastaven, tzn. od posledního nulování došlo k detekci aktivní hrany stav záchytného registru navázaného na digitální vstup DIN25 nebo DIO24 (viz popis IRQCfgReg) 0 registr není nastaven, tzn. od posledního nulování nedošlo k detekci aktivní hrany 1 registr je nastaven, tzn. od posledního nulování došlo k detekci aktivní hrany stav záchytného registru navázaného na generátor časových značek 0 registr není nastaven, tzn. od posledního nulování nedošlo k vygenerování časové značky 1 registr je nastaven, tzn. od posledního nulování došlo k vygenerování časové značky rezerva (z důvodu dopředné kompatibility je doporučeno hodnoty ignorovat) 5.6 Registr IRQClrReg (WR) Tento registr slouží nulování záchytných registrů povolovaných registrem IRQCfgReg. D7 D6 D5 D4 D3 D2 D1 D0 RSRV TIM IRQ3 IRQ2 IRQ1 IRQ0 IRQ0 nuluje stejnojmenný záchytný registr v IRQStatusReg 0 bez významu, stav záchytného registru není modifikován 1 záchytný registr je vynulován (generuje krátký puls, následný zápis 0 není vyžadován) IRQ1 nuluje stejnojmenný záchytný registr v IRQStatusReg 0 bez významu, stav záchytného registru není modifikován 1 záchytný registr je vynulován (generuje krátký puls, následný zápis 0 není vyžadován) IRQ2 nuluje stejnojmenný záchytný registr v IRQStatusReg 0 bez významu, stav záchytného registru není modifikován 1 záchytný registr je vynulován (generuje krátký puls, následný zápis 0 není vyžadován) IRQ3 nuluje stejnojmenný záchytný registr v IRQStatusReg 0 bez významu, stav záchytného registru není modifikován 1 záchytný registr je vynulován (generuje krátký puls, následný zápis 0 není vyžadován) TIM nuluje stejnojmenný záchytný registr v IRQStatusReg 0 bez významu, stav záchytného registru není modifikován 1 záchytný registr je vynulován (generuje krátký puls, následný zápis 0 není vyžadován) RSRV rezerva (z důvodu dopředné kompatibility doporučena hodnota 0) verze dokumentu 09.2015 strana 8

5.7 Registr TimerReg (WR, RD) Tento registr slouží k ovládání generátoru časových značek určeného pro periodické vyvolávání přerušení. Počáteční hodnota registru je nulová a generátor časových značek je blokován. Zápisem nenulové hodnoty je generátor odstartován, perioda je definovaná zapsanou hodnotou v milisekundách. Zápisem nulové hodnoty je generátor zastaven. Registr má význam i pro čtení (je čtena aktuální hodnota čítače inkrementovaného od nuly každou milisekundu až do zadané hodnoty zmenšené o jedna). Pro příklad, zápisem hodnoty 100 bude první přerušení vyvoláno 100 ms po zápisu do registru a následně vždy po dalších 100 ms. Čtením budou získávány hodnoty 0, 1,, 98, 99, 0, 1,, přerušení je vyvoláno v okamžik přechodu z 99 na 0. 5.8 Schéma registrové struktury Na níže uvedeném obrázku je pro lepší porozumění souvislostí zakresleno schéma registrové struktury. TIMER (1 255 ms) IRQCfgReg(4) D Q R IRQStatReg(4) IRQClrReg(4) SW kompatibilita s PCD-7104 DIO24 IRQCfgReg(3) D Q R IRQStatReg(3) IRQClrReg(3) SW kompatibilita s DIO25 SW DIO16 IRQCfgReg(2) D Q R IRQStatReg(2) IRQClrReg(2) přerušení vyvoláno náběžnou hranou přerušení vyvoláno sestupnou hranou DIO24 SW DIO09 IRQCfgReg(1) D Q R IRQStatReg(1) IRQClrReg(1) 1 log. úroveň 1 D Q PCI_INTA\ DIO08 IRQCfgReg(0) D Q R IRQStatReg(0) IRQClrReg(0) R INTEnReg(7) 1 MIO1 _OXmPCI952 Červeně vyznačené přepínače jsou ovládány registrem DIOCfg2Reg a slouží k volbě vstupů pro vyvolání přerušení. Žlutě vyznačené obvody musejí být řízeny v rámci ISR, ostatní mohou být obsluhovány v rámci uživatelského programu, aplikačního ovladače (zpravidla DLL v případě Windows) nebo také v rámci ISR. Signál PCI řadiče MIO1_OXmPCI952 je řešen identicky u všech karet TEDIA s tímto PCI řadičem a umožňuje unifikovat ISR obsluhu karet. Signál je po startu karty v logické úrovni 0 a neblokuje tedy funkci signálu INTEnReg(7), pro vytváření specifického uživatelského ovladače lze tedy využít i řízení pomocí INTEnReg(7). Signál MIO1_OXmPCI952 využívá systémový ovladač tedia_ox952 pro Windows. V rámci aplikačního ovladače je potřeba při konfiguraci zdrojů přerušení nastavit registr INTEnReg(7) do logické úrovně 1 a při ukončení požadavku o podporu přerušení (zpravidla při ukončování programu) pak registr nastavit zpět do logické úrovně 0; vlastní deaktivaci signálu PCI_INTA\ pomocí signálu MIO1_OXmPCI952 provádí ISR v kernel části ovladače automaticky. verze dokumentu 09.2015 strana 9

6. Pomocné diagnostické registry 6.1 Úvod V následujících odstavcích budou popsány pomocné diagnostické registry, viz přehled v 3. kapitole. Přehled registrů: CardIDReg CPLDTypeReg CPLDVerReg 6.2 Registr CardIDReg (RD) registr pro čtení stavu DIP spínače (umožňuje identifikovat až 4 karty stejného typu) konstanta označující typ firmware hradlového pole CPLD (standardní, zakázkový apod.) konstanta označující verzi firmware hradlového pole CPLD Tento registr zpřístupňuje stav dvousegmentového DIP spínače a umožňuje tak identifikovat až 4 karty stejného typu instalované v systému. Data jsou přenášena na nejnižších dvou bitech, horních šest bitů je trvale nulových. 6.3 Registr CPLDTypeReg (RD) Tento registr zpřístupňuje konstantu označující typ firmware hradlového pole CPLD v rozsahu 0 až 255. Hodnota typu standardního firmware karet PCD-7006C je uvedena v 1. kapitole. 6.4 Registr CPLDVerReg (RD) Tento registr zpřístupňuje konstantu označující verzi firmware hradlového pole CPLD. Hodnota registru v rozsahu 0 až 255 definuje verzi v rozsahu 0.0 do F.F (tzn. je zobrazena v HEX tvaru s desetinnou čárkou). Hodnota aktuální verze standardního firmware karet je uvedena v 1. kapitole. verze dokumentu 09.2015 strana 10

Několik slov o TEDIA spol. s r. o. TEDIA spol. s r. o. je ryze českým výrobcem měřicí a průmyslové elektroniky s vlastním vývojovým, výrobním a servisním zázemím s tradicí od roku 1994. Společnost je od roku 2002 řádným členem PCI Special Interest Group, organizace odpovědné za standardizaci a vývoj sběrnice PCI a PCI Express. Aktuální nabídka výrobků a služeb Komponenty pro PC systémy multifunkční karty pro laboratorní a průmyslové aplikace (A/D převodníky, D/A převodníky, digitální porty, IRC a registrační čítače,...) dceřiné desky pro úpravu signálů (izolační zesilovače, multiplexery, výkonové výstupy,...) podpora sběrnic ISA, PC/104, PCI a PCI Express Komponenty pro distribuované systémy - stavebnice modulů MicroUnit serie kompletní sortiment inteligentních I/O modulů (analogové vstupy a výstupy, digitální porty, čítače,...) komunikace s nadřízeným systémem rozhraním RS-485, RS-422, RS-232 nebo LAN protokoly AIBus-2 (firemní komunikační protokol) a standardní Modbus RTU průmyslové provedení v pouzdru pro montáž na lištu DIN 35 mm speciální typy v zakázkovém provedení nebo LCD moduly pro montáž na čelní panel rozváděče Komponenty pro komunikaci v průmyslovém prostředí komunikační karty pro sběrnice ISA, PC/104, PCI a PCI Express jedno, dvou a čtyřportové karty s řadiči UART s podporou rozhraní RS-232, RS-422 a RS-485 konvertory a repeatery komunikačních rozhraní RS-232, RS-422 a RS-485 v pouzdru pro montáž na lištu DIN 35 mm miniaturní izolované USB konvertory pro rozhraní RS-232 a RS-485 Komponenty pro mobilní měřicí systémy multifunkční moduly pro nasazení v laboratořích a zkušebnách USB nebo LAN konektivita Software vývoj univerzálních Windows ovladačů a ovladačů pro Control Web ovladačů pro naše výrobky jako oem partner dodáváme všechny komponenty systém Control Web dodáváme systém ScopeWin pro laboratorní nebo průmyslová měření a analýzu dat Zakázkový vývoj a výroba elektroniky zkušenosti s vývojem více než stovky typů zásuvných PC karet a téměř 400 typy mikropočítačových desek speciální elektronika vybavená rozhraními a technologiemi, se kterými již máme zkušenosti - počítačové sběrnice PCI, PCI Express, ISA, USB, ethernet, - rutinní vyžívání hradlových polí FPGA a CPLD Altera - mikropočítače Cortex M3/M4, výkonné mikropočítače řady 51 - zpracování analogových signálů z technologických čidel (termočlánky, odporová čidla, tenzometry, inkrementální snímač, LVDT,...) - aplikace A/D převodníků s vysokým rozlišením nad 20 bitů nebo vzorkovací frekvencí desítek MHz - zpracování a analýza signálů v reálném čase pomocí FPGA (FIR, DFT, ) výroba zajištěna vlastním osazovacím automatem a pájecí pecí pracující na principu nasycených par zkušební laboratoř vybavená mj. klimatizační komorou pro zkoušky chladem, suchým teplem a vlhkým teplem podle norem ČSN EN 60068 další informace viz http://www.tedia.cz/vyvoj 1994 2015 TEDIA spol. s r. o.