Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie"

Transkript

1

2

3

4 Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie Programmierung in Assembler und C Schaltungen und Anwendungen von Günter Schmitt 5., völlig überarbeitete und erweiterte Auflage Oldenbourg Verlag München

5 Prof. Dipl.-Ing. Günter Schmitt studierte Elektrotechnik an der TU Berlin und arbeitete nach seinem Diplom bei Siemens auf dem Gebiet der Messtechnik. Er lehrte seit 1969 an der Hochschule Dieburg und später als Gast an der Hochschule Darmstadt. Im Oldenbourg Verlag veröffentlichte er Lehrbücher über die Programmiersprachen Fortran, Pascal und C, über die 8-bit-Prozessoren der ersten Generation sowie über die modernen Mikrocontroller. Auch nach seiner Pensionierung im Jahr 2002 kann er immer noch nicht die Finger von Tastatur, Maus, Lötkolben und dicken Controller-Handbüchern lassen. Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über < abrufbar Oldenbourg Wissenschaftsverlag GmbH Rosenheimer Straße 145, D München Telefon: (089) oldenbourg.de Das Werk einschließlich aller Abbildungen ist urheberrechtlich geschützt. Jede Verwertung außerhalb der Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Bearbeitung in elektronischen Systemen. Lektorat: Anton Schmid Herstellung: Anna Grosser Coverentwurf: Kochan & Partner, München Gedruckt auf säure- und chlorfreiem Papier Gesamtherstellung: Druckhaus Thomas Müntzer GmbH, Bad Langensalza ISBN

6 Inhalt Vorwort 9 1 Einführung Grundlagen Rechnerstrukturen Rechenwerk und Registersatz Zahlendarstellungen Steuerwerk und Programmstrukturen Die Bausteine der Atmel-AVR-Familien Bauformen und Anschlüsse Der Programmspeicher (Flash) Der Arbeitsspeicher (SRAM) Der nichtflüchtige Speicher (EEPROM) Der Peripheriebereich Systemsteuerung und Konfigurationsparameter Die Entwicklung von Anwendungen Assemblerprogrammierung Testschaltung und einführendes Beispiel Assembleranweisungen Operationen Byteoperationen Bitoperationen bit Wortoperationen Operationen mit SFR-Registern Multiplikation und Division Sprung- und Verzweigungsbefehle Unbedingte Sprungbefehle Bedingte Sprungbefehle Schleifen Verzweigungen...89

7 6 Inhalt 2.5 Die Adressierung der Speicherbereiche Die Adressierung der Konstanten im Flash Die Adressierung der Variablen im SRAM Die Adressierung der Daten im EEPROM Makroanweisungen und Unterprogramme Makroanweisungen Unterprogramme Makro- und Unterprogrammbibliotheken Interrupts Die Interruptsteuerung Die externen Interrupts Der Software-Interrupt Interrupt durch Potentialänderung und Timerflanke Die Eingabe und Ausgabe von Zahlen USART-Zeichen- und Stringfunktionen Die Eingabe und Ausgabe von ganzen Zahlen Vorzeichenbehaftete ganzzahlige 16bit Arithmetik BCD-Arithmetik Festpunktarithmetik Ganzzahlige Funktionen Der Befehlssatz der AVR-RISC-Controller C-Programmierung Testschaltung und einführendes Beispiel Grundlagen Programmstrukturen Schleifenanweisungen Verzweigungen mit bedingten Anweisungen Funktionen Anwendungsbeispiele Speicherbereiche Felder im SRAM-Bereich Konstanten im Flash-Programmspeicher Daten im EEPROM-Bereich Die Ein/Ausgabe von Zeichen und Zahlen USART-Zeichen- und Stringfunktionen System-Funktionen für die Ein/Ausgabe von Zahlen System-Umwandlungsfunktionen für Zahlen Benutzerdefinierte Funktionen für Zahlen

8 Inhalt Die Interruptsteuerung Die externen Interrupts Der Software-Interrupt Interrupt durch Potentialänderung und Timereingang Die Peripherie Die Parallelschnittstellen Die Timereinheiten Der 8bit Timer Der 16bit Timer Die erweiterten Timer-Betriebsarten Der 8bit Timer Der Watchdog Timer und Stromsparbetrieb Die serielle USART-Schnittstelle Serielle Datenübertragung Der Asynchronbetrieb der USART-Schnittstelle Die USART-Interruptsteuerung Der Synchronbetrieb der USART-Schnittstelle Software-Emulation der asynchronen Schnittstelle Übertragungsverfahren Die serielle SPI-Schnittstelle Die serielle TWI-Schnittstelle (I 2 C) Die serielle USI-Schnittstelle Analoge Schnittstellen Der Analog/Digitalwandler Der Analogkomparator Der Boot-Programmspeicher Der Boot-Bereich und SPM-Befehl Ein einfaches Boot-Ladeprogramm Betriebssysteme Schaltungstechnik Die Schaltung der Peripherieports Anzeigeeinheiten Eingabeeinheiten Analoge Schnittstellen Sensoren Messungen mit dem Analog/Digitalwandler...487

9 8 Inhalt Temperatursensoren Lichtsensoren Aktoren Projekte Die Bausteine der Projekte Der ATtiny Der ATtiny Der ATmega Der ATmega8515 mit externem RAM Ein Würfel mit dem ATtiny Zufallszahlen Eine Stoppuhr mit dem ATtiny Ein Hexadezimaldecoder mit dem ATmega LCD-Anzeige mit einem ATmega Funkuhr mit einem ATmega Anhang Ergänzende und weiterführende Literatur Bezugsquellen und Internetadressen Assembleranweisungen Assemblerbefehle Rangfolge der C-Operatoren (Auswahl) C-Schlüsselwörter und -Anweisungen (Auswahl) ASCII-Codetabellen (Schrift Courier New) Sinnbilder für Ablaufpläne und Struktogramme Programmbeispiele und SFR-Register Register 593

10 Vorwort Dieses Buch wendet sich an Studierende technischer Fachrichtungen, an industrielle Anwender und an technisch Interessierte, die den Einstieg in die faszinierende Welt der Computer suchen. In der vorliegenden Auflage wurde der Schwerpunkt des Kapitels C-Programmierung auf die Besonderheiten der AVR-Controller gelegt. Neu sind die Kapitel Schaltungstechnik und Projekte mit vielen kleinen Anwendungsbeispielen. Die Mikrocomputerwelt entstand etwa ab 1975 mit den Universalprozessoren (8080, Z80 und 6502) und entwickelte sich in zwei Richtungen. Die eine ist die Welt der Datenverarbeitung und des Internet mit ihren Personal Computern (PC) und die andere sind Mikrocontroller, die in technischen Anwendungen vielfältige Steuerungsaufgaben übernehmen. Sie finden sich vor allem in Geräten, deren Funktionen vom Benutzer programmierbar sind. Dazu gehören Fahrradtachometer, Digitalkameras, Mobilfunkgeräte, Drucker und weitere Geräte des täglichen Lebens, denen man es nicht ansieht, dass sie von einem Computer gesteuert werden. Es wird vorausgesetzt, dass dem Leser ein fertiges Entwicklungs- und Testsystem wie z.b. das AVR-Starter-Kit STK500 des Herstellers Atmel zur Verfügung steht. Die für den Betrieb auf einem PC erforderliche Software wird vom Hersteller mitgeliefert, ein brauchbares C- System kann aus dem Internet heruntergeladen werden. Abschnitt 6.1 beschreibt eine einfache Zusatzschaltung, mit der sich die Programmbeispiele nachvollziehen lassen. Sie sind fast alle sowohl in Assembler als auch in C geschrieben und erlauben daher interessante Vergleiche zum Thema Programmierung in Assembler oder in einer höheren Sprache?. Für die Programmierung in der Assemblersprache spricht ihre direkte Umsetzung in den Maschinencode; das Ergebnis sind kurze und schnelle Maschinenprogramme. Der Aufwand bei der Programmierung ist dagegen hoch; der Quellcode ist umfangreich und ohne Kommentare auch für den Programmierer nicht leicht nachzuvollziehen. Die Controllerbausteine der AVR-RISC-Familien haben einen gemeinsamen Befehls- und Registersatz, so dass die Beispielprogramme auch auf anderen Mitgliedern dieser Familie ablaufen können; jedoch nicht auf Controllern anderer Familien wie z.b. Atmel AT89 oder den PIC-Bausteinen des Herstellers Microchip. Der Assembler wird vom Hersteller Atmel zusammen mit den Entwicklungssystemen geliefert oder kann kostenlos von seiner Homepage heruntergeladen werden. Für die Programmierung in der höheren Sprache C spricht, dass sie weit verbreitet ist und in fast allen Ausbildungszweigen zwar gelehrt, aber nicht immer gelernt wird. Die C- Programmierung für Personal Computer unterscheidet sich jedoch wesentlich von der Programmierung für Controlleranwendungen. Der Quellcode der C-Programme ist gut struktu-

11 10 Vorwort riert, übersichtlich und kurz, der im Controller ablaufende Maschinencode hängt wesentlich von der Güte des Compilers ab, der die Übersetzung vornimmt. Die vorliegenden C- Programme für die Controller der AVR-RISC-Familie lassen sich nicht direkt auf die Bausteine anderer Atmel-Familien oder anderer Hersteller übertragen, da diese wesentlich andere Peripherieeinheiten wie z.b. Schnittstellen zur Eingabe und Ausgabe von Signalen enthalten. Der für die Programmbeispiele verwendete GNU-Compiler wurde kostenlos aus dem Internet heruntergeladen. In besonderen Fällen, auf die im Text hingewiesen wird, ergaben sich unerwartete Ergebnisse, die sich nur durch Untersuchung des erzeugten Maschinencodes umgehen ließen. Hier waren Assemblerkenntnisse angesagt! Die Anwendungsbeispiele des siebenten Kapitels behandeln Bausteine der AVR-RISC- Familien, die mit ihrer Anschlussbelegung und den Abweichungen gegenüber dem Beispielcontroller der ersten Kapitel vorgestellt werden. Die Aufgabenstellungen und Programme wurden so einfach und kurz wie möglich gehalten; es sollten nur die wichtigsten Verfahren zur Eingabe von Daten (z.b. Tastaturabfrage) und Ausgabe von Ergebnissen (z.b. LCD- Anzeige) gezeigt werden. Ich danke meiner Frau für die Hilfe bei der Korrektur und die moralische Unterstützung sowie Herrn Anton Schmid vom Oldenbourg Verlag für die gute Zusammenarbeit. Günter Schmitt

12 1 Einführung In der heutigen Welt der Computer finden sich hauptsächlich zwei Anwendungsbereiche, die Personalcomputer (PC) sowie die Mikrocontroller zur Steuerung von Geräten. Diese werden auch als Embedded Systems bezeichnet, die in die Anwendung eingebettet sind und als Bestandteil des zu steuernden Gerätes angesehen werden. Entsprechend dem hohen Marktanteil der Mikrocontroller gibt es viele Hersteller, die Familien entwickeln und vertreiben. Sie reichen von einfachen 4bit Controllern z.b. für Fahrradcomputer bis zu 32bit Bausteinen z.b. für moderne Mobilfunkgeräte. Eine Familie umfasst mehrere Bausteine mit gleichem Befehls- und Registersatz, die sich jedoch in der Ausführung der Peripherieeinheiten und in der Speichergröße voneinander unterscheiden. Aus der Vielzahl der Hersteller seien einige herausgegriffen, die Bausteine und Entwicklungssysteme auch für nichtprofessionelle Anwender zur Verfügung stellen. Firma Microchip: PIC-Familie (8 bit), Firma Texas Instruments: MSP-Familie (8/16 bit), Firma Philips: 80C51-Familie (8 bit), LPC-21xx/22xx-Familie (16/32 bit), Firma Motorola: 68HCxx-Familie (8/16 bit) sowie Renesas R8C-Controller und Firma Atmel: die Familien ATtiny, ATmega und AT89 (8 bit) sowie AT91 (16/32 bit). In diesem Buch werden schwerpunktmäßig die Familien AVR ATmega und AVR ATtiny des Herstellers Atmel beschrieben, welche die Classic-Familie abgelöst haben. Sie sind gekennzeichnet durch folgende Eigenschaften: Programmbereich in einem Flash-Festwertspeicher (über 1000 mal programmierbar), Datenbereich für flüchtige Daten (SRAM), Datenbereich für nichtflüchtige Daten (EEPROM) (über mal beschreibbar), 32 Arbeitsregister der Länge Byte (8 bit), Arithmetisch-Logische Einheit (ALU) für 8bit Daten z.t. auch 16bit Befehle, parallele Schnittstellen für die Eingabe und Ausgabe digitaler Signale, serielle Schnittstellen z.b. für eine Verbindung zum PC, Analog/Digitalwandler zur Eingabe analoger Daten, Timer zur Messung von Zeiten und Ausgabe von Signalen, durch RISC-Struktur Ausführung der meisten Befehle in einem Takt und Taktfrequenzen bis zu 20 MHz.

13 12 1 Einführung 1.1 Grundlagen Rechnerstrukturen Arbeitsspeicher Peripherie Programmspeicher Datenspeicher Peripherie Befehle Daten Schnittstellen Befehle Daten Schnittstellen Befehlsadressen Datenadressen Portadressen Befehle Daten Adressen Befehle Daten Steuerwerk Rechenwerk Steuerwerk Rechenwerk Mikroprozessor Von-Neumann-Struktur (PC) Harvard-Struktur (Controller) Bild 1-1: Rechnerstrukturen In der Von-Neumann-Struktur des PC liegen die Befehle und Daten in einem gemeinsamen Arbeitsspeicher. Die durch Befehlsadressen über den Adressbus ausgelesenen Befehle gelangen in das Steuerwerk und werden dort in Steuersignale umgesetzt. Die durch Datenadressen über den Adressbus adressierten Daten werden ebenfalls über den Datenbus zum und vom Rechenwerk übertragen. Die peripheren Schnittstellen sind eigene Bausteine, die z.b. die Disk- und CD-Laufwerke ansteuern sowie die externen Schnittstellen bedienen. In der bei Controllern meist verwendeten Harvard-Struktur liegen Befehle und Daten in getrennten Speicher- und Adressbereichen. Das Programm kann seinen eigenen Speicherbereich nur mit Sonderbefehlen lesen. Die peripheren Schnittstellen liegen im Adressbereich der Daten oder können über Portadressen angesprochen werden. Sie übertragen digitale und analoge Signale zum Anschluss von Tastaturen, Anzeigeeinheiten und Messwertaufnehmern. Externe Bausteine werden meist über serielle Bussysteme angeschlossen.

14 1.1 Grundlagen Rechenwerk und Registersatz Die grundlegende Rechenoperation ist die Addition im dualen Zahlensystem. Zwei einstellige Dualzahlen ergeben unter Berücksichtigung führender Nullen eine zweistellige Summe > > > > 1 0 Das Rechenwerk führt die Addition mit logischen Schaltungen durch. Die Grundfunktionen sind das logische UND, das logische ODER und das EODER. EODER (XOR) UND (AND) ODER (OR) X Y X Y X Y X Y Z X Y Z X Y Z =1 Z & Z Z Das logische EODER (XOR) liefert die wertniedere Stelle der zweistelligen Summe. Bei logischen Operationen ergibt das Exklusive ODER immer dann am Ausgang eine 1, wenn beide Eingänge ungleich sind. Das logische UND (AND) liefert die werthöhere Stelle der zweistelligen Summe. Bei mehrstelligen Additionen wird sie auch als Carry (Übertrag) bezeichnet. Bei logischen Operationen liefert das UND nur dann am Ausgang eine 1, wenn alle Eingänge 1 sind. Das logische ODER (OR) ist für eine Addition nur brauchbar, wenn der Fall => 1 0 ausgeschlossen wird. Bei logischen Operationen liefert das ODER immer dann am Ausgang eine 1, wenn mindestens ein Eingang 1 ist. Ein ODER mit mehreren Eingängen wird dazu verwendet, ein Ergebnis auf Null zu prüfen, da der Ausgang nur dann 0 ist, wenn alle Eingänge 0 sind. NICHT (NOT) NICHT-UND (NAND) NICHT-ODER (NOR) X X Y X Y X Z X Y Z X Y Z 1 Z & Z Z

15 14 1 Einführung Das logische NICHT (NOT) negiert alle Bitpositionen des Operanden nach der Regel aus 0 mach 1 und aus 1 mach 0 und wird dazu verwendet, die Subtraktion auf eine Addition des Komplements zurückzuführen. Schaltet man hinter ein UND bzw. ODER direkt ein NICHT (NOT) so entsteht ein NICHT-UND (NAND) bzw. ein NICHT-ODER (NOR). Der Halbaddierer verknüpft zwei Dualstellen a und b zu einer Summe S und einem Übertrag Cn. Dies ist eine Addition zweier einstelliger Dualzahlen zu einer zweistelligen Summe. Der Volladdierer verknüpft zwei Dualstellen und den Übertrag Cv der vorhergehenden Stelle zu einer Summe und einem Übertrag Cn auf die nächste Stelle. Dabei addiert das ODER die Teilüberträge der beiden Halbaddierer, die niemals beide 1 sein können. a b a b Cv Halbaddierer Volladdierer HA & =1 HA HA VA Cn S 1 Cn S S Paralleladdierer 1. Summand (Minuend) Ca 2. Summand (Subtrahend negiert) =1 VA VA VA VA VA VA VA VA =1 Cn Summe (Differenz)

16 1.1 Grundlagen 15 Der Paralleladdierer besteht aus mehreren Volladdierern, mit denen zwei mehrstellige Dualzahlen unter Berücksichtigung der Stellenüberträge addiert werden; dabei ist das Steuerbit S = 0. Die Subtraktion wird auf eine Addition des Zweierkomplements zurückgeführt. Ein Steuerbit S = 1 negiert den Eingang Ca des letzten Volladdierers, den gesamten Subtrahenden und das Carrybit Cn. Beispiel für 3 2 = 1: 3 = Minuend bleibt = Subtrahend negiert Eingang Ca = 0 negiert + 1 Carry Cn = Differenz Carry negiert Cn = 0 kein Unterlauf Mit Zusatzschaltungen lassen sich folgende arithmetische Operationen durchführen: add Addieren zweier Dualzahlen mit Ca = 0. adc Addieren zweier Dualzahlen und eines alten Übertrags am Eingang Ca. inc Inkrementieren des ersten Operanden (Ca = 1 und zweiter Operand Null gesetzt). sub Subtrahieren 1. Operand 2. Operand (Komplement) mit Ca = 0. sbc Subtrahieren 1. Operand 2. Operand (Komplement) alter Übertrag Ca. dec Dekrementieren des 1. Operanden durch Subtraktion einer 1. neg Negieren des 1. Operanden (Zweierkomplement). Der Ausgang Cn des werthöchsten Volladdierers wird im Carrybit gespeichert. Es kann sowohl als Zwischenübertrag als auch zur Fehlerkontrolle verwendet werden. Bei einer Addition ergibt sich für Cn = 1 ein Zahlenüberlauf; bei einer Subtraktion bedeutet Cn = 1 einen Zahlenunterlauf. Für Cn = 0 liegen die Ergebnisse im zulässigen Wertebereich. Mit Zusatzschaltungen lassen sich die logischen Schaltungen des Addierers auch für logische Operationen wie z.b. UND ohne Berücksichtigung benachbarter Bitpositionen verwenden. Logikfunktionen 1. Operand 2. Operand & & & & & & & & Logisches Ergebnis

17 16 1 Einführung Die Schaltungen führen die folgenden logischen Operationen aus: and Logisches UND zum Ausblenden (Löschen) von Bitpositionen. or Logisches ODER zum Einblenden (Setzen) von Bitpositionen. eor Logisches EODER zum Komplementieren einzelner Bitpositionen. com Logisches NICHT zum Komplementieren aller Bitpositionen. Das Rechenwerk führt neben den angegebenen arithmetischen und logischen Funktionen der Länge Byte (8 bit) weitere Operationen durch, die dem Funktionscode der Befehle entnommen werden. Bei einem 6bit Code sind insgesamt 2 6 = 64 Befehle vorhanden. Dazu gehören: Laden und Speichern von Daten, Verschiebungen und Vergleiche, Multiplikationen (nur Mega-Familie) sowie Bitoperationen und Wortoperationen. Multiplizierer (ATmega-Familie) 1. Operand 2. Operand Funktionscode des Befehls Arithmetisch-Logische Einheit (ALU) Bewertung 1 H S Z V N Z C Statusregister Ergebnis der Operation Das Rechenwerk enthält neben der Arithmetisch-Logischen Einheit (ALU) Bewertungsschaltungen, deren Ergebnisse im Statusregister gespeichert werden. Dazu gehören das Carrybit, das einen Überlauffehler anzeigt bzw. als Zwischenübertrag dient, und das Zerobit, das anzeigt, ob das Ergebnis Null ist. Das Steuerwerk wertet die Anzeigebits des Statusregisters für bedingte Sprungbefehle aus.

18 1.1 Grundlagen 17 Die Operanden werden aus Registern ausgelesen; Ergebnisse werden in Registern gespeichert. Byteregister bestehen aus acht Speicherstellen (Flipflops), die parallel gelesen und beschrieben werden. Ein Lesesignal kopiert den Inhalt des Speichers; der alte Inhalt der Quelle bleibt dabei erhalten. Ein Schreibsignal überschreibt den alten Speicherinhalt des Ziels mit einem neuen Wert, der solange erhalten bleibt, bis er mit dem nächsten Schreibsignal überschrieben wird. Nach dem Einschalten der Versorgungsspannung ist der Inhalt der Arbeitsregister undefiniert; bei einem Reset bleibt ihr Inhalt erhalten. R31 R Byte = 8 bit. R2 R1 Registerauswahl R0 Bei einem Registersatz von 32 Arbeitsregistern sind fünf bit für die Auswahl eines Registers erforderlich; 10 bit für Befehle mit zwei Registeroperanden. Dann bleiben bei einem 16bit Befehl noch sechs bit für die Codierung von 64 Befehlen übrig. Man unterscheidet: Befehle für Operationen in einem Register, Befehle für Operationen mit einem Register und einer im Befehl abgelegten Konstanten, Befehle für Operationen mit zwei Registern, Befehle mit einem Register und einer Speicherstelle im Datenspeicher benötigen zusätzlich ein weiteres Befehlswort für die Datenadresse, Befehle mit indirekter Adressierung legen die Datenadresse in einem Adressregister ab, Peripheriebefehle enthalten eine verkürzte Schnittstellenadresse und Befehle, die sich auf bestimmte Register oder Bitpositionen beziehen und keine Adressen enthalten. In der Assemblerprogrammierung wird man mit häufig benutzten Variablen wie z.b. Zählern in Registern und nicht im Datenspeicher arbeiten. C-Compiler versuchen auch ohne den Speicherklassenspezifizierer register Variablen möglichst in Registern anzulegen.

19 18 1 Einführung Zahlendarstellungen Vorzeichenlose (unsigned) Dualzahlen werden in allen Bitpositionen als Zahlenwert abgespeichert. Beispiele in der 8bit Darstellung = kleinste vorzeichenlose Zahl = = = größte vorzeichenlose Zahl In dem Modell des Rechenwerks für vorzeichenlose Zahlen wird der Überlauf des werthöchsten Volladdierers im Carrybit C gespeichert und dient sowohl zur Fehleranzeige als auch als Zwischenübertrag. Das Nullanzeigebit Z (Zero) ergibt sich aus einer NOR- Verknüpfung aller Bitpositionen des Resultats. Rd7 Operand Rd Rr7 Operand Rr Calt C ALU Z 1 R7 Resultat R Bei einer vorzeichenlosen Addition nimmt das Carrybit die nicht darstellbare neunte Stelle der dualen Summe auf und kann zur Überlaufkontrolle bzw. bei mehrstufigen Additionen als Zwischenübertrag verwendet werden. Beispiele: = = = = = = +3 C = = 255 C = = 0 C = = 1 Z = 0 Z = 1 Z = 0 Kein Überlauf Überlauf Überlauf Nicht Null Null Nicht Null

20 1.1 Grundlagen 19 Bei einer vorzeichenlosen Subtraktion bedeutet C = 1 einen Unterlauf bzw. ein Borgen bei mehrstelligen Subtraktionen, da beim Subtrahieren das Carrybit des letzten Volladdierers negiert im C-Bit des Statusregisters erscheint. Beispiele: = = = = = = -3 C = = 1 C = = 0 C = = 255 Z = 0 Z = 1 Z = 0 Kein Unterlauf Kein Unterlauf Unterlauf Nicht Null Null Nicht Null Die Darstellung im Zahlenkreis zeigt die recht überraschenden Ergebnisse, dass die Summe 1 und nicht 257 liefert und dass 2 3 die Differenz 255 und nicht -1 ergibt. Addition vorzeichenlos Subtraktion vorzeichenlos Zero = 1: Null 0 Carry = 1 Überlauf Carry = 1 Unterlauf Zero = 1: Null Bei positiven vorzeichenbehafteten (signed) Dualzahlen erscheint in der linkesten Bitposition, dem Vorzeichenbit, immer eine 0. Beispiele in der 8bit Darstellung: 0 10 = kleinste positive Zahl = größte positive Zahl Bei negativen vorzeichenbehafteten (signed) Dualzahlen erscheint in der linkesten Bitposition, dem Vorzeichenbit, immer eine 1. Beispiele in der 8bit Darstellung: = größte negative Zahl = kleinste negative Zahl

5 Verarbeitungsschaltungen

5 Verarbeitungsschaltungen 5 Verarbeitungsschaltungen Folie 1 5 Verarbeitungsschaltungen Häufig genutzte Funktionen gibt es als fertige Bausteine zu kaufen. 5.1 Addierer logische Schaltungen zur Addition zweier Dualzahlen Alle Grundrechenarten

Mehr

PIC-Microcontroller. Oldenbourg Verlag Munchen

PIC-Microcontroller. Oldenbourg Verlag Munchen PIC-Microcontroller Programmierung in Assembler und C - Schaltungen und Anwendungsbeispielefurdie Familien PIC18, PIC16, PIC12, PIC10 von Prof. Dipl.-lng. Gunter Schmitt Oldenbourg Verlag Munchen Inhalt

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor als universeller digitaler Baustein 2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen

Mehr

Mikrocomputertechnik. Einadressmaschine

Mikrocomputertechnik. Einadressmaschine technik Einadressmaschine Vorlesung 2. Mikroprozessoren Einführung Entwicklungsgeschichte Mikroprozessor als universeller Baustein Struktur Architektur mit Akku ( Nerdi) FH Augsburg, Fakultät für Elektrotechnik

Mehr

Mikrocontrollerprogrammierung in Assembler und C

Mikrocontrollerprogrammierung in Assembler und C mitp Professional Mikrocontrollerprogrammierung in Assembler und C für die Mikrocontroller der 8051-Familie - Simulation unter Multisim von Herbert Bernstein 1. Auflage Mikrocontrollerprogrammierung in

Mehr

Rechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Rechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7 1 Vortrag Atmega 32 Von Urs Müller und Marion Knoth Urs Müller Seite 1 von 7 Inhaltsverzeichnis 1 Vortrag Atmega 32 1 1.1 Einleitung 3 1.1.1 Hersteller ATMEL 3 1.1.2 AVR - Mikrocontroller Familie 3 2 Übersicht

Mehr

Praktikum Grundlagen der Elektronik

Praktikum Grundlagen der Elektronik Praktikum Grundlagen der Elektronik Versuch EP 7 Digitale Grundschaltungen Institut für Festkörperelektronik Kirchhoff - Bau K1084 Die Versuchsanleitung umfasst 7 Seiten Stand 2006 Versuchsziele: Festigung

Mehr

Mikrocomputertechnik

Mikrocomputertechnik Bernd-Dieter Schaaf Mikrocomputertechnik Mit MikroControllern der Familie 8051 unter Mitarbeit von Peter Wissemann 4., aktualisierte Auflage mit 267 Bildern sowie zahlreichen Beispielen und Übungen HANSER

Mehr

C und C++ für Embedded Systems

C und C++ für Embedded Systems C und C++ für Embedded Systems von Friedrich Bollow, Matthias Homann, Klaus-Peter Köhn Neuausgabe C und C++ für Embedded Systems Bollow / Homann / Köhn schnell und portofrei erhältlich bei beck-shop.de

Mehr

3 Arithmetische Schaltungen

3 Arithmetische Schaltungen . Schaltungselemente Arithmetische Schaltungen. Schaltungselemente Logikgatter Treiber; gibt am Ausgang denselben Logikpegel aus, der auch am Eingang anliegt Inverter; gibt am Ausgang den Logikpegel des

Mehr

3 Rechnen und Schaltnetze

3 Rechnen und Schaltnetze 3 Rechnen und Schaltnetze Arithmetik, Logik, Register Taschenrechner rste Prozessoren (z.b. Intel 4004) waren für reine Rechenaufgaben ausgelegt 4 4-Bit Register 4-Bit Datenbus 4 Kbyte Speicher 60000 Befehle/s

Mehr

Daten, Informationen, Kodierung. Binärkodierung

Daten, Informationen, Kodierung. Binärkodierung Binärkodierung Besondere Bedeutung der Binärkodierung in der Informatik Abbildung auf Alphabet mit zwei Zeichen, in der Regel B = {0, 1} Entspricht den zwei möglichen Schaltzuständen in der Elektronik:

Mehr

Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen

Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen Technische Informatik Versuch 2 Julian Bergmann, Dennis Getzkow 8. Juni 203 Versuch 2 Einführung Im Versuch 2 sollte sich mit

Mehr

INFORMATIK Oberstufe. Funktionsweise eines Rechners

INFORMATIK Oberstufe. Funktionsweise eines Rechners INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den

Mehr

Technische Informatik. Der VON NEUMANN Computer

Technische Informatik. Der VON NEUMANN Computer Technische Informatik Der VON NEUMANN Computer Inhalt! Prinzipieller Aufbau! Schaltkreise! Schaltnetze und Schaltwerke! Rechenwerk! Arbeitsspeicher! Steuerwerk - Programmausführung! Periphere Geräte! Abstraktionsstufen

Mehr

Zahlendarstellungen und Rechnerarithmetik*

Zahlendarstellungen und Rechnerarithmetik* Zahlendarstellungen und Rechnerarithmetik* 1. Darstellung positiver ganzer Zahlen 2. Darstellung negativer ganzer Zahlen 3. Brüche und Festkommazahlen 4. binäre Addition 5. binäre Subtraktion *Die Folien

Mehr

3.0 8051 Assembler und Hochsprachen

3.0 8051 Assembler und Hochsprachen 3.0 8051 Assembler und Hochsprachen Eine kurze Übersicht zum Ablauf einer Programmierung eines 8051 Mikrocontrollers. 3.1 Der 8051 Maschinencode Grundsätzlich akzeptiert ein 8051 Mikrocontroller als Befehle

Mehr

Von-Neumann-Architektur

Von-Neumann-Architektur Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..

Mehr

Einführung in die Welt der Microcontroller

Einführung in die Welt der Microcontroller Übersicht Microcontroller Schaltungen Sonstiges Einführung in die Welt der Microcontroller Übersicht Microcontroller Schaltungen Sonstiges Inhaltsverzeichnis 1 Übersicht Möglichkeiten Einsatz 2 Microcontroller

Mehr

Mikrocomputertechnik

Mikrocomputertechnik Mikrocomputertechnik Bernd-Dieter Schaaf Mit Mikrocontrollern der Familie 8051 ISBN 3-446-40017-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40017-6 sowie im Buchhandel

Mehr

Mikroprozessortechnik

Mikroprozessortechnik Lehrplan Mikroprozessortechnik Höhere Berufsfachschule für Automatisierungstechnik Ministerium für Bildung Hohenzollernstraße 60, 66117 Saarbrücken Postfach 10 24 52, 66024 Saarbrücken Saarbrücken 2010

Mehr

Die Mikroprogrammebene eines Rechners

Die Mikroprogrammebene eines Rechners Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.

Mehr

Mikrocontroller. eine Einführung. Florian Schmitt - 16.11.2010 1 / 34

Mikrocontroller. eine Einführung. Florian Schmitt - 16.11.2010 1 / 34 Mikrocontroller eine Einführung Florian Schmitt - 16.11.2010 1 / 34 Inhalt Was sind Mikrocontroller, wozu sind sie nützlich? Unterschiede und Gemeinsamkeiten mit dem PC Wie funktionieren Mikrocontroller

Mehr

Microcomputertechnik

Microcomputertechnik Microcomputertechnik mit Mikrocontrollern der Familie 8051 Bearbeitet von Bernd-Dieter Schaaf 2. Auflage 2002. Buch. 230 S. Hardcover ISBN 978 3 446 22089 8 Format (B x L): 16 x 22,7 cm Gewicht: 407 g

Mehr

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit) Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.

Mehr

Vorbereitung zum Versuch

Vorbereitung zum Versuch Vorbereitung zum Versuch Schaltlogik Armin Burgmeier (1347488) Gruppe 15 6. Januar 2008 1 Gatter aus diskreten Bauelementen Es sollen logische Bausteine (Gatter) aus bekannten, elektrischen Bauteilen aufgebaut

Mehr

Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c

Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c 1 Transportbefehle 1.1 Verwendung nur Akku und Register (R0, R1,... R7) 1.1.1 Kopieren Sie den Wert aus Register1 nach

Mehr

Adobe Flash CS4. Herbert A. Mitschke. inklusive DVD-ROM. Von den Programmier-Grundlagen zur professionellen Webentwicklung

Adobe Flash CS4. Herbert A. Mitschke. inklusive DVD-ROM. Von den Programmier-Grundlagen zur professionellen Webentwicklung Herbert A. Mitschke inklusive DVD-ROM Professionelle Webentwicklung mit Adobe Flash CS4 inkl. ActionScript 3, XML, PHP und MySQL Von den Programmier-Grundlagen zur professionellen Webentwicklung Datenmanagement

Mehr

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel 2 Der Mikrocontroller Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel 1 beschrieben. Auf dem Chip sind die, ein ROM- für das Programm, ein RAM- für die variablen

Mehr

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

RS-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

Mehr

1. Übung - Einführung/Rechnerarchitektur

1. Übung - Einführung/Rechnerarchitektur 1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser

Mehr

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien. Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten

Mehr

Mikrocomputertechnik. Adressierungsarten

Mikrocomputertechnik. Adressierungsarten Adressierungsarten Ein Mikroprozessor bietet meist eine Reihe von Möglichkeiten, die Operanden für eine Rechenoperation zu bestimmen. Diese Möglichkeiten bezeichnet man als Adressierungsarten. unmittelbare

Mehr

Versuch P1-63 Schaltlogik Vorbereitung

Versuch P1-63 Schaltlogik Vorbereitung Versuch P1-63 Schaltlogik Vorbereitung Gruppe Mo-19 Yannick Augenstein Versuchsdurchführung: 16. Januar 2012 1 Inhaltsverzeichnis Einführung 3 1 Grundschaltungen 3 1.1 AND.......................................

Mehr

Audiospektrum- Analyse mit Mikrocontrollern

Audiospektrum- Analyse mit Mikrocontrollern PC & ELEKTRONIK Felix Irmscher Entwicklung und Programmierung in Assembler und LabVIEW Audiospektrum- Analyse mit Mikrocontrollern Analyseschaltungen mit dem ATmega644 einfach selbst entwickeln Auf CD-ROM:

Mehr

Programmieren in C Teil 3: Mikrocontrollerprogrammierung

Programmieren in C Teil 3: Mikrocontrollerprogrammierung Programmieren in C Teil 3: Mikrocontrollerprogrammierung 08/30/10 Fachbereich Physik Institut für Kernphysik Bastian Löher, Martin Konrad 1 Tag 1 Hello World 08/30/10 Fachbereich Physik Institut für Kernphysik

Mehr

Der Toy Rechner Ein einfacher Mikrorechner

Der Toy Rechner Ein einfacher Mikrorechner Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur [CS3100.010] Wintersemester 2014/15 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 5 Rechnerarithmetik

Mehr

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur 0. Assembler-Programmierung Datenstrukturen des ATMega32 Literatur mikrocontroller.net avr-asm-tutorial.net asm Alles über AVR AVR-Assembler-Einführung Assembler AVR-Aufbau, Register, Befehle 2008: ouravr.com/attachment/microschematic/index.swf

Mehr

SEO Strategie, Taktik und Technik

SEO Strategie, Taktik und Technik SEO Strategie, Taktik und Technik Andre Alpar Markus Koczy Maik Metzen SEO Strategie, Taktik und Technik Online-Marketing mittels effektiver Suchmaschinenoptimierung Andre Alpar Maik Metzen Markus Koczy

Mehr

BLIT2008-Board. Uwe Berger

BLIT2008-Board. Uwe Berger 11/2008 (BLIT) 2 Inhalt Was sind Mikrocontroller AVR-Mikrocontroller Werkzeugkasten Prinzipielles zur Programmierung BLIT2008-Board 11/2008 (BLIT) 3 Was sind Mikrocontroller AVR-Mikrocontroller Werkzeugkasten

Mehr

Befehlssatz AVR RISC Controller

Befehlssatz AVR RISC Controller Befehlssatz AVR RISC Controller Design-Philosophie des AVR Befehlssatzes Assembler-Sprache AVR-Befehlssatz Philosophie RISC = Reduced Instruction Set Computing keine komplexen Befehle möglichst symmetrischer

Mehr

Wie arbeiten Computer?

Wie arbeiten Computer? Autor: Ortmann, Jürgen. Titel: Wie arbeiten Computer? Quelle: Einführung in die PC-Grundlagen. München, 8. Auflage, 2003. S. 29-41. Verlag: Addison-Wesley Verlag. Die Veröffentlichung erfolgt mit freunlicher

Mehr

Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128

Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128 Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega128 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes

Mehr

Teil I: Wat isse ne Mikrokontroller?

Teil I: Wat isse ne Mikrokontroller? Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil I: Wat isse ne Mikrokontroller? Wat

Mehr

A.3. A.3 Spezielle Schaltnetze. 2002 Prof. Dr. Rainer Manthey Informatik II 1

A.3. A.3 Spezielle Schaltnetze. 2002 Prof. Dr. Rainer Manthey Informatik II 1 Spezielle Schaltnetze Spezielle Schaltnetze 22 Prof. Dr. Rainer Manthey Informatik II Übersicht in diesem Abschnitt: : Vorstellung einiger wichtiger Bausteine vieler elektronischer Schaltungen, die sich

Mehr

Mikroprozessortechnik Grundlagen 1

Mikroprozessortechnik Grundlagen 1 Grundlagen - Grundbegriffe, Aufbau, Rechnerarchitekturen, Bus, Speicher - Maschinencode, Zahlendarstellung, Datentypen - ATMELmega28 Progammierung in C - Vergleich C und C++ - Anatomie eines µc-programmes

Mehr

Versuch Nr. 8c Digitale Elektronik I

Versuch Nr. 8c Digitale Elektronik I Institut für ernphysik der Universität zu öln Praktikum M Versuch Nr. 8c Digitale Elektronik I Stand 14. Oktober 2010 INHALTSVERZEICHNIS 1 Inhaltsverzeichnis 1 Einführung 2 1.1 Motivation....................................

Mehr

Grundlagen der Digitaltechnik

Grundlagen der Digitaltechnik Grundlagen der Digitaltechnik Eine systematische Einführung von Prof. Dipl.-Ing. Erich Leonhardt 3., bearbeitete Auflage Mit 326 Bildern, 128 Tabellen, zahlreichen Beispielen und Übungsaufgaben mit Lösungen

Mehr

Inhaltsverzeichnis. Teil I Aufgaben 1

Inhaltsverzeichnis. Teil I Aufgaben 1 iii Teil I Aufgaben 1 1 Grundlagen der Elektrotechnik 3 Aufgabe 1: Punktladungen............................ 3 Aufgabe 2: Elektronenstrahlröhre........................ 3 Aufgabe 3: Kapazität eines Koaxialkabels...................

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Lektion 3: Was ist und was kann ein Computer?

Lektion 3: Was ist und was kann ein Computer? Lektion 3: Was ist und was kann ein Computer? Helmar Burkhart Informatik burkhart@ifi.unibas.ch EINFÜHRUNG IN DIE INFORMATIK I 3-0 Übersicht Lektion 3 Hardware Software Aufbau eines Computers Rechnerkern

Mehr

Elementare logische Operationen

Elementare logische Operationen RECHNERARCHITEKTUR 2 - ELEMENTARE LOGISCHE OPERATIONEN 1 Elementare logische Operationen Modifizieren, Testen,Vergleichen In diesem Abschnitt wollen wir zeigen, wie man mit den elementaren logischen Verknüpfungen

Mehr

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil II: Wat iss ene Bit, Byte un Word?

Mehr

Programmieren der AVR RISC MikroController mit BASCOM-AVR

Programmieren der AVR RISC MikroController mit BASCOM-AVR Claus Kühnel Programmieren der AVR RISC MikroController mit BASCOM-AVR 3. bearbeitete und erweiterte Auflage Eine Einführung anhand von Programmbeispielen 5 Inhalt 1 Vorwort 9 2 Die AVR-Mikrocontroller

Mehr

2. Negative Dualzahlen darstellen

2. Negative Dualzahlen darstellen 2.1 Subtraktion von Dualzahlen 2.1.1 Direkte Subtraktion (Tafelrechnung) siehe ARCOR T0IF Nachteil dieser Methode: Diese Form der Subtraktion kann nur sehr schwer von einer Elektronik (CPU) durchgeführt

Mehr

9 Multiplexer und Code-Umsetzer

9 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

Mehr

Vorwort Teil 1: Grundlagen 1. 1 Einleitung Grundbegriffe Einheiten Geschichte Arten von Computern 8

Vorwort Teil 1: Grundlagen 1. 1 Einleitung Grundbegriffe Einheiten Geschichte Arten von Computern 8 Inhaltsverzeichnis Vorwort Teil 1: Grundlagen 1 1 Einleitung 3 1.1 Grundbegriffe 3 1.2 Einheiten 5 1.3 Geschichte 6 1.4 Arten von Computern 8 2 Allgemeiner Aufbau eines Computersystems 15 2.1 Blockdiagramm

Mehr

Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung

Mehr

Multiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation

Multiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete

Mehr

C:\WINNT\System32 ist der Pfad der zur Datei calc.exe führt. Diese Datei enthält das Rechner - Programm. Klicke jetzt auf Abbrechen.

C:\WINNT\System32 ist der Pfad der zur Datei calc.exe führt. Diese Datei enthält das Rechner - Programm. Klicke jetzt auf Abbrechen. . Das Programm- Icon Auf dem Desktop deines Computers siehst du Symbolbildchen (Icons), z.b. das Icon des Programms Rechner : Klicke mit der rechten Maustaste auf das Icon: Du siehst dann folgendes Bild:

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners 4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).

Mehr

Füllstandsregelung. Technische Informatik - Digitaltechnik II

Füllstandsregelung. Technische Informatik - Digitaltechnik II Füllstandsregelung Kursleiter : W. Zimmer 1/18 Zwei Feuchtigkeitsfühler (trocken F=0; feucht F=1) sollen zusammen mit einer geeigneten Elektronik dafür sorgen, dass das Wasser im Vorratsbehälter niemals

Mehr

ALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter

ALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter ALU ALU-Aufbau Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus Addierer Logischer Einheit Shifter Eingänge in eine ALU: zwei Operanden, Instruktionscode OP1 OP0 Ausgänge einer ALU: Ergebnis,

Mehr

Programmierung Tiny45 für DCC Lokdecoder

Programmierung Tiny45 für DCC Lokdecoder Programmierung Tiny45 für DCC Lokdecoder Hier eine Beschreibung, der Programmierung des Tiny45 für den Lokdecoder. Zur Erstprogrammierung ist ein Programmer für Atmels AVR Mikrokontroller nötig (AVRISP

Mehr

Informatik für Ingenieure

Informatik für Ingenieure Informatik für Ingenieure Eine Einführung Von Prof. Dr. rer. nat. Wolfgang Merzenich Universität-Gesamthochschule Siegen und Prof. Dr.-Ing. Hans Christoph Zeidler Universität der Bundeswehr Hamburg B.

Mehr

MOP: Befehlsliste für den Mikrocontroller 8051

MOP: Befehlsliste für den Mikrocontroller 8051 Beuth Hochschule Berlin FB VI, Labor für Digitaltechnik MOP: Befehlsliste für den Mikrocontroller 8051 Erläuterung der Operanden Operand A addr11 addr16 bit /bit C #data #data16 direct DPTR PC Ri Rn rel

Mehr

Informatik 12 Kapitel 3 - Funktionsweise eines Rechners

Informatik 12 Kapitel 3 - Funktionsweise eines Rechners Fachschaft Informatik Informatik 12 Kapitel 3 - Funktionsweise eines Rechners Michael Steinhuber König-Karlmann-Gymnasium Altötting 9. Februar 2017 Folie 1/36 Inhaltsverzeichnis I 1 Komponenten eines PCs

Mehr

Algorithmen zur Integer-Multiplikation

Algorithmen zur Integer-Multiplikation Algorithmen zur Integer-Multiplikation Multiplikation zweier n-bit Zahlen ist zurückführbar auf wiederholte bedingte Additionen und Schiebeoperationen (in einfachen Prozessoren wird daher oft auf Multiplizierwerke

Mehr

Teil III: Wat macht ene Mikrokontroller?

Teil III: Wat macht ene Mikrokontroller? Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil III: Wat macht ene Mikrokontroller?

Mehr

Atmel AVR für Dummies

Atmel AVR für Dummies Atmel AVR für Dummies fd0@koeln.ccc.de 29.12.2005 Übersicht 1 Hardware Kurzvorstellung Atmega8 Programmierkabel (Eigenbau vs. Kommerzlösung) Alternative: Bootloader (Programmieren via rs232) Software Speicher

Mehr

J. Prof. Dr.-Ing. Georg Frey Juniorprofessur Agentenbasierte Automatisierung. Laborunterlagen zum Themengebiet Steuerungstechnik. zusammengestellt von

J. Prof. Dr.-Ing. Georg Frey Juniorprofessur Agentenbasierte Automatisierung. Laborunterlagen zum Themengebiet Steuerungstechnik. zusammengestellt von J. Prof. Dr.-Ing. Georg Frey Juniorprofessur Agentenbasierte Automatisierung Laborunterlagen zum Themengebiet Steuerungstechnik zusammengestellt von Georg Frey und Stéphane Klein Modul 3 Simatic STEP7

Mehr

Grundlagen der Programmiersprache C++

Grundlagen der Programmiersprache C++ / TU Braunschweig Grundlagen der Programmiersprache C++ Um den Studierenden den Einstieg in die FE-Programmierung zu erleichtern werden die wesentlichen Elemente eines C-Programmes beschrieben, soweit

Mehr

Technische Informatik

Technische Informatik Wolfram Schiffmann Robert Schmitz Jürgen Weiland 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Technische Informatik

Mehr

N Bit binäre Zahlen (signed)

N Bit binäre Zahlen (signed) N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101

Mehr

1 Rechnerstrukturen 1: Der Sehr Einfache Computer

1 Rechnerstrukturen 1: Der Sehr Einfache Computer David Neugebauer, Informationsverarbeitung - Universität zu Köln, Seminar BIT I Inhaltsverzeichnis 1 Rechnerstrukturen 1: Der Sehr Einfache Computer 1 1.1 Komponenten................................. 1

Mehr

Inhaltsverzeichnis VII

Inhaltsverzeichnis VII Inhaltsverzeichnis 1 Grundlagen der Mikrocontroller... 1 1.1 Mikrocontroller-Familie ATtiny2313, ATtiny26 und ATmega32.... 6 1.1.1 Merkmale des ATtiny2313, ATtiny26 und ATmega32..... 8 1.1.2 Pinbelegung

Mehr

Grundmann Rathner Abschlussprüfungen Bankwirtschaft, Rechnungswesen und Steuerung, Wirtschafts- und Sozialkunde

Grundmann Rathner Abschlussprüfungen Bankwirtschaft, Rechnungswesen und Steuerung, Wirtschafts- und Sozialkunde Grundmann Rathner Abschlussprüfungen Bankwirtschaft, Rechnungswesen und Steuerung, Wirtschafts- und Sozialkunde Prüfungstraining für Bankkaufleute Die Bücher der Reihe Prüfungstraining für Bankkaufleute

Mehr

1.7 Atmega-Programmierung in ASM/Verschachtelte Schleifen

1.7 Atmega-Programmierung in ASM/Verschachtelte Schleifen .7 Atmega-Programmierung in ASM/Verschachtelte Schleifen.7. Aufgabe Die beiden LEDs sollen abwechselnd blinken. Mit der bisherigen Lösung flackern sie nur (Beispiel: blink0.asm):. include /usr/share/avra/m8def.

Mehr

Andreas Roth. Das Mikrocontroller- Applikations- Kochbuch

Andreas Roth. Das Mikrocontroller- Applikations- Kochbuch Andreas Roth Das Mikrocontroller- Applikations- Kochbuch Einleitung 11 1 Zahlen 13 1.1 Byte-Zahlen 15 1.1.1 Berechnung von Modulo- und Integer-Werten 15 1.1.2 Berechnung von Dezimalstellen 16 1.1.3 Größenvergleich

Mehr

Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke

Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke Aufgabe 1: a) Bestimmen Sie die Darstellung der Zahl 113

Mehr

Prinzipien und Komponenten eingebetteter Systeme

Prinzipien und Komponenten eingebetteter Systeme 1 Prinzipen und Komponenten Eingebetteter Systeme (PKES) (2) Mikrocontroller I Sebastian Zug Arbeitsgruppe: Embedded Smart Systems 2 Veranstaltungslandkarte Fehlertoleranz, Softwareentwicklung Mikrocontroller

Mehr

François Colling. Holzbau Beispiele

François Colling. Holzbau Beispiele François Colling Holzbau Beispiele François Colling Holzbau Beispiele Musterlösungen, Formelsammlung, Bemessungstabellen 2., überarbeitete Auflage Mit 79 Tabellen, 98 Beispielen und ausführlichen Musterlösungen

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

Eine Logikschaltung zur Addition zweier Zahlen

Eine Logikschaltung zur Addition zweier Zahlen Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung

Mehr

TBE332 Controller. Produktbeschreibung

TBE332 Controller. Produktbeschreibung TBE332 Controller Produktbeschreibung Bei der Entwicklung der TBE332 Steuerung wurde auf die Erfahrung unserer jahrelangen Planung und Realisierung verschiedenster Steuerungs- und Regelungseinrichtungen

Mehr

Von der Aussagenlogik zum Computer

Von der Aussagenlogik zum Computer Von der Aussagenlogik zum Computer Markus Koch Gymnasium in der Glemsaue Ditzingen Januar 2012 Inhaltsverzeichnis Einleitung...3 Der Computer...3 Grundlagen...4 Wahrheitstabellen...4 Aussagenlogik...4

Mehr

Rechner Architektur. Martin Gülck

Rechner Architektur. Martin Gülck Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard

Mehr

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil IV: Programmieren an Beispielen Die

Mehr

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär Zahlensysteme Menschen nutzen zur Angabe von Werten und zum Rechnen vorzugsweise das Dezimalsystem Beispiel 435 Fische aus dem Teich gefischt, d.h. 4 10 2 + 3 10 1 +5 10 0 Digitale Rechner speichern Daten

Mehr

Technische Informatik 1

Technische Informatik 1 Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Die Programmiersprache C

Die Programmiersprache C Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,

Mehr

Sucosoft S40 KOP/FBS KOP FBS

Sucosoft S40 KOP/FBS KOP FBS Sucosoft S40 KOP/FBS KOP FBS Grafische Elemente Netzwerke erstellen Netzwerke erstellen Programme werden in KOP durch grafische Elemente dargestellt. Abfrage einer Variable auf den Zustand 1 Abfrage einer

Mehr

Ergänzungen zum Manual OS V 2.05/2.06

Ergänzungen zum Manual OS V 2.05/2.06 Ergänzungen zum Manual OS V 2.05/2.06 SYSTEMRESOURCEN - PROGRAMM DOWNLOAD - Ab der Betriebssystemversion 2.05 haben die C-Control Units M-2.0 und Station 2.0 die Möglichkeit das Anwenderprogramm von einem

Mehr

JMPCN Sprungbefehl nur ausführen, wenn VKE 0 ist. JMPC Sprungbefehl nur ausführen, wenn VKE 1 ist. JMP Ohne Bedingung zur Sprungmarke wechseln.

JMPCN Sprungbefehl nur ausführen, wenn VKE 0 ist. JMPC Sprungbefehl nur ausführen, wenn VKE 1 ist. JMP Ohne Bedingung zur Sprungmarke wechseln. Grafische Elemente Netzwerke erstellen Netzwerke erstellen Programme werden in KOP durch grafische Elemente dargestellt. Abfrage einer Variable auf den Zustand 1 Abfrage einer Variable auf den Zustand

Mehr

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich Seite 1 von 10 CU-R-CONTROL Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32 Autor: Christian Ulrich Datum: 08.12.2007 Version: 1.00 Seite 2 von 10 Inhalt Historie

Mehr

Achtung: Bei der Inbetriebnahme von TTL-Bausteinen ist zu beachten, daß der Anschluß

Achtung: Bei der Inbetriebnahme von TTL-Bausteinen ist zu beachten, daß der Anschluß Fakultät für Physik Prof. Dr. M. Weber, Dr.. abbertz B. iebenborn, P. ung, P. kwierawski, C. hiele 7. Dezember Übung Nr. 8 Inhaltsverzeichnis 8. L-Gatter............................................ 8.

Mehr

Übungscomputer mit Prozessor 8085 - Bedienungsanleitung

Übungscomputer mit Prozessor 8085 - Bedienungsanleitung Seite 1 von 9 Pinbelegung der Steckerleisten im Übungsgerät Seite 2 von 9 Inbetriebnahme: Schalter S1, S2, und S3 in Stellung 1 (oben) schalten. Spannung 5 V anlegen. ACHTUNG auf Polarität achten. Taste

Mehr

Übungen zur Kosten-, Erlösund Ergebnisrechnung

Übungen zur Kosten-, Erlösund Ergebnisrechnung Übungen zur Kosten-, Erlösund Ergebnisrechnung Wolfgang Becker Robert Holzmann Christian Hilmer Übungen zur Kosten-, Erlösund Ergebnisrechnung Für Bachelor-Studierende Wolfgang Becker Robert Holzmann Christian

Mehr