Hardware und Software für PC und Peripherie
|
|
- Gerda Fromm
- vor 8 Jahren
- Abrufe
Transkript
1 Expeimentsteueung Hadwae und Softwae fü PC und Peipheie Klaus Betzle Univesität Osnabück Sommesemeste 1990 Inhaltsvezeichnis 1 PCHadwae Die CPU Intel Die Registe des Speicheadessieung Ein/Ausgabeadessieung Pinzipielle Aufbau eines PC Speicheaufteilung Ein/AusgabeHadwae Softwae Betiebssystem und Wekzeuge Das Betiebssystem des PC Debug... 7
2 INHALTSVERZEICHNIS ii 2.3 Assemble, Assemblecode Hochspache und Assemble Inteupts HadwaeInteupts SoftwaeInteupts Die InteuptTabelle des PC InteuptSoftwae Zeit impc ZeitInteupts De Timebaustein 8253/ Paallele Schnittstellen Die Duckeschnittstelle des PC De pogammiebae PaallelE/ABaustein 8255 A D/A und A/DWandle Digital/AnalogWandle Analog/DigitalWandle PaallelA/DWandle Integations und Zählvefahen Vegleichsvefahen SpannungsFequenzWandlung Potentialtennung Digitale Regelung Die seielle Schnittstelle Gundlagen und Schnittstellennom De seielle Potbaustein Die Pogammieung de seiellen Schnittstelle Quittungsbetieb Andee Übetagungsnomen De IECBus 40
3 1 PCHARDWARE 1 1 PCHadwae Abb. 1 zeigt die seh veeinfacht dagestellte Blockstuktu eines Mikoechnes. Die Zentaleinheit (CPU) ist duch Adess, Daten und Steueleitungen (Bus) eineseits mit dem Pogamm und Datenspeiche vebunden (RAM, ROM), andeeseits mit eine ganzen Anzahl von Ein/AusgabeBausteinen. Auße dem DMAPozesso, de Speichezugiffe unte Umgehung de CPU emöglicht (Tansfe von/zu Floppy ode Haddisk), können noch weitee Pozessoen integiet sein (math. Kopozesso, Gaphikpozesso). Ein/Ausgabe CPU Speiche 6? 6? DMA 6? Abbildung 1: Gundstuktu eines Mikocomputes (CPU: Cental Pocessing Unit, DMA: Diect Memoy Access) Innehalb diese Volesung weden wi uns im wesentlichen mit den Had und Softwaeaspekten des Ein/Ausgabebeeichs im PC beschäftigen, das Schwegewicht wid in dem Teilbeeich liegen, de fü Steueung und Datenefassung nutzba ist. 1.1 Die CPU Intel 8086 De Pozesso i8086 ist de Achetyp eine ganzen Reihe von CPUs (8088, 80186, 80188, 80286, 80386, ) mit unteschiedliche Leistungsfähigkeit. Typische Kenndaten sind Taktfequenzen von 4.77 (8088) bis 33 MHz (80386), intene Wotbeiten von 16 (8086) ode 32 Bit (80386), adessiebae Speichebeeiche von 1 MByte (8086), 16 MByte (80286) ode 4 GByte (80386). Alle leistungsfähigeen Pozessoen diese Reihe können den Gundtyp 8086 vollständig simulieen. Unte dem Betiebssystem PCDOS/MSDOS wid nu diese 8086Modus genutzt, dahe wid im folgenden nu die 8086Hadwae beücksichtigt. Es ist üblich, 2 Funktionsblöcke zu untescheiden, zum einen die Ausfühungseinheit (Execution Unit) mit de eigentlichen Recheneinheit (ALU, aithmetic/logic unit), dem Befehlsdekodiee, dem Block de allgemeinen Registe und weiteen Registen, zum andeen das BusInteface (Bus Inteface Unit), das unte andeem die nu fü die Adessieung benutzten Registe enthält (s. Abb. 2) Die Registe des 8086 Alle Registe des 8086 sind an die Wotbeite des Pozessos angepaßt, d. h. alle sind 16 Bit beit. Die allgemeinen Registe AX, BX, CX, DX können in 2 mal 8 Bit aufgeteilt weden, ihe höhewetige und niedewetige Hälfte kann jeweils isoliet angespochen und in Pozessobefehlen benutzt weden (AH, AL high, low). De Registesatz des 8086 ist nicht symmetisch, auch die allgemeinen Registe sind nicht gleichwetig, können nicht fü alle Pozessobefehle gleichatig benutzt weden.
4 1 PCHARDWARE 2 Allgemeine Registe AH BH CH DH Intene Registe SP BP SI DI 6 6 6? 6? 6??? A A AA A ALU A Flags AL BL CL DL 6 Intene Bus 66 Σ A A A A A A 6 6? CS DS SS ES IP Intene Registe Befehlsqueue Adessen (20 Bit) Daten (16 Bit) Befehls Dekodiee Bus Steue Logik 8086 Bus Abbildung 2: Funktionsdiagamm des Mikopozessos Intel 8086 Vewendung de allgemeinen Registe: AX : Hauptechenegiste (Accumulato), Ein/Ausgabedaten BX : Basisegiste fü Aay und Tabellenadessieung CX : Schleifenzähle (Counte), CL = Zähle bei Veschiebeopeationen DX : Ein/Ausgabeadessen, Aithmetik SP : Stack Opeationen (Stack Pointe) BP : Adessieung von Daten im Stack Segment (Base Pointe) SI : Quellindex (Souce) bei Blockopeationen DI : Zielindex (Destination) bei Blockopeationen Die Segmentegiste halten die Segmentadessen fü Code(CS), Daten(DS), Stack(SS) und Extasegment(ES), IP (Instuction Pointe) adessiet den aktuellen Pogammbefehl. Im Flagegiste weden pauschalisiete Rechenegebnisse abgespeichet (Übelauf, Null, Negativ usw.), ein wichtiges Bit dot legt fest, ob ein Inteupt zugelassen wid (IE Inteupt Enable) Speicheadessieung De 8086 besitzt 20 Adessleitungen, de adessiebae Speichebeeich (byteweise Adessieung) betägt somit 1 MByte. Da kein entspechendes Registe vohanden ist, wid segmentiet adessiet, d. h. die Adesse wid in einem 20BitAddiee duch Addition de mit 16 multiplizieten (um 4 Bit veschobenen) Segmentadesse und de Offsetadesse gebildet. Scheibweise: Seg:Ofs (0 Seg,Ofs 0FFFFH ode Seg = Segmentegiste, Ofs = Kombination aus Registe(n) und Zahl). Wichtige SegmentOffset
5 1 PCHARDWARE 3 Kombinationen sind CS:IP (Pogammzeige), DS:[Vaiablenname], DS:BX, DS:[BX][Zahl] fü Pogammdaten, DS:SI, ES:DI zu Adessieung von Datenblöcken, SS:SP (Stack) und SS:BP, SS:[BP][Zahl] zu Adessieung von im Stack übegebenen Daten (bei Pozedu und Funktionsaufufen). Die Segmentegiste bauchen im allgemeinen nicht explizit angegeben weden, da de Pozesso imme eine bestimmte Zuodnung voaussetzt, oft auch nu eine einzige Zuodnung möglich ist. Die Adessieung von Speichezellen efolgt gundsätzlich byteweise, jedes Speichebyte kann isoliet angespochen weden. Gößee Objekte (16BitWote, 32BitAdessen) weden in aufeinandefolgenden Bytes gespeichet, die Reihenfolge entspicht de Bytewetigkeit das niedigstwetige Byte auf de niedigsten, das höchstwetige auf de höchsten Adesse des Objekts. Speichebeeiche, die übewiegend 16BitObjekte enthalten (Daten, Stack), sollten aus Geschwindigkeitgünden bei geaden Adessen beginnen (WORDaligned) Ein/Ausgabeadessieung Zu Adessieung von Ein/AusgabeBausteinen weden nu die niedewetigen 16 Adessleitungen benutzt, mithin sind 2 16 unteschiedliche Ein und Ausgabebausteine gundsätzlich beteibba. Die Adessieung efolgt entwede indiekt übe Registe DX ode unmittelba (immediate) duch Angabe de Adesse des E/ABausteins als Teil des Ein/Ausgabebefehls (nu fü die Adessen möglich). 1.2 Pinzipielle Aufbau eines PC Speicheaufteilung A0000 C0000 FE000 FFFFF InteuptTabelle BIOSRAM Betiebssystemeweiteungen Abeitsspeiche eseviet fü Bildschimspeiche zusätzliche RAMund ROMSpeiche ROMBIOS Nebenstehende Abbildung zeigt die Standadaufteilung des PC Speiches (640 k). Die InteuptTabelle enthält die Liste alle (Unte)Pogammadessen, die bei Had ode Softwaeinteupts aktiviet weden (s. Kap. Inteupts ), das BIOS RAM speichet wichtige Betiebssystempaamete. Die Belegung des Bildschimspeiches hängt von de vewendeten Gaphikkate ab (A0000..AFFFF: EGA/VGA, B0000..B7FFF: MDA/Hecules, B8000..BFFFF: CGA). Ein/AusgabeKaten mit OnBoad Speiche (ROM ode RAM) benutzen im allgemeinen den Beeich ab C0000. Abbildung 3: Speicheaufteilung im PC (Adessen hexadezimal)
6 1 PCHARDWARE Ein/AusgabeHadwae Fü den Betieb des PC sind eine ganze Anzahl von Zusatzbausteinen notwendig, die übe Ein/Ausgabeadessen angespochen weden. Einen goben Übeblick gibt Abb. 4. De systemnahe Teil diese E/AHadwae ist mit auf de Hauptplatine integiet, klassisch in isolieten Bausteinen, heute meist als hochintegiete ChipSets mit identischen Funktionen. Fü diesen Beeich sind die E/AAdessen 0 0FFH eseviet ( unmittelbae Adessieung duch das Betiebssystem möglich). Diese Adessen gelangen üblicheweise nicht auf den Peipheiebus, sodaß Adesskonflikte mit diesen intenen Adessen weitgehend ausgeschlossen sind. Fü Peipheiekaten stehen die Adessen ab 100H zu Vefügung. Meist ist abe folgende Einschänkung zu beachten: Aus Kostengünden weden von den meisten Hestellen nu 8 Bit de Adesse dekodiet (gängige Göße von DIPSchalten und DekodeICs), im allgemeinen Bit 2 bis 9 (niedewetigstes ist Bit 0). Dahe ist eine Beschänkung auf die Adessen bis 3FFH sinnvoll. Bei de genannten Dekodieung kann jede Ein/Ausgabekate unte 64 veschiedenen Adessen angespochen weden (Spiegeladessen), die duch Tanslation um ganzzahlige Vielfache von 400H aus de Gundadesse gebildet weden. q CPU 6? Hauptplatine SlotTeibe SlotKaten Bus Contolle 6 Time 1 6? DRQ0 2 IRQ0 0 Adessen, Daten, Steueung DMA q q DRQ2 IRQ6 IRQ3/4 DMA Contolle Video Contolle Floppy Contolle SIO q Co Pozesso Inteupt Contolle INT q q q DRQ3 IRQ5 IRQ7 Haddisk Contolle Ducke Takt PIO IRQ1 Tastatu Weitee E/AKaten Abbildung 4: Pinzipschema des Ein/AusgabeBeeichs des PC (XT) mit den wichtigsten logischen Blöcken. Die Inteupt und DMAKanäle sind jeweils angegeben (IRQ, DRQ), beim AT wid vom HaddiskContolle de Inteupt 14 benutzt (2. InteuptContolle). Eine Auflistung de gebäuchlichen Ein/Ausgabeadessen fü die Bausteine de Hauptplatine und Standadkaten gibt Tabelle 1. Fü zusätzliche Peipheiekaten sind totz de genannten Einschänkung
7 1 PCHARDWARE 5 Potadesse (hex) Ein/AusgabeBaustein inten (Hauptplatine) 00 1F DMAContolle F InteuptContolle 1 : 8259A Time 8253 ode Time TastatuDatenpot 61 SystemstatusBits, Lautspeche 64 TastatuKommandopot Echtzeituh, CMOSRAM (AT) DMASeitenRegiste, RAMRefesh A0 A1 AT: InteuptContolle 2 : 8259A F0 FF Copozesso exten (Peipheiekaten) 1F0 1FF Haddisk (AT) F Ducke 2 2E8 2EF Seielle Schnittstelle 4 2F8 2FF Seielle Schnittstelle F Haddisk (PC) F Ducke F Seielle Synchonschnittstelle 2 3A0 3AF Seielle Synchonschnittstelle 1 3B0 3BB Monochomadapte (MDA), Hecules 3BC 3BE Duckeschnittstelle auf MDAKate 3D0 3DF Coloadapte (CGA), EGA, VGA usw. 3E8 3EF Seielle Schnittstelle 3 3F0 3F7 FloppyContolle 765 3F8 3FF Seielle Schnittstelle 1 Tabelle 1: Ein/AusgabeAdessen im PC Hauptplatine und Standadpeipheie genügend Lücken im Adessbeeich vohanden. Von den PCHestellen weden die Adessen 300H 31FH fü Zusatzkaten empfohlen und dahe auf jeden Fall feigehalten (füht dazu, daß viele Hestelle die Adessvoeinstellung ihe Katen in diesen Beeich legen ein Umstand, de bei de Benutzung von meheen Zusatzkaten im PC zu beachten ist). Aus dem Beeich de Standadpeipheie weden wi uns InteuptContolle und Time, sowie SIO und DuckeSchnittstelle etwas genaue ansehen.
8 2 SOFTWARE BETRIEBSSYSTEM UND WERKZEUGE 6 2 Softwae Betiebssystem und Wekzeuge 2.1 Das Betiebssystem des PC Das Betiebssystem (MSDOS, PCDOS, veschiedene Vesionen 2.xx, 3.xx, 4.xx) umfaßt die Softwae, die dem Anwende die Standadpeipheie des PC vefügba macht. Ausfühliche Bescheibungen finden sich im zum Rechne gehöenden DOSHandbuch. In de Reihenfolge ihes Auftetens sind die folgenden Beeiche im Betiebssystem enthalten: Das ROMBIOS (Basic Input Output System) ist in speziellen Speichebausteinen (Read Only Memoies) fest im PC eingebaut. Es enthält Pogamme zum Test de Rechnehadwae, die gundlegenden Ein/Ausgabeoutinen, Ladepogamme zum Laden des estlichen Betiebssystems von Diskette ode Haddisk. Beim Systemstat und eset wid ein bestimmtes Pogamm des ROMBIOS gestatet, das fü ein definietes Hochfahen des Gesamtsystems sogt. Einige Systempaamete weden vom ROMBIOS im Speichesegment 40H, dem BIOSRAMBeeich vemekt und sind somit dem Benutze diekt zugänglich (s. Tabelle 2). Dies sind insbesondee auch die Adessen einige Ein/Ausgabebausteine des PC. Beim Systemstat wid gepüft, welche diese Bausteine unte welche Adesse zu eeichen sind, die Adesse wid dann im BIOSRAM abgelegt, nichtvohandene Bausteine weden duch die Adesse 0000 gekennzeichnet. Im Bootsekto (este physikalische Sekto de Diskette ode Festplatte) sind Infomationen übe das DiskFomat, Egänzungen des Ladepogamms und die Dateinamen des DiskBetiebssystems abgelegt. Diese Infomation wid vom ROMBIOS benutzt, um die beiden Systemdateien in den Speiche zu laden. IBMBIO.COM ist die este diese Systemdateien, enthält Eweiteungen zum BIOS. IBMDOS.COM, die zweite Systemdatei, umfaßt Untepogamme zu Handhabung des PCDateisystems (Disk Opeating System). CONFIG.SYS, eine spezielle Textdatei, definiet DOSEweiteungen, die nach den beiden Systemdateien esident (d. h. bis zum nächsten Reset) in den Speiche geladen weden. De KommandoPozesso COMMAND.COM ist die Benutzeschnittstelle des Betiebssystem, intepetiet die von de Tastatu eingegebenen Kommandos, füht dann intene DOSBefehle aus ode vesucht Dateien zu Ausfühung in den Speiche zu laden. COMMAND.COM kann voübegehend aus dem Speiche entfent weden (natülich nu dann, wenn e nicht benötigt wid). Duch die Textdatei AUTOEXEC.BAT können zusätzliche Betiebssystemeweiteungen definiet weden (z. B. Tastatuanpassungen), die dann ebenfalls speicheesident geladen weden. Außedem können in AUTOEXEC.BAT Wete fü Systemvaiable festgelegt weden (Envionment), wie PATH, PROMPT usw. Im weiteen Sinne zum Betiebssystem gehöen die extenen DOSBefehle, die duch das Staten de entspechenden Pogamme des Betiebssystems ausgefüht weden.
9 2 SOFTWARE BETRIEBSSYSTEM UND WERKZEUGE 7 Ad. (hex) Bytes Inhalt 40:00 40:06 je 2 Adessen de seiellen Pots COM1..COM4 40:08 40:0E je 2 Adessen de Duckeschnittstellen LPT1..LPT4 40:13 2 SpeicheGöße in kbyte 40:17 3 TastatuStatus, 40:17 ShiftStatus 40:4E 2 Anfangsadesse des Bildschimspeiches 40:63 2 Adesse des BildschimContolles 40:6C 4 SystemUh (TimeInteupts) Tabelle 2: Einige de im BIOSRAMBeeich vemekten Systempaamete 2.2 Debug Das Pogamm Debug ist ein Systemhilfspogamm, das zum Betiebssystem gehöt, also in jedem PC zu Vefügung steht. Wie de Name andeutet, diente es in este Linie zum Entwanzen, zum Entfenen von Fehlen aus Pogammen. Mit Debug ist es möglich, Speicheinhalte, Pogamme, Registe, einzelne Sektoen auf Diskette ode Haddisk sowohl zu inspizieen und als auch zu änden, Pogamme zu testen (Einzelschittbetieb, Setzen von Haltepunkten), Ein/Ausgabebausteine diekt anzuspechen, zu Assemblieen und zu Disassemblieen. Duch diese Möglichkeiten ist es ein wichtiges Hilfsmittel fü Hadwaetests. Hie eine knappe Befehlsübesicht (Ausfühlichees im DOSHandbuch): DebugBefehl A [Adesse] C Beeich Adesse D [Beeich] E Adesse [Liste] F Beeich Liste G [=Adesse [Adesse..]] H Wet Wet I Wet L [Adesse] M Beeich Adesse N Dateiname O Wet Byte P [=Adesse] [Anzahl] Q R [Registename] S Beeich Liste Kuzbescheibung Assemble: Umsetzung von Assemblecode in Maschinencode. Compae: Vegleich von 2 Speichebeeichen. Dump: Anzeige des Inhalts eines Speichebeeichs. Ente: Einscheiben von ByteWeten in den Speiche. Fill: Füllen eines Speichebeeichs mit einem ByteMuste. Go: Ausfühen eines Pogamms, Stat bei =Adesse, Stop bei Adesse. Hex: Summe und Diffeenz de beiden HexZahlen. Input: Eingabe von Pot Wet. Load: Laden des aktuellen Pogamms. Move: Speicheinhalt veschieben. Name: Name des aktuellen Pogamms. Output: Ausgabe von Byte auf Pot Wet. Poceed: Ausfühen eines Pogammteils. Quit: Velassen von Debug. Registe: Anzeige und Änden von Registeinhalten. Seach: Suche nach einem ByteMuste.
10 2 SOFTWARE BETRIEBSSYSTEM UND WERKZEUGE 8 T [=Adesse] [Anzahl] U [Beeich] W [Adesse] Tace: Einzelschittausfühung. Unassemble: Umsetzung von Maschinencode in Assemblecode. Wite: Speichen des aktuellen Pogamms. Alle Zahleneingaben in Debug sind in hexadezimal zu machen. Als Adesse kann die volle Adesse mit Segment und Offset ode nu de Offsetwet angegeben weden, als Beeich wid Anfangs und Endadesse ode Anfangsadesse und Länge (lzahl) ewatet. Bei vielen Befehlen sind venünftige Voeinstellungen de Paamete definiet. Auße dem Betiebssystempogamm Debug gibt es eine ganze Reihe von ähnlichen Pogammen, die im allgemeinen weitegehende Fähigkeiten haben und benutzefeundliche in de Bedienung sind (VID fü JPIModula2, CodeView fü MicosoftPodukte u. a.). Dennoch ist es sinnvoll, sich mit Debug etwas vetaut zu machen, da es paktisch übeall zu Vefügung steht. 2.3 Assemble, Assemblecode Assemblecode ist die eineindeutige Übesetzung von binäkodieten Pozessobefehlen in menschenveständliche Küzel. Ein Assemblebefehl besteht aus dem Opeationscode und den zugehöigen Opeanden. Beispielsweise entspicht de hexadezimale Maschinencode 0EEH (binä ) dem Assemblebefehl OUT DX,AL. De Opeationscode (OpCode) OUT definiet einen Ausgabebefehl, die Opeanden DX und AL sind hie Registenamen. Die Reihenfolge de Opeanden (bei 2 Opeanden) ist imme Ziel, Quelle. De obige Befehl odnet fü die CPU an, daß de Inhalt von Registe AL an den Peipheiebaustein ausgegeben weden soll, dessen Adesse im Registe DX gespeichet ist (was bedeutet demnach IN AX,DX?). Eine komplette OpCodeListe finden sie im Anhang 8086/8088 Instuction Set. Assemble sind Pogamme, die in de Lage sind, Listen von Assemblebefehlen in eine Folge von binäen Maschinenbefehlen (meist ein Pogamm), umzusetzen, Disassemble sind dazu ezipok. Gundlegende Assemble und Disassemblefähigkeiten sind in Debug eingebaut, zu Assemblieung längee Pogamme ist es sinnvoll, leistungsfähigee Assemble zu benutzen (Micosoft MASM, JPIModula2 TechkitAssemble). Das Pogammieen in Assemblecode ist meist seh viel umständliche und vo allem fehleanfällige als das Pogammieen in eine Hochspache, dahe sollte Assemble(code) nu dot benutzt weden, wo dies notwendig ist, unte andeem fü kuze Testpozeduen unte de Kontolle von Debug, fü einfache Ändeungen in einem Pogamm (Patching), wenn hohe Anfodeungen an die Geschwindigkeit (?) ode die Länge eines Pogamms gestellt weden und diese nicht in eine Hochspache befiedigt weden können, um Befehle zu ealisieen, die in eine Hochspache nicht ode nu unbefiedigend vohanden sind,
11 2 SOFTWARE BETRIEBSSYSTEM UND WERKZEUGE 9 um SoftwaeVebindungen (Intefaces) zwischen eine Hochspache und vohandene Softwae hezustellen (ROM auf eine Peipheiekate etc.). Die aufgefühten Punkte weden nach und nach an einigen Übungsbeispielen veanschaulicht weden. Hie ein Beispiel fü eine kuze Testpozedu, die unte DebugKontolle geschieben und ausgefüht wude: Die Poblemstellung bestand dain, ein fehlehaft abeitendes 16BitEingabepot zu analysieen. Dazu sollten Daten in möglichst schnelle Abfolge vom Pot gelesen weden und in einem Datenfeld abgelegt weden. Das Assemblepogamm, das dies eledigt, sieht so aus: MOV AX,CS ; Mit den esten dei Befehlen wid DS initialisiet, ADD AX,20 ; das Datensegment wid auseichend weit obehalb des MOV DS,AX ; Pogamms angelegt. MOV DX,300 ; Adesse des Eingabepots, MOV CX,8000 ; Initialisieung des Schleifenzähles, MOV SI,0 ; Zeige auf das Datenfeld, IN AX,DX ; Schleifenanfang, Lesen des Pots, MOV [SI],AX ; Abspeichen im Datenfeld, INC SI ; Feldindex ehöhen, INC SI ; um 2, da CadinalDaten, LOOP 110 ; Spung zum Schleifenanfang, 110 ist dessen Adesse, INT 20 ; Pogammende. Mit AX, DX, SI sind in obigem Pogamm Registe(inhalte) gemeint, [SI] adessiet einen Speicheplatz, MOV [SI],AX tansfeiet somit Daten aus dem Registe AX zu Speicheadesse DS:SI. Debug kann keine Vaiablennamen benutzen, alle Konstanten, Spungadessen u. ä. müssen dahe als (Hex)Zahlen eingegeben weden. Das Pogamm kann nach dem Kommando a im Debug eingegeben weden (Ende duch Leeeingabe), mit g wid es gestatet. Die Daten weden mit de (Debug)Befehlsfolge ndatei, cx, 0, bx, 1, w 200 in Datei gespeichet. Zu Analyse setzt man sinnvolleweise eine höhee Pogammiespache ein, in JPIModula2 stünden die Daten etwa nach CONST imax = 32000; bytes = 2*imax;... VAR x : ARRAY [1..imax] OF CARDINAL; infile : FIO.File;... infile := FIO.Open( Datei ); IF bytes # FIO.RdBin(infile, x, bytes) THEN (* eo action *) END;... im Datenfeld x zu Vefügung. 2.4 Hochspache und Assemble Aus den im voangehenden Kapitel geschildeten Günden ist es bisweilen notwendig, einzelne Pogammsequenzen in Assemble zu codieen und dann mit einem Hochspachenpogamm zu veknüpfen.
12 2 SOFTWARE BETRIEBSSYSTEM UND WERKZEUGE 10 Pinzipiell geht man so vo, daß man aus den einzelnen Pogammteilen linkfähige Module estellt (.OBJ Dateien), die dann vom Hochspachenlinke zu einem lauffähigen Pogamm zusammengebunden weden können. Um AssembleRoutinen in eine Hochspachenumgebung einzubinden (und umgekeht), ist eine genaue Kenntnis de Hochspachenschnittstellen notwendig. Diese Schnittstellendefinitionen müssen exakt eingehalten weden, um die meist notwendige Kommunikation zwischen Assembleteil und Hochspachenteil zu gewähleisten. Am Beispiel von JPIModula2 sollen hie die zu beachtenden Punkte im einzelnen aufgefüht weden: Registehandhabung: JPIModula2 geht davon aus, daß vom aufgeufenen Untepogamm das Registe BP imme geettet wid, die Registe AX..DX üblicheweise nicht. Bei zeitkitischen Poblemen sollte dies beücksichtigt weden, ansonsten ist es gute Stil, alle benutzten Registe zu etten und vo dem Rückspung wiedehezustellen. Übegabe von Paameten an die aufgeufene Pozedu: Paamete weden im Stack übegeben, sie weden in de Reihenfolge ihes Auftetens im Pozeduaufuf gepusht, bei WetePaameten wid de Wet gepusht, bei VARPaameten die volle Adesse (4 Byte), bei offenen Aays wid zunächst die aktuelle Länge (2 Byte), dann die volle Adesse im Stack abgelegt (man beachte, daß de Stack nach unten wächst, späte gepushte Objekte also bei niedigeen Adessen liegen). Es wid imme eine geade Anzahl Bytes im Stack abgelegt (auch bei 1ByteObjekten). Rückgabe von Funktionspaameten: Das Egebnis eines Funktionsaufufs wid abhängig von de Objektgöße behandelt, 2ByteObjekte weden im Registe AX, 4ByteObjekte im Registepaa DX:AX, gößee Objekte im Stack zuückgegeben. Pozedu und Vaiablennamen: Da viele Linke einen Punkt nicht in Namen zulassen, wid de Punkt in de intenen Handhabung duch $ bei Pozedunamen bei Vaiablennamen esetzt. Es muß imme de volle Name angegeben weden, da auf Linkeebene nu diese bekannt ist, also Modulname$Pozeduname ode Modulname@Vaiablenname. Speichesegmente fü Daten und Code: De Pogammcode eines Moduls wid im Segment C_Modulname, die zugehöigen Daten im Segment D_Modulname, die Initialisieungsoutinen im Segment INITCODE abgelegt. Diese Segmentsteueung sollte auch bei Assemblepogammen eingehalten weden, die an Modula Moduln angelinkt weden. Die obigen Definitionen gelten dann, wenn die Standadeinstellungen von Modula2 nicht veändet wuden, bei speziellen Optionen (z. B. NEARPozeduen) sind sie teilweise geändet. Sind die aufgefühten Punkte beim Scheiben eines Assembleuntepogamms beücksichtigt, kann dieses beispielsweise mit dem Micosoft Assemble MASM mit de Option /ml (Untescheidung von Goßund Kleinscheibung) zu eine.objdatei assembliet weden. Zusätzlich muß ein Definitionsmodul estellt weden, de keine Besondeheiten gegenübe nomalen Definitionsmoduln aufweist. Ein Anwendungsbeispiel ist de Modul WodIO (16BitEin/Ausgabe) im Achiv EXAMPLES.
13 3 INTERRUPTS 11 3 Inteupts Üblicheweise dienen Inteupts (Untebechungen) in einem Rechne dazu, den deteminieten Ablauf eines Pogamms zu untebechen, um zwischenduch einzelne Geäte zu bedienen. Solche Pogammuntebechungen z. B. duch einen eingebauten Zeitgebe (Time, Real Time Clock) ausgelöst aktualisieen die Systemzeit im Rechne, schalten in MultiuseSystemen zwischen den einzelnen Benutzen um, aktivieen in egelmäßigen Zeitabständen Hintegundpogamme fü das Ausducken von gößeen Dateien. Im PC wid von diesen Inteupts konventionelle At nach wie vo Gebauch gemacht (HadwaeInteupts), jedoch können beim 8086 Inteupts auch duch Pogammbefehle angeodnet weden. Diese SoftwaeInteupts sind dann natülich keine Untebechungen im Wotsinn, sonden laufen ähnlich ab wie de Aufuf eines Untepogamms, änden also nichts am festgelegten Pogammablauf. Das Betiebssystem des PC benutzt das InteuptSystem übewiegend in diesem Sinn zu Kommunikation zu und zwischen speicheesident geladenen PogammModuln (BIOS, DOS, DOS Eweiteungen, esidente Benutzepogamme) und zum Aufuf von dain enthaltenen Untepogammen. 3.1 HadwaeInteupts Am 8086 sind zu Veabeitung von PozessoUntebechungen, die duch extene Bausteine ausgelöst weden, zwei Anschlüsse vohanden: INTR (Inteupt Request) ist ein Eingangssignal, duch das ein Inteupt angefodet wid, INTA (Inteupt Acknowledge) ein Ausgangssignal, mit dem de Pozesso die angefodete Untebechung bestätigt und nähee Infomation die Inteuptnumme anfodet. Ein bestimmtes Bit im FlagRegiste (InteuptFlag, IF) legt fest, ob de Pozesso auf eine Hadwae InteuptAnfodeung übe INTR eagieen daf. Ist dieses Bit gesetzt (Assemblebefehl STI, JPI Modula2 SYSTEM.EI), kann ein Inteupt ausgelöst weden, wenn nicht (CLI, SYSTEM.DI), dann weden keine Inteupts akzeptiet. CPU 8086 INTR INTA PIC 8259A I R Q Inteupt Quelle Inteupt Quelle Adess, Daten, Steuebus Abbildung 5: Schaltung des pogammiebaen InteuptContolles 8259A im PC. An die beiden InteuptLeitungen ist im PC ein spezielle Baustein angeschlossen, de pogammiebae InteuptContolle (PIC) 8259A, de seineseits die Anfodeungen extene Bausteine annimmt (Abb. 5). Dies ist notwendig, um Anfodeungen zwischenzuspeichen, zwischen meheen Inteuptquellen zu untescheiden und inteuptauslösende Geäte einzeln zulassen und speen zu können. Ein PIC kann bis zu 8 extene Inteuptleitungen (Inteupt ReQuests IRQ x) übewachen, duch Kaskadieung mehee 8259A bis zu 64. Im PCXT ist ein PIC eingebaut, im AT zwei, daduch sind beim XT bis zu 8 unteschiedliche HadwaeInteupts konfiguieba, beim AT bis zu 16.
14 3 INTERRUPTS 12 De gesamte Ablauf eines HadwaeInteupt hat etwa diese Abfolge: 1. Eine Inteuptquelle (Time, extenes Geät) betätigt die IRQxLeitung am PIC, 2. de PIC püft, ob diese Inteupt zugelassen ist, 3. falls kein Inteupt mit höhee Pioität in Beabeitung ist, wid die INTRLeitung zum Pozesso betätigt, 4. die CPU eagiet (falls IF=1), nachdem de geade ablaufende Befehl zu Ende gefüht ist und schickt 5. ein INTASignal zum PIC, um anzuzeigen, daß de Inteupt akzeptiet ist, 6. ein zweites INTASignal zum PIC, um von diesem die Inteuptnumme anzufoden, 7. de PIC legt die Inteuptnumme auf den Datenbus, dies ist die Summe aus de Numme de Inteuptleitung (0 7) und eine im PIC pogammiebaen Konstante (8 beim PC), 8. die CPU ettet das Flag, CS und IPRegiste, spet weitee HadwaeInteupts duch Rücksetzen von IF und statet die zu Inteuptnumme gehöende Beabeitungsoutine. Die Statadesse de InteuptRoutine wid dabei de InteuptTabelle im Speiche entnommen (0:0 0:3FFH), dot sind die Anfangsadessen sämtliche InteuptRoutinen vemekt (jeweils 4 Byte, fü Inteupt n Offset bei 0:4*n, Segment bei 0:4*n+2). 9. Die InteuptRoutine wid duch einen IRETBefehl beendet, diese estauiet IP, CS und Flag Registe, setzt damit das untebochene Pogamm fot. De PIC muß übe einige Kommandoegiste initialisiet weden, das eledigt das BIOS beim Systemstat. Bei diese Initialisieung wid unte andeem festgelegt, auf welche Inteuptnummen die 8 InteuptLeitungen des PIC abgebildet weden. Im laufenden Betieb müssen vom Benutze 2 Registe des PIC beachtet weden: Duch Einscheiben von 20H in das Kontollegiste wid angezeigt, daß die Beabeitung des Inteupts abgeschlossen ist. Est danach läßt de PIC weitee Inteupts zu. Dieses Kontollegiste ist unte de Basisadesse des PIC zugänglich (20H beim PC). Jede (Hadwae)Inteupt Beabeitungsoutine muß somit die Befehlsfolge MOV AL,20H; OUT 20H,AL (Modula2: SY STEM.Out(20H,20H)) an ihem Ende enthalten. Im InteuptMaskieungsRegiste les und scheibba unte Basisadesse+1 (21H im PC) wid festgelegt, welche InteuptLeitungen zugelassen weden. Eine 1 im entspechenden Bit maskiet (spet) den zugehöigen Inteupt, eine 0 läßt ihn zu. In diesem Registe sollten nu einzelne Bits veändet weden: de alte Inhalt des Registes wid gelesen, ein Bit duch OR Veknüpfung mit einem geeigneten Muste gesetzt ode duch ANDVeknüpfung mit dem invesen Muste zuückgesetzt, de neue Inhalt dann ins Registe eingeschieben. Inteupt 3 beispielsweise wid mit de Assemblesequenz IN AL,21H; OR AL,08H; OUT 21H,AL gespet, mit AND AL,0F7H anstelle des ORBefehls zugelassen. In Modula2 ist das Inteupt MaskRegiste übe zwei Pozeduen zugänglich: CuentPioity() liest das Registe,
15 3 INTERRUPTS 13 NewPioity(mask) setzt den Inhalt neu fest. Beim AT wid duch diese Pozeduen auch de zweite PIC mit den Inteuptleitungen 8 15 beücksichtigt. Obiges Beispiel als Modula2 Zeile: SYSTEM.NewPioity(CARDINAL(BITSET(SYSTEM.CuentPioity()) ± {3}));. 3.2 SoftwaeInteupts weden duch den PozessoBefehl INT n (n=0 0FFH) in einem Pogamm angeodnet. De weitee Ablauf ist dann wie beim HadwaeInteupt (8. und 9.). Wähend jedoch beim HadwaeInteupt keine Paamete diekt an die Beabeitungsoutine übegeben weden (waum?), weden beim Softwae Inteupt die CPURegiste zu Paameteübegabe benutzt (zumindest bei den im Betiebssystem enthaltenen Inteupts). 3.3 Die InteuptTabelle des PC enthält die Adessen alle InteuptBeabeitungsRoutinen de Rechnesoftwae. Alle Aten von Inteupts im PC weden übe diese Adessenliste ausgefüht, dies ist duch den intenen Aufbau des 8086 festgelegt. Die Adesse de Beabeitungsoutine fü Inteuptnumme n ist in den 4 Speichebytes ab 0:4*n zu finden, die gesamte Tabelle hat somit einen Umfang von 400H Bytes. Ein goße Teil de Inteuptnummen ist in ihe Funktion festgelegt, bestimmte Beeiche sind feigegeben und können vom Benutze definiet weden. Hie ein Übeblick übe einige Funktionen: INT 0: Division duch Null, INT 1: Einzelschitt (fü Debugging), INT 2: Paitätsfehle (Speichefehle), INT 3: Haltepunkt (Beakpoint) Inteupt, INT 4: AithmetikÜbelauf, INT 5: Pint Sceen, Bildschimausduck, wid angespungen beim Dücken de PtScTaste (Duck), aktiviet eine BIOSRoutine, die den Bildschiminhalt ausduckt, INT 08H: IRQ 0 (InteuptLeitung 0), TimeHadwaeInteupt, INT 09H: IRQ 1, TastatuInteupt, die InteuptRoutine setzt den TastatuScanCode in das entspechende ASCIIZeichen um und scheibt beides in den Tastatupuffe, INT 0AH: IRQ 2, beim AT geift de zweite PIC hieauf zu, beim XT fei, INT 0BH: IRQ 3, zweite seielle Schnittstelle COM 2 (vom BIOS nicht benutzt), INT 0CH: IRQ 4, este seielle Schnittstelle COM 1 (vom BIOS nicht benutzt),
16 3 INTERRUPTS 14 INT 0DH: IRQ 5, zweite Duckeschnittstelle LPT 2 (vom BIOS nicht benutzt), INT 0EH: IRQ 6, DiskContolle INT 0FH: IRQ 7, este Duckeschnittstelle LPT 1 (vom BIOS nicht benutzt), INT 10H: Bildschim, alle BIOSRoutinen zum Scheiben und Lesen des Bildschims sind übe diesen Inteupt eeichba, INT 11H: HadwaeKonfiguation, Infomation in den Bits von Registe AX: 0 1: DiskLaufwek(e) vohanden, 2+3 Speichebänke auf de Hauptplatine, 4+5 voeingestellte VideoModus: 1 = CGA 40*25, 2 = CGA 80*25, 3 = MonochomModus 80*25, 6+7 Zahl de DiskettenLaufweke (falls Bit0 = 1), 911 Zahl de seiellen Schnittstellen, Zahl de DuckeSchnittstellen INT 12H: Speichegöße, Göße des Speiches in kbyte in Registe AX, INT 13H: Floppy/Haddisk, u. a. können einzelne ode eine Folge von Sektoen gelesen ode geschieben, einzelne Spuen fomatiet weden. INT 14H: Seielle Schnittstellen, diese vom Betiebssystem zu Bedienung vom COM1 COM4 vogesehene Inteupt ist nu mit Einschänkungen nutzba, da kein Puffe vogehalten wid. INT 16H: Tastatuabfage mit den Funktionen: AH=0: Watet auf Tastenduck, zuück mit AL=ASCIIWet, AH=ScanCode, AH=1: püft, ob eine Taste gedückt wude, zuück mit ZFlag=1: keine Taste gedückt, Z Flag=0: Taste gedückt, AL, AH wie oben, AH=2: fagt den Status von Sondetasten ab, gesetzte Bits in AL zeigen an, ob die entspechende Taste gedückt bzw. aktiv ist, Bit 0 = SHIFT echts, 1 = SHIFT links, 2 = CTRL (Stg), 3 = ALT gedückt, 4 = Scoll Lock, 5 = Num Lock, 6 = Caps Lock, 7 = Inset aktiv. INT 17H: Duckeausgabe, mit AH=0 wid das Zeichen in AL auf den duch DX adessieten Ducke ausgegeben (DX=0: LPT1), de Status des Duckes wid in AH zuückgemeldet mit Bit 0 = timeout, 3 = Fehle, 4 = Ducke selektiet, 5 = kein Papie, 6 = Acknowledge, 7 = nicht busy, mit AH=2 wid nu de Status festgestellt. INT 19H: Bootstap, das Betiebssystem wid neu geladen. INT 1AH: Systemzeit, die Funktionen weden duch Registe AH definiet: AH=0: Lesen de Systemzeit (TimeInteupts 18.3 mal po Sekunde), CX: obee 2 Byte, DX: untee zwei Byte des Zähles, AL>0: neue Tag seit dem letzten Lesen. AH=1: Setzen de Systemzeit übe CX und DX. Die weiteen Funktionen nu beim AT:
17 3 INTERRUPTS 15 AH=2: Lesen de batteiegepuffeten Echtzeituh, die Uhzeit wid in den Registen CH (Stunden), CL (Minuten) und DH (Sekunden) BCDcodiet übegeben. AH=3: Setzen de Echtzeituh, Registe wie beim Lesen, AH=4: Lesen des Datums von de Echtzeituh, Jah in CX, Monat und Tag in DH und DL wiede BCDcodiet, AH=5: Setzen des Datums, AH=6: Setzen de Alamzeit in de Echtzeituh (INT 70H), AH=7: Rücksetzen des Alams. INT 1BH: CTRLBeak, hiehe spingt das TastatuInteuptPogamm, wenn die Tastenkombination CTRLBeak (StgUntb) gedückt wude. INT 1CH: TimeInteupt, hiehe spingt die BeabeitungsRoutine des TimeHadwaeInteupts, die hie vemekte Adesse wid 18.3 mal po Sekunde angespungen. INT 20H 3FH: DOSAufufe, alle DOSRoutinen weden übe diesen Inteuptbeeich aktiviet, die übewiegende Anzahl übe INT 21H. INT 60H 6FH: Diese Beeich wid fü Anwendepogamme feigehalten, sind gleichzeitig mehee Pogamme aktiv, können hie Konflikte aufteten. INT 70H 77H weden beim AT vom zweiten InteuptContolle vewendet, die Eingänge 0 7 im zweiten PIC (InteuptLeitungen 8 15 im AT) weden auf die Inteuptnummen 70H 77H abgebildet. INT 70H (IRQ 8) wid vom EchtzeituhAlam benutzt, INT 75H (IRQ 13) vom Copozesso und INT 76H (IRQ 14) vom Festplattencontolle. Die übigen InteuptLeitungen des zweiten PIC sind fü den Anwende vefügba. 3.4 InteuptSoftwae Die Gundegeln noch einmal zusammengefaßt: InteuptRoutinen weden wie nomale Suboutinen (Pozeduen) geschieben, statt RET muß am Ende IRET stehen. Beim Aufuf von SoftwaeInteupts können Paamete nu in den Registen, nicht im Stack übegeben weden. Bei HadwaeInteupts ist keine diekte Paameteübegabe möglich, Vaiable weden auf veeinbaten Speicheplätzen abgelegt. Bei HadwaeInteupts wid in einem Initialisieungsteil de zugehöige Anschluß im PIC entspet und das InteuptFlag im CPUFlagRegiste gesetzt, am Ende de InteuptRoutine muß de PIC quittiet weden.
18 3 INTERRUPTS 16 Die Adesse de InteuptRoutine wid in de InteuptTabelle vemekt, dies kann diekt ode übe einen DOSAufuf gemacht weden. De alte Eintag in de InteuptTabelle kann dazu benutzt weden, schon vohandene Inteupt Routinen mit einzubinden (Spung an die alte Adesse statt IRET). Das folgende Beispiel ist fü die Benutzung im Debug geschieben, es installiet eine Routine fü den CTRLBeakInteupt (INT 1BH), die benutzt wid, um eine Endlosschleife abzubechen (Testschleife fü das Duckepot). Adesse Befehl 0100 SUB AX,AX ; Das DSRegiste wid auf 0 gesetzt, um das Speichesegment 0102 MOV DS,AX ; de InteuptTabelle zu adessieen, 0104 MOV [6E],CS ; 6EH = 4*1BH+2, CS = Segmentadesse de IntRoutine, 0108 MOV AX,110 ; Offsetadesse de IntRoutine, 010B MOV [6C],AX ; 6CH = 4*1BH 010E JMP 117 ; Spung zum eigentlichen Pogamm, 0110 SUB AL,AL ; die InteuptRoutine ändet die 0112 CS: ; Spungweite am Ende de Endlosschleife des 0113 MOV [124],AL ; Pogamms auf 0, 0116 IRET ; Ende de InteuptRoutine, 0117 MOV AX,40 ; die Adesse des Duckepots wid aus 011A MOV DS,AX ; dem BIOSRAM geholt und 011C MOV DX,[8] ; in das Registe DX geladen, 0120 INC AL ; alle Bitmuste weden nacheinande möglichst schnell an 0122 OUT DX,AL ; das Duckepot ausgegeben, 0123 JMP 120 ; unbedingte Spung zum Schleifenanfang, 0125 INT 20 ; DOSInteupt zu Pogammbeendigung. Ein etwas längees Assemblebeispiel eine speicheesidente InteuptRoutine fü den TimeInteupt 1CH ist in CLOCK.ASM ausgefüht. De Zugang zu InteuptTabelle ist dot übe DOSAufufe ealisiet. JPIModula2 steuet die Einhaltung de genannten Bedingungen duch CompileAnweisungen: $J+ legt fest, daß Pozeduen mit IRET enden, $J macht dies wiede ückgängig. $C FF odnet an, daß beim Pozedueintitt alle Registe geettet weden, Standad ist $C F0, nu ES, DS, SI und DI weden geettet. $W+ vebietet die Vewendung von Registevaiablen. Wenn die InteuptRoutine Zugang zu (globalen) Vaiablen haben soll, müssen diese im Speiche gehalten weden. Im Modul RS232.MOD kann die Vewendung diese Compileanweisungen vefolgt weden. Diese Modul enthält eine InteuptRoutine zu Bedienung de seiellen Schnittstelle im PC.
19 4 ZEIT IM PC 17 4 Zeit im PC Nahezu übeall im Expeimentalbeeich spielt die Zeit als Paamete eine gewisse Rolle: als epoduziebae Zählzeit eines Eeigniszähles, als Ansteuefequenz eines Schittmotos, als Watezeit, die bei einem AnalogDigitalWandle eingehalten weden muß, bis ein gültige Wet voliegt, als Koodinate, von de andee Paamete Tempeatu, Duck, usw. funktional abhängen sollen. De PC ist von seinem Konzept he ( Pesonal Compute) nicht fü diesen Anwendungsbeeich gebaut, ein exakte Echtzeitbetieb ist nicht ode nu in begenztem Umfang möglich. Dies hängt in este Linie damit zusammen, daß die Latenzzeit fü Inteupts (Zeit zwischen Anfodeung und Spung zu Beabeitungsoutine) in gewissen Genzen schwankt. Nu dot, wo solche Ungenauigkeiten keine Rolle spielen (z. B. bei de Taktfequenz eines Schittmotos), können Zeiten vom PC vogegeben weden, wo es auf hohe Genauigkeit und Repoduziebakeit ankommt (z. B. bei de Meßzeit eines Eeigniszähles), sollte de Zeittakt mit im Peipheiegeät geneiet weden. Im PC stehen veschiedene Uhen fü den Anwende zu Vefügung: Kuze und mittlee Watezeiten (10 µsec sec) ealisiet man am einfachsten duch Abzählen des CPUTaktes mit geeigneten FORSchleifen. Diese sollten vo de Benutzung geeicht weden, entwede am TimeTakt ode an de Echtzeituh des PC. Ein Beispiel im Modul SM; die DelayPozedu von Modula2 abeitet ähnlich, die Zeiteinheit ist dot 1 millisec. Die Methode hat den offensichtlichen Nachteil, daß de Rechne wähend de Watezeit fü andee Aktionen ausfällt. Oft kann dies abe in Kauf genommen weden (kuze Laufzeit eines Schittmotos lange Meßzeit). Längee Watezeiten sind einfache duch Abfage de System ode Echtzeituh ode übe den Time Inteupt zu geneieen. Daneben besteht natülich auch die Möglichkeit, Zeiten von außen he vozugeben (echtzeitige Tastenduck des Benutzes, HadwaeInteupt von einem Geät gut geeignet ist IRQ 7). 4.1 ZeitInteupts Auße dem schon bespochenen BIOSInteupt 1AH zu Abfage de Echtzeituh und des TimeZähles gibt es zwei DOSInteupts, mit denen man Zeit und Datum de PCSystemuh efagen kann: Übe INT 21H mit AH=2CH efäht man die Systemzeit in folgenden Registen: CH=Stunden, CL=Minuten, DH=Sekunden, DL=1/100 Sekunden, übe INT 21H mit AH=2AH das Datum mit CX=Jah, DH=Monat, DL=Tag. Ein Anwendungsbeispiel ist die Pozedu GetTime, die einen Sting mit dem Aufbau JJJJMMTThhmm konstuiet. Neben diesen Inteupts zu Zeitabfage können die beiden TimeTaktInteupts (INT 8, INT 1CH) benutzt weden, wenn eine vogegebene Zeitabfolge einzuhalten ist. INT 8 wid bei jedem TimeInteupt aktiviet, übe eine BIOSRoutine wid die Systemzeit (TimeZähle im BIOSRAM) inkementiet und unte andeem de INT 1CH aktiviet. Diese ist fü Benutzeanwendungen vogesehen, die dot angehängte InteuptRoutine wid ca. 18 mal po Sekunde aufgeufen (Beispiel in CLOCK.ASM). De Ablauf ist wie fü einen SoftwaeInteupt typisch, abgesehen davon, daß jede Spee des Hadwae Inteupts INT 8 (duch DI ode Maskieung) auch den INT 1CH betifft.
20 4 ZEIT IM PC 18 In Sondefällen ist es auch möglich, INT 8 diekt zu benutzen. Das kann dann sinnvoll sein, wenn duch eine Ändeung de TimeZeitkonstante (s. nächste Abschnitt) fü Steueungsanwendungen ein schnellee Zeittakt im PC ezeugt weden soll. Die diekte Benutzung von INT 8 hat den Voteil, daß zu Beabeitung des TimeInteupts seh kuze Routinen benutzt weden können, daduch auch ein elativ schnelle Zeittakt möglich wid. Wid von de angehängten InteuptRoutine nicht zu BIOS Routine weitevekettet was aus Zeitgünden geboten sein kann, muß in de InteuptRoutine de PIC quittiet weden, da sonst keine weiteen Inteupts zugelassen weden. Außedem ist daauf zu achten, daß die Benutzung des INT 8 und die geändete Zeitkonstante zu eine undefinieten ode falschen Systemzeit fühen, diese sollte danach wiede ichtiggestellt weden. 4.2 De Timebaustein 8253/8254 De Zeittakt fü die Systemuh des PC wid duch einen Zeitgebebaustein (Time) 8253 bzw. den funktionsähnlichen 8254 ezeugt. ICBausteine dieses Typs weden meist auch auf Peipheiekaten vewendet, wenn dot ein pogammiebae Zeittakt benötigt wid. In dem Timebaustein sind 3 unabhängige 16BitZähle integiet, die Zählkapazität po Kanal betägt mithin 2 16, die Zählweise ist abwäts, po Kanal gibt es einen Zähleingang (Clock) und einen Ausgang, de den Nullduchgang des jeweiligen Zähles anzeigt. Die einzelnen Zähle des 8253 können von ihem Aufbau he auch als Eeigniszähle benutzt weden, diese Vewendung ist abe aus veschiedenen Günden poblematisch, im allgemeinen auch von de Beschaltung nicht vogesehen. Bei de Vewendung als Taktgeneato (Time) weden die Zähle auf bestimmte Anfangswete pogammiet (Peset), die beim Nullduchgang jeweils wiede estauiet weden. Daduch sind 2 16 unteschiedliche Zeitkonstanten pogammieba. Vom Timebaustein weden 4 aufeinandefolgende Adessen im Ein/Ausgabeadessbeeich belegt: Timekanal0 ist übe die Basisadesse zugänglich (im PC 40H), Time1 übe Basis+1, Time2 übe Basis+2, das Steueegiste fü alle Time übe Basis+3. Die 3 Timekanäle im PC weden fü die folgenden Funktionen genutzt: Time0 veanlaßt bei jedem Nullduchgang einen TimeInteupt, de Ausgang ist an die IRQ0Leitung angeschlossen. Time1 steuet das Auffischen de dynamischen RAMBausteine. Zu diesem Zweck weden im Zeitabstand von 15 µsec DMAZyklen im DMAContolle angestoßen. Time2 liefet ein Rechtecksignal zu Ansteueung des eingebauten Lautspeches. Die Eingangsfequenz fü alle Timekanäle liefet ein quazstabilisiete Fequenzgeneato. Dessen Fequenz ist so gewählt, daß 2 16 TimeInteupts genau eine Stunde entspechen. Time0 ist auf 2 16 pogammiet, die Quazfequenz ist somit genau /3600= Hz. IBM vewendet Hz, Olivetti beim M 24 aus Kostengünden Hz. Aus de obigen Bedingung (2 16 TimeInteupts po Stunde) eklät sich auch de etwas willkülich escheinende Timetakt von ca. 18 Hz. 1 Beim M 24 weden de Takt fü den Time und de fü die seielle Schnittstelle ( Hz) aus dem gleichen Quaz duch Dei bzw. Zweiteilung ezeugt.
21 4 ZEIT IM PC 19 Die Pogammieung des Times 8253 Jede Timekanal n des 8253 wid duch Einscheiben eines Steuebytes in das Steueegiste (Basisadesse+3) und anschließendes Einscheiben des PesetWetes auf die Timeadesse n (Basis+n) pogammiet. Aufbau des Steuebytes fü den Time 8253: BIT S1 S0 RL1 RL0 M2 M1 M0 BCD S1, S0 selektieen den Timekanal (00, 01, 10 fü Time0, 1, 2). RL1, RL0 legen fest, wie de Timekanal beschieben (Peset) und gelesen weden weden soll (10: nu höhewetiges Byte, 01: nu niedewetiges Byte, 11: zuest niedewetiges, dann höhewetiges Byte). 00 auf diesen Bits odnet an, daß de aktuelle Zählestand zum Lesen zwischengespeichet weden soll. M2, M1, M0 legen die Betiebsat des Zähles fest, in Betiebsat 2 (010) wid bei jedem Nullduchgang ein kuze Impuls am Ausgang ezeugt, de zum Aktivieen von Inteuptleitungen und ähnlichem benutzt weden kann, in Betiebsat 3 (011) abeitet de Zähle als Rechteckgeneato. BCD legt fest, ob dezimal (1) ode binä (0) gezählt weden soll. Dezimal betägt die Zählkapazität 10 4 (4 Stellen), binä Nach dem Einscheiben des Steuebytes sollte wie in den RLBits festgelegt de PesetWet fü den jeweiligen Zählekanal eingetagen weden. Das Lesen des aktuellen Zählestands kann jedezeit (nach Zwischenspeicheung (Latching)) duch Einlesen de duch die Pogammieung festgelegten ByteAnzahl efolgen. De PesetWet läßt sich nach de Anfangspogammieung auch ohne neues Steuebyte änden. Eine Modula2Pozedu fü die Initialisieung könnte ungefäh so aussehen: CONST tbase =...; (* time base addess *) l = 3; (* ead/load low byte, then high byte *) PROCEDURE TimeInit(tn, mode : SHORTCARD; (* tn=0..2, mode=0..5 *) peset : CARDINAL); (* time constant *) BEGIN SYSTEM.Out(tbase+3, (tn<<6)+(l<<4)+(mode<<1)); (* command *) SYSTEM.Out(tbase+tn, SHORTCARD(peset)); (* low byte *) SYSTEM.Out(tbase+tn, SHORTCARD(peset>>8)); (* high byte *) END TimeInit;
22 5 PARALLELE SCHNITTSTELLEN 20 5 Paallele Schnittstellen weden benutzt, um Peipheiegeäte übe mehee Leitungen gleichzeitig anzuspechen und um Daten schnell byte ode wotweise einzulesen ode auszugeben. Ein Standadgeät, das im allgemeinen auf diese Weise angeschlossen ist, ist de Ducke. Die Duckeschnittstelle abeitet mit 8 Datenleitungen (ein Byte wid jeweils komplett zum Ducke übetagen), eine Leitung, die anzeigt, daß die Daten gültig sind und eine Leitung, die meldet, ob de Ducke beschäftigt ist. Weitee Leitungen sind fü Statusmeldungen zuständig. Bei konfiguiebaen PaallelSchnittstellen (die also nicht ausschließlich fü einen Vewendungszweck vogesehen sind wie die Duckeschnittstelle) wid übewiegend de Baustein 8255 vewendet, fü festgelegte Spezialanwendungen sind oft Sondeanfetigungen notwendig (schnelle Kopplung von extenen Geäten an den PC). 5.1 Die Duckeschnittstelle des PC wid, da nu fü einen speziellen Zweck die Ansteueung des Duckes vogesehen, übe festvedahtete, nicht weite konfiguiebae Ausgabe und EingabeRegiste betieben. Einen schematischen Übeblick übe die Schaltung und die Zuodnung de RegisteBits zu 25poligen Buchse am PC gibt Abb. 6. P C B U S OutputRegiste Basis Adesse Basis Ad t t. 25pol. DBuchse 2. 9 Data0. Data7 1 Stobe 14 AutoLF 16 Init 17 Select. t t InputRegiste Basis Adesse Basis Ad + 2 P C B U S IRQ 7 H HHH H 15 Eo 13 Online 12 Pape Out 10 Ackn 11 Busy t Basis Ad + 1 Abbildung 6: Schaltung des Duckeanschlusses im PC, Pins de 25poligen DBuchse sind mit Masse vebunden. : Invetieung des Signals. Übe die Basisadesse de Duckeschnittstelle (aus dem BIOSRAM bei 40H:8) weden die 8 Datenleitungen zum Ducke angespochen, ih Status kann übe diese Adesse festgelegt und gelesen weden.
23 5 PARALLELE SCHNITTSTELLEN 21 Das Ausgabeegiste mit Basisadesse+2 bedient mit den Bits 0 3 die zum Ducke gehenden Kommandoleitungen. Bit 4 dieses Registes legt fest, ob die vom Ducke kommende AcknowledgeLeitung auf die IRQ7Leitung des PC zugeifen und damit einen Inteupt auslösen kann. Auch de Status diese Leitungen kann übe Basisadesse+2 eingelesen weden. Die vom Ducke kommenden Statusleitungen sind mit den Bits 3 7 eines Eingabeegiste vebunden, das unte Basisadesse+1 gelesen weden kann. Insgesamt sind somit duch die Duckeschnittstelle in jedem PC 12 Ausgabeleitungen und 5 Eingabeleitungen vohanden, eine Eingabeleitung kann als Inteuptleitung benutzt weden. Die Signale sind TTLkompatibel, d. h. logisch 1 ist nominell +5 V, logisch 0 nominell 0 V. Zumindest die Datenleitungen und die Stobeleitung lassen elativ niedeohmigen Betieb zu (> 150 Ω). Vewendet man paaweise vedillte Kabel ode Flachbandkabel zum Anschluß, so ist duch die Anodnung de Masseleitungen ein seh stösichee Betieb bis zu Fequenzen von meh als 100 khz möglich. Mithin ist die Duckeschnittstelle auch seh gut fü Steueungszwecke zu gebauchen. Eine Anwendung, die Schittmotosteueung und die Abfage de Endschalte an einem Monochomato, zeigt de Modul SM. Die IRQ7Leitung wid vom Betiebssystem nicht genutzt (wie auch die IRQ5Leitung eine eventuell vohandenen zweiten Duckeschnittstelle), dahe bietet sie eine seh einfach zu handhabende Möglichkeit fü AnwendeInteupts. An den AcknowledgeAnschluß (Pin 10) wid das Geät angeschlossen, das den Inteupt auslösen soll. In Fage kommen z. B. PCEinsteckkaten, die nach eine Initialisieung duch den Rechne im wesentlichen selbständig abeiten (Bildaufnahme, Multichannelscaling, Impulshöhenanalyse) und von Zeit zu Zeit die gesammelten Daten an den PC übegeben, ode extene Datenefassungssysteme mit ähnliche Abeitsweise. De PC baucht dann nicht ständig auf de Laue zu liegen, sonden wid zu gegebene Zeit zu Ausfühung de passenden InteuptRoutine veanlaßt. Die AcknowledgeLeitung muß wie aus de Schnittstellenschaltung esichtlich duch das Setzen von Bit 4 im Ausgabeegiste Basisadesse+2 mit de IRQ7Leitung vebunden weden, de Inteupt kann dann mit einem kuzen Impuls (einige Mikosekunden) ausgelöst weden. Fü Inteupt Routine und PIC gelten die schon bespochenen Regeln. Das Modula2Pogamm IRQ7 vedeutlicht diese nochmals an einem einfachen Beispiel, als Inteuptquelle dient ein an die Duckeschnittstelle angeschlossene Schalte. 5.2 De pogammiebae PaallelE/ABaustein 8255 A Auf fast allen Steckkaten, die paallele Ein/Ausgabeleitungen zu Vefügung stellen und/ode übe solche statischen Leitungen andee Bausteine beteiben (D/A, A/DWandle, Zähle, Relais), wid zu diesem Zweck de IntelSchaltkeis 8255 A eingesetzt. E besitzt 24 pogammiebae E/ALeitungen, die in dei Guppen zu je 8 unteteilt sind (Pots A, B, C). Pot C läßt sich weite in 2 Guppen zu je 4 aufteilen (CH, CL). Fü jede de Guppen kann (muß) die Betiebsat (Eingabe ode Ausgabe) definiet weden, so daß je nach Pogammieung 0, 4, 8 24 Eingabe und entspechend 24, 20, 16 0 Ausgabeleitungen vohanden sind. De Baustein belegt 4 aufeinandefolgende Adessen im E/AAdessaum, die Basisadesse ist Pot A zugeteilt, Basis+1 Pot B, Basis+2 Pot C, auf Basisadesse+3 wid das Steuebyte geschieben, das entwede Betiebsat und Betiebsmodus festlegt ode ein Einzelbitkommando enthält. Die genaue Beschaltung de E/ALeitungen (Steckeat und belegung etc.) vaiiet von Kate zu Kate und muß im Einzelfall de Bescheibung entnommen weden.
24 5 PARALLELE SCHNITTSTELLEN 22 Aufbau des Steuebytes fü den Paallelbaustein 8255 A (Betiebsat und modus): BIT M2 M1 A CH M0 B CL BIT 7 = 1 legt fest, daß mit diesem Kommandobyte Betiebsat und Betiebsmodus festgelegt weden sollen. M2, M1 definieen den Betiebsmodus fü Pot A und CH, M0 den fü Pot B und CL, diese 3 Bits sollten auf 0 gesetzt weden, dies bedeutet nomale Ein ode Ausgabe. Die andeen möglichen Betiebsmodi (automatische Quittungs ode Inteuptbetieb) sind hadwaemäßig meist nicht vogesehen. A, CH, B, CL definieen die Betiebsat fü die einzelnen Guppen, ein auf 0 gesetztes Bit bedeutet Ausgabe, ein auf 1 gesetztes Eingabe. Das Steuebyte 83H wüde mithin die Guppen A und CH als Ausgabe, die Guppen B und CL als Eingabeleitungen festlegen. Wie beim Duckepot kann auch beim 8255 de aktuelle Status de Ausgabeleitungen duch einen Input Befehl gelesen weden. Dies ist wichtig, wenn es daauf ankommt, nu einzelne Leitungen (Bits) anzuspechen, ohne die übigen eines Pots ode eine Guppe zu veänden. Fü Pot C gibt es beim 8255 eine zusätzliche Möglichkeit, einzelne Bits gezielt anzuspechen, das Einzelbitkommando, bei dem das Steuebyte (Basisadesse+3) wie folgt aufgebaut sein muß: BIT N2 N1 N0 W BIT 7 = 0 ist das Zeichen fü ein Einzelbitkommando. N2, N1, N0 adessieen das Bit in Pot C, das auf den Wet von W gesetzt wid. 01H wüde Bit 0 auf 1 setzen, 06H Bit 3 auf 0, 0FH Bit 7 auf 1. Beispiele fü das Abeiten mit dem Baustein 8255 gibt de Modul Inteface, de Pozeduen zum Betieb mehee extene Geäte (Zähle, Relais, DigitalAnalogWandle) beinhaltet, die übe zwei 8255 an den PC angeschlossen sind.
Inhalt der Vorlesung A1
PHYSIK A S 03/4 Inhalt de Volesung A. Einfühung Methode de Physik Physikalische Gößen Übesicht übe die vogesehenen Theenbeeiche. Teilchen A. Einzelne Teilchen Bescheibung von Teilchenbewegung Kineatik:
MehrDie Hohman-Transferbahn
Die Hohman-Tansfebahn Wie bingt man einen Satelliten von eine ednahen auf die geostationäe Umlaufbahn? Die Idee: De geingste Enegieaufwand egibt sich, wenn de Satellit den Wechsel de Umlaufbahnen auf eine
MehrWEKA FACHMEDIEN GmbH. Technische Spezifikationen für die Anlieferung von Online-Werbemitteln
WEKA FACHMEDIEN GmbH Technische Spezifikationen fü die Anliefeung von Online-Webemitteln Jonathan Deutekom, 01.07.2012 Webefomen Webefom Beite x Höhe Fullsize Banne 468 x 60 Leadeboad 728 x 90 Rectangle
MehrKOMPONENTENTAUSCH. Elmar Zeller Dipl. Ing (FH), MBA Quality-Engineering
KOMPONENTENTAUSCH Komponententausch Beim Komponententausch weden nacheinande einzelne Komponenten zweie Einheiten vetauscht und ih Einfluss auf das Qualitätsmekmal untesucht. Ziele und Anwendungsbeeiche:
MehrUnverbindliche Musterberechnung für den Wealthmaster Classic Plan von
Unvebindliche Mustebeechnung fü den Wealthmaste Classic Plan von Die anteilsgebundene Lebensvesicheung mit egelmäßige Beitagszahlung bietet Ihnen die pefekte Kombination aus de Sicheheit eine Kapitallebensvesicheung
Mehr(z. B.: 1 Baud = 1 bit/s, wenn je Schritt ein Bit übertragen wird.)
1.1.1. Übungen zu asynchonen, seiellen Schnittstelle 1) Was vesteht man unte dem Begiff Baudate und wie ist e definiet? Altenativ zu Übetagungsate kann die Übetagungsgeschwindigkeit duch die Schittgeschwindigkeit
MehrSoftware Engineering Projekt
FHZ > FACHHOCHSCHULE ZENTRALSCHWEIZ HTA > HOCHSCHULE FÜR TECHNIK+ARCHITEKTUR LUZERN Softwae Engineeing Pojekt Softwae Requiements Specification SRS Vesion 1.0 Patick Bündle, Pascal Mengelt, Andy Wyss,
MehrElektrostatik. Arbeit und potenzielle Energie
Elektostatik. Ladungen Phänomenologie. Eigenschaften von Ladungen 3. Käfte zwischen Ladungen, quantitativ 4. Elektisches Feld 5. De Satz von Gauß 6. Potenzial und Potenzialdiffeenz i. Abeit im elektischen
MehrMagische Zaubertränke
Magische Zaubetänke In diese Unteichtseinheit waten auf Ihe SchüleInnen magische Zaubetänke, die die Fabe wechseln. Begiffe wie Säue, Base, Indikato und Salz können nochmals thematisiet bzw. wiedeholt
MehrZahnarztangst? Wege zum entspannten Zahnarztbesuch. Mit einer von Marc A. Pletzer konzipierten und gesprochenen Trance. Bearbeitet von Lea Höfel
Zahnaztangst? Wege zum entspannten Zahnaztbesuch. Mit eine von Mac A. Pletze konzipieten und gespochenen Tance Beabeitet von Lea Höfel 1. Auflage 2012. Taschenbuch. 136 S. Papeback ISBN 978 3 7945 2870
MehrProgramm für alle Öffentlich-rechtlicher Rundfunk
Wie untescheiden sich öffentlich-echtliche und pivate Sende in Pogamm und Finanzieung? Die Tabellen stellen einige Unteschiede da. Macht aus den Zahlen aussagekäftige Gafiken. Anteile de Sendungen veschiedene
MehrSteuerungskonzept zur Vermeidung des Schattenwurfs einer Windkraftanlage auf ein Objekt
teueungskonzept zu Vemeidung des chattenwufs eine Windkaftanlage auf ein Objekt Auto: K. Binkmann Lehgebiet Elektische Enegietechnik Feithstaße 140, Philipp-Reis-Gebäude, D-58084 Hagen, fa: +49/331/987
MehrStereo-Rekonstruktion. Stereo-Rekonstruktion. Geometrie der Stereo-Rekonstruktion. Geometrie der Stereo-Rekonstruktion
Steeo-Rekonstuktion Geometie de Steeo-Rekonstuktion Steeo-Kalibieung Steeo-Rekonstuktion Steeo-Rekonstuktion Kameakalibieung kann dazu vewendet weden, um aus einem Bild Weltkoodinaten zu ekonstuieen, falls
MehrFolgeanleitung für Fachlehrer
1. Das richtige Halbjahr einstellen Folgeanleitung für Fachlehrer Stellen sie bitte zunächst das richtige Schul- und Halbjahr ein. Ist das korrekte Schul- und Halbjahr eingestellt, leuchtet die Fläche
MehrFür den Endkunden: Produkt- und Preissuche
Fü den Endkunden: Podukt- und Peissuche Ducke Mit finde.ch bietet PoSelle AG eine eigene, umfassende Podukt- und Peissuchmaschine fü die Beeiche IT und Elektonik. Diese basiet auf de umfassenden Datenbank
Mehrüber insgesamt Vorvertragliche Erläuterungen zum Darlehensantrag Name aller Darlehensnehner Sehr geehrter Kunde,
dessaue st. 5 I 06862 dessau-oßlau email info@pobaufi.de I www.pobaufi.de Kundenanschift Ih Anspechpatne Vovetagliche Eläuteungen zum Dalehensantag Name alle Dalehensnehne übe insgesamt Dalehensbetag Seh
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
MehrVirtuelle COM-Schnittstelle umbenennen
Virtuelle COM-Schnittstelle umbenennen COM-Nummer eines USB/Seriell-Wandlers verändern Wenn man ein Gerät mit einem USB/Seriell-Wandler neu anschließt, wird meist eine neue virtuelle COM- Schnittstelle
MehrPKV-Beitragsoptimierer-Auftragserteilung
PKV-Beitagsoptimiee-Auftagseteilung zu einmaligen Beatung Bei dem Vesichee : mit de Vetagsnumme : fü folgende Pesonen : Auftaggebe Name : Geb.-Dat. : Staße : PLZ und Ot : Telefon : Mobil : E-Mail : Beuf
MehrFinanzmathematik Kapitalmarkt
Finanzmathematik Kapitalmakt Skiptum fü ACI Dealing und Opeations Cetificate und ACI Diploma In Zusammenabeit mit den ACI-Oganisationen Deutschland, Luxemboug, Östeeich und Schweiz Stand: 02. Apil 2010
MehrDas makroökonomische Grundmodell
Univesität Ulm 89069 Ulm Gemany Dipl.-WiWi Sabina Böck Institut fü Witschaftspolitik Fakultät fü Mathematik und Witschaftswissenschaften Ludwig-Ehad-Stiftungspofessu Wintesemeste 2008/2009 Übung 3 Das
MehrWie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.
Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann. Einleitung Es kommt vor, dass im Handel Disketten angeboten werden, die Styles und Registrationen
MehrHandbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)
Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...
Mehreasyident Türöffner easyident Türöffner Art. Nr. FS-0007 FS Fertigungsservice
easyident Türöffner Art. Nr. FS-0007 Wir freuen uns, das sie sich für unser Produkt easyident Türöffner, mit Transponder Technologie entschieden haben. Easyident Türöffner ist für Unterputzmontage in 55mm
MehrEinführung in die Physik I. Wärme 3
Einfühung in die Physik I Wäme 3 O. von de Lühe und U. Landgaf Duckabeit Mechanische Abeit ΔW kann von einem Gas geleistet weden, wenn es sein olumen um Δ gegen einen Duck p ändet. Dies hängt von de At
MehrLieferschein Dorfstrasse 143 CH - 8802 Kilchberg Telefon 01 / 716 10 00 Telefax 01 / 716 10 05 info@hp-engineering.com www.hp-engineering.
Lieferschein Lieferscheine Seite 1 Lieferscheine Seite 2 Inhaltsverzeichnis 1. STARTEN DER LIEFERSCHEINE 4 2. ARBEITEN MIT DEN LIEFERSCHEINEN 4 2.1 ERFASSEN EINES NEUEN LIEFERSCHEINS 5 2.1.1 TEXTFELD FÜR
MehrFolgeanleitung für Klassenlehrer
Folgeanleitung für Klassenlehrer 1. Das richtige Halbjahr einstellen Stellen sie bitte zunächst das richtige Schul- und Halbjahr ein. Ist das korrekte Schul- und Halbjahr eingestellt, leuchtet die Fläche
MehrS7-Hantierungsbausteine für R355, R6000 und R2700
S7-Hantierungsbausteine für R355, R6000 und R2700 1. FB90, Zyklus_R/W Dieser Baustein dient zur zentralen Kommunikation zwischen Anwenderprogramm und dem Modul R355 sowie den Geräten R6000 und R2700 über
MehrElektrische Logigsystem mit Rückführung
Mathias Arbeiter 23. Juni 2006 Betreuer: Herr Bojarski Elektrische Logigsystem mit Rückführung Von Triggern, Registern und Zählern Inhaltsverzeichnis 1 Trigger 3 1.1 RS-Trigger ohne Takt......................................
Mehr1 Aufgaben zu Wie funktioniert ein Computer?
71 1 Aufgaben zu Wie funktioniert ein Computer? Netzteil a) Welche Spannungen werden von PC-Netzteilen bereitgestellt? 3.3 V, 5 V, 12 V, -5 V, -12 V. b) Warum können PC-Netzteile hohe Leistungen liefern,
MehrUnterlagen Fernstudium - 3. Konsultation 15.12.2007
Untelagen Fenstudium - 3. Konsultation 5.2.2007 Inhaltsveeichnis Infomationen u Püfung 2 2 Aufgabe 7. Umstömte Keisylinde mit Auftieb 3 3 Aufgabe 8. Komplexes Potential und Konfome Abbildung 0 Infomationen
MehrKlausur zur Mikroprozessortechnik
Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrDatensicherung. Beschreibung der Datensicherung
Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten
MehrWahltaste der Punktzüge. Hier drücken für die Steuerung der Punktzüge. PZ Posidisplay-light
ÜBEBLICK 19 TOUCHSCEEN WAHL EINES ZU KONTOLLIEENDEN GEÄTE-TYPS: Die Auswahl der Gerätetypen die man vom Posidisplay-light aus steuern kann sind im oberen Teil des Bildschirmes angezeigt. Wahltaste der
MehrLPT1 Anschluss mit PCMCIA Karte
1. Allgemeines LPT1 Anschluss mit PCMCIA Karte verwendete Hardware: Lenze PC Systembusadapter EMF 2173-V003 PCMCIA Karte Firma QUATECH Typ SPP-100 Auf die Installation der PCMCIA Karte wird hier nicht
MehrHandbuch Fischertechnik-Einzelteiltabelle V3.7.3
Handbuch Fischertechnik-Einzelteiltabelle V3.7.3 von Markus Mack Stand: Samstag, 17. April 2004 Inhaltsverzeichnis 1. Systemvorraussetzungen...3 2. Installation und Start...3 3. Anpassen der Tabelle...3
MehrGeoPilot (Android) die App
GeoPilot (Android) die App Mit der neuen Rademacher GeoPilot App machen Sie Ihr Android Smartphone zum Sensor und steuern beliebige Szenen über den HomePilot. Die App beinhaltet zwei Funktionen, zum einen
MehrMicrocontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1
Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated
MehrEigenen Farbverlauf erstellen
Diese Serie ist an totale Neulinge gerichtet. Neu bei PhotoLine, evtl. sogar komplett neu, was Bildbearbeitung betrifft. So versuche ich, hier alles einfach zu halten. Ich habe sogar PhotoLine ein zweites
MehrTESTEN SIE IHR KÖNNEN UND GEWINNEN SIE!
9 TESTEN SIE IHR KÖNNEN UND GEWINNEN SIE! An den SeniorNETclub 50+ Währinger Str. 57/7 1090 Wien Und zwar gleich in doppelter Hinsicht:!"Beantworten Sie die folgenden Fragen und vertiefen Sie damit Ihr
MehrVersuch 3: Sequenzielle Logik
Versuch 3: Sequenzielle Logik Versuchsvorbereitung 1. (2 Punkte) Unterschied zwischen Flipflop und Latch: Ein Latch ist transparent für einen bestimmten Zustand des Taktsignals: Jeder Datensignalwechsel
MehrRS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen
Elektronik Praktikum / Digitaler Teil Name: Jens Wiechula, Philipp Fischer Leitung: Prof. Dr. U. Lynen Protokoll: Philipp Fischer Versuch: 3 Datum: 24.06.01 RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen
MehrRO-Serie CAN-Übertragungsprotokoll
RO-Serie CAN-Übertragungsprotokoll Juni 2009 1 EINLEITUNG...3 2 REGISTER-ZUGRIFFE...4 2.1 Was sind überhaupt Register?... 4 2.2 Registerzugriff mit 8/ 16 oder 32 Bit-Datenbreite... 4 2.3 Registerbelegung...
MehrZur drittletzten Zeile scrollen
1 Fragen und Antworten zur Computerbedienung Thema : Zur drittletzten Zeile scrollen Thema Stichwort Programm Letzte Anpassung Zur drittletzten Zeile scrollen Scrollen VBA Excel 1.02.2014 Kurzbeschreibung:
MehrEinführung in. Logische Schaltungen
Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von
MehrInstallation OMNIKEY 3121 USB
Installation OMNIKEY 3121 USB Vorbereitungen Installation PC/SC Treiber CT-API Treiber Einstellungen in Starke Praxis Testen des Kartenlesegeräts Vorbereitungen Bevor Sie Änderungen am System vornehmen,
MehrAnzeige von eingescannten Rechnungen
Anzeige von eingescannten Rechnungen Wenn Sie sich zu einer Eingangsrechnung die eingescannte Originalrechnung ansehen möchten, wählen Sie als ersten Schritt aus Ihrem Benutzermenü unter dem Kapitel Eingangsrechnung
MehrKonfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014
Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...
MehrDokumentation IBIS Monitor
Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt
MehrAccess 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA
Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten
MehrBedienungsanleitung Anlassteilnehmer (Vereinslisten)
Bedienungsanleitung Anlassteilnehmer Dieses Programm ist speziell für Vereine entworfen. Es ist lizenzfrei verwendbar und gratis. Das Programm ist mit Excel 2010 erstellt worden und enthält VBA Programmierungen,
MehrFacharbeit Informatik. Thema:
Facharbeit Informatik Thema: Rechneraufbau Mit Locad 2002 1 Inhaltsangabe Inhalt: Seite: 1. Einleitung 3 2. Inbetriebnahme der Schaltung 3 3. Eingabe 4 4. CPU 5 5. RAM/HDD 8 6. Ausgabe 10 7. Auf einer
MehrEinführung in die Finanzmathematik - Grundlagen der Zins- und Rentenrechnung -
Einfühung in die Finanzmathematik - Gundlagen de ins- und Rentenechnung - Gliedeung eil I: insechnung - Ökonomische Gundlagen Einfache Vezinsung - Jähliche, einfache Vezinsung - Untejähliche, einfache
MehrPeDaS Personal Data Safe. - Bedienungsanleitung -
PeDaS Personal Data Safe - Bedienungsanleitung - PeDaS Bedienungsanleitung v1.0 1/12 OWITA GmbH 2008 1 Initialisierung einer neuen SmartCard Starten Sie die PeDaS-Anwendung, nachdem Sie eine neue noch
MehrJederzeit Ordnung halten
Kapitel Jederzeit Ordnung halten 6 auf Ihrem Mac In diesem Buch war bereits einige Male vom Finder die Rede. Dieses Kapitel wird sich nun ausführlich diesem so wichtigen Programm widmen. Sie werden das
MehrComputer-Graphik II. Kompexität des Ray-Tracings. G. Zachmann Clausthal University, Germany cg.in.tu-clausthal.de
lausthal ompute-aphik II Komplexität des Ray-Tacings. Zachmann lausthal Univesity, emany cg.in.tu-clausthal.de Die theoetische Komplexität des Ray-Tacings Definition: das abstakte Ray-Tacing Poblem (ARTP)
MehrEinfache Computersteuerung für Modellbahnen
Einfache Computersteuerung für Modellbahnen Was soll eigentlich mit einem Computer gesteuert werden? Diese Frage muss man sich als erstes stellen: - Man braucht für Ausstellungen einen kompletten automatischen
Mehricloud nicht neu, aber doch irgendwie anders
Kapitel 6 In diesem Kapitel zeigen wir Ihnen, welche Dienste die icloud beim Abgleich von Dateien und Informationen anbietet. Sie lernen icloud Drive kennen, den Fotostream, den icloud-schlüsselbund und
MehrTageslichtsimulator Easy Time Controll. Bedienungsanleitung
Tageslichtsimulator Easy Time Controll Bedienungsanleitung Mit unserem frei programmierbaren Tageslichsimulator Easy Time Controll halten Sie nun ein Gerät in Händen, mit welchem Sie ihre Aquarium-/Terrarium
MehrProgramme im Griff Was bringt Ihnen dieses Kapitel?
3-8272-5838-3 Windows Me 2 Programme im Griff Was bringt Ihnen dieses Kapitel? Wenn Sie unter Windows arbeiten (z.b. einen Brief schreiben, etwas ausdrucken oder ein Fenster öffnen), steckt letztendlich
MehrEasyWk DAS Schwimmwettkampfprogramm
EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage
MehrKünstliches binäres Neuron
Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de
Mehr3 ORDNER UND DATEIEN. 3.1 Ordner
Ordner und Dateien PC-EINSTEIGER 3 ORDNER UND DATEIEN Themen in diesem Kapitel: Erstellung von Ordnern bzw Dateien Umbenennen von Datei- und Ordnernamen Speicherung von Daten 3.1 Ordner Ordner sind wie
MehrAGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b
AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität
MehrTutorial - www.root13.de
Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk
MehrAnimationen erstellen
Animationen erstellen Unter Animation wird hier das Erscheinen oder Bewegen von Objekten Texten und Bildern verstanden Dazu wird zunächst eine neue Folie erstellt : Einfügen/ Neue Folie... Das Layout Aufzählung
MehrName: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:
Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel
MehrDokumentation zum Spielserver der Software Challenge
Dokumentation zum Spielserver der Software Challenge 10.08.2011 Inhaltsverzeichnis: Programmoberfläche... 2 Ein neues Spiel erstellen... 2 Spielfeldoberfläche... 4 Spielwiederholung laden... 5 Testdurchläufe...
MehrSpeichern. Speichern unter
Speichern Speichern unter Speichern Auf einem PC wird ständig gespeichert. Von der Festplatte in den Arbeitspeicher und zurück Beim Download Beim Kopieren Beim Aufruf eines Programms Beim Löschen Beim
MehrBFI Industrie-Elektronik GmbH + Co. KG
BFI Industrie-Elektronik GmbH + Co. KG ELEKTRONIK AC-Display BFI Industrie-Elektronik GmbH & Co. KG Winchenbachstr. 3b 42281 Wuppertal Tel.: 0202/260446-0 Fax: 0202/260446-24 info@bfi-elektronik.de www.bfi-elektronik.de
MehrArtikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
MehrTerminabgleich mit Mobiltelefonen
Terminabgleich mit Mobiltelefonen Sie können Termine- und Aufgaben aus unserem Kalender, sowie die Adressdaten aus dem Hauptprogramm mit Ihrem Mobiltelefon abgleichen. MS Outlook dient dabei als Schnittstelle
MehrTEAMWORK-Uploader. Dokumentenaustausch mit dem PC
TEAMWORK-Uploader Dokumentenaustausch mit dem PC Inhalt 1. Upload Ordner einrichten... 3 2. TEAMWORK mit lokalem Ordner verknüpfen... 3 3. Verwendung der Dokumentenarten... 5 3.1 Standarddokumente...5
MehrTechnische Informatik Basispraktikum Sommersemester 2001
Technische Informatik Basispraktikum Sommersemester 2001 Protokoll zum Versuchstag 4 Datum: 21.6.2001 Gruppe: David Eißler/ Autor: Verwendete Messgeräte: - digitales Experimentierboard (EB6) - Netzgerät
Mehr104 WebUntis -Dokumentation
104 WebUntis -Dokumentation 4.1.9.2 Das elektronische Klassenbuch im Betrieb Lehrer Aufruf Melden Sie sich mit Ihrem Benutzernamen und Ihrem Passwort am System an. Unter den aktuellen Tagesmeldungen erscheint
MehrBarcodedatei importieren
Barcodedatei importieren Inhaltsverzeichnis 1 Schnittstelle Barcodedatei importieren... 2 1.1 Funktion... 2 1.2 Konfiguration... 2 1.2.1 Lizenz... 2 1.2.2 Einstellungen... 2 1.2.3 Vorarbeiten... 3 1.2.3.1
Mehr9 Multiplexer und Code-Umsetzer
9 9 Multiplexer und Code-Umsetzer In diesem Kapitel werden zwei Standard-Bauelemente, nämlich Multiplexer und Code- Umsetzer, vorgestellt. Diese Bausteine sind für eine Reihe von Anwendungen, wie zum Beispiel
MehrApartment App. Web Style Guide
Apartment App Web Style Guide Login Zum Anmelden müssen Sie zu der App URL noch /typo3 hinzufügen. Sie sollten dann dieses Anmeldeformular sehen: Geben Sie hier Ihren Benutzernamen und das Passwort ein
MehrCheckliste für die Behebung des Problems, wenn der PC Garmin USB GPS-Geräte nicht erkennt.
TITEL: Checkliste für die Behebung des Problems, wenn der PC Garmin USB GPS-Geräte nicht erkennt. BEREICH(E): GPS-Tracks.com ERSTELLT VON: Christian Steiner STATUS: Release 1.0 DATUM: 10. September 2006
MehrBedienungsanleitung Programmiersoftware Save `n carry PLUS. Inhaltsangabe
Bedienungsanleitung Programmiersoftware Save `n carry PLUS Mit der Programmiersoftware Save `n carry PLUS lassen sich für die Schaltcomputer SC 08 und SC 88; SC 98 einfach und schnell Schaltprogramme erstellen
MehrAnwahlprogramm. zur. Modem-Schnittstelle TH004
Anwahlprogramm zur Modem-Schnittstelle TH004 INHALTSVERZEICHNIS 1. Einleitung...2 2. Programmbeschreibung...2 2.1 Starten des Programmes...2 2.2 Hauptfenster...3 2.3 Anlagen Verwaltung...4 2.3.1 Hinzufügen
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrS/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine
PhotoLine S/W mit PhotoLine Erstellt mit Version 16.11 Ich liebe Schwarzweiß-Bilder und schaue mir neidisch die Meisterwerke an, die andere Fotografen zustande bringen. Schon lange versuche ich, auch so
Mehr10. Elektrische Logiksysteme mit
Fortgeschrittenenpraktikum I Universität Rostock - Physikalisches Institut 10. Elektrische Logiksysteme mit Rückführung Name: Daniel Schick Betreuer: Dipl. Ing. D. Bojarski Versuch ausgeführt: 22. Juni
MehrAustausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen
Austausch- bzw. Übergangsrozesse und Gleichgewichtsverteilungen Wir betrachten ein System mit verschiedenen Zuständen, zwischen denen ein Austausch stattfinden kann. Etwa soziale Schichten in einer Gesellschaft:
MehrSynchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73
Synchronisierung Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73 Übertragungsprozeduren Die Übertragung einer Nachricht zwischen Sender und Empfänger erfordert die Übertragung des Nutzsignals
MehrBetriebssysteme. Dipl.-Ing.(FH) Volker Schepper
Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich
MehrBenutzerhandbuch - Elterliche Kontrolle
Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü
MehrDatenbanken Kapitel 2
Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,
MehrBauteilattribute als Sachdaten anzeigen
Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...
MehrStellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
MehrFingerpulsoximeter. A. Wie führt man einen Echtzeitdatentransfer vom PULOX PO-300 zum Computer durch und speichert diese Messdaten auf dem PC?
Mini-FAQ v1.5 PO-300 Fingerpulsoximeter A. Wie führt man einen Echtzeitdatentransfer vom PULOX PO-300 zum Computer durch und speichert diese Messdaten auf dem PC? B. Wie nimmt man mit dem PULOX PO-300
MehrModul 113 - Windows XP Professional
Inhalt Vorbereitung...2 Von CD-Rom starten...2 Das Setup im DOS...2 Kopieren der Dateien...4 Von CD-Rom starten...4 Regions- und Sprachenoptionen...5 Benutzerinformationen...5 Computername und Administatorkennwort...5
MehrBestimmung der massebezogenen Aktivität von Radionukliden
Bestiung de assebezogenen ktivität von Radionukliden ÄQUIVL/MSSKT Beabeite:. Wiechen H. Rühle K. Vogl ISS 1865-8725 Bestiung de assebezogenen ktivität von Radionukliden ÄQUIVL/MSSKT-01 Die auf die Masse
MehrGEVITAS Farben-Reaktionstest
GEVITAS Farben-Reaktionstest GEVITAS Farben-Reaktionstest Inhalt 1. Allgemeines... 1 2. Funktionsweise der Tests... 2 3. Die Ruhetaste und die Auslösetaste... 2 4. Starten der App Hauptmenü... 3 5. Auswahl
Mehr4 Aufzählungen und Listen erstellen
4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer
MehrFormular»Fragenkatalog BIM-Server«
Formular»Fragenkatalog BIM-Server«Um Ihnen so schnell wie möglich zu helfen, benötigen wir Ihre Mithilfe. Nur Sie vor Ort kennen Ihr Problem, und Ihre Installationsumgebung. Bitte füllen Sie dieses Dokument
MehrDer MS-DOS Standardmonitor und Debugger DEBUG
Einfache Assemblerprogrammierung mit DOS-DEBUG 1/7 Auf Personalcomputern kann in der Regel leicht eine einfache Umgebung zur Software-Entwicklung für die Intel Rechnerfamilie 80x86 eingerichtet werden.
MehrSie wollen Was heißt das? Grundvoraussetzung ist ein Bild oder mehrere Bilder vom Wechseldatenträger
Den Speicherplatz wechseln oder eine Sicherungskopie erstellen. Es lässt sich nicht verhindern. Manche Sachen liegen am falschen Platz, können gelöscht werden oder man will vor der Bearbeitung eine Sicherungskopie
Mehr