C:\Studium\Faecher\Mikrocontroller\Projekte\Light_Management_Qu...\Light_Management.A51

Größe: px
Ab Seite anzeigen:

Download "C:\Studium\Faecher\Mikrocontroller\Projekte\Light_Management_Qu...\Light_Management.A51"

Transkript

1 $NOMOD51 der Modus fuer 8051 wird abgeschaltet $debug $nolist es wird kein Listing fuer reg535 erstellt $include(c8051f340.inc) die C8051F340-spezifischen Daten $list es wird ein Listing erstellt $title (Rundenzeitmessung.A51) Programmbeschreibung Programm: Rundenzeitmessung Programm zur Rundenzeitmessung Lichtschranke ueber Port 1.1 angeschlossen Wenn Lichtschranke ausloest wird P1.1 auf Gnd gezogen und in Zeile 2 jedesmal die Ze it eingetragen Erstellt am: Uhr Programmiert: Leuser, Philipp Aldabbagh, Samer Pletschke, Tobias Tritsch, Marcel Ahl, Sebastian Verwendete Register /* */ R0 = Adressierung I2C Bus R2, R3, R4 = Zeitschleifen für Delay R5 = Displayaktualisierung R6 = Taster Entprellung / Blockierung R7 = Verzögerung Displayaktuallisierung in ISR_TR2 Aenderungen: Geaendert am: Uhr Initialisierungsteil fuer allgemeine Konstanten INC_PWM EQU 12 Inkrement für PWM_INC und PWM_DEC INC_SOLL EQU 4 Inkrement für Sollwertverstellung SCHALT_CONST EQU 8 für Schalthysterese der Regelung ADC_CONST EQU 100 Konstante zum angleichen des Sensorwertes TR3 EQU 200 Multiplikator. mittlere Schleife -> TR3 * 25µs, bei 200 = 5ms TR4 EQU 150 Multiplikator. unterste Schleife -> 25µs TAST_BLOCK EQU 2 Zeitkonstante nach der P1.1 abgefragt wird. 65ms * TAST_BLOCK LCD_ADDRESS EQU b Adresse LCD Display (PCF8574) LCD_DATA_ADDRESS EQU 083H Adresse für den Speicherort der Zeichen DSEG AT 30H Datenbytes des SMB Displayzugriffs MSEKUNDEN: DS 1 TRANSMIT_BYTE: DS 1 Holds a byte to be transmitted by the SMBus RECEIVE_BYTE_H: DS 1 Holds a byte just received by the SMBus RECEIVE_BYTE_L: DS 1 Holds a byte just received by the SMBus DS1613_Command: DS 1 Temperatur Register Config LCDByte: DS 1 Ein Byte, das per I2C übertragen wird. Alle 8 Bi t sind Daten. LCDNibble: DS 1 Ein Byte, das per I2C übertragen wird. Das obere Nibble enthält Daten, Page: 1

2 das untere Nibble enthält Steuersignale für das Display. DELAY: DS 1 Wert für eine Verzögerungsschleife. Verzögerung = (TR3*TR4 = 5ms) * delay i2cdelay: DS 1 Wert für die I2C Verzögerungsschleife. Verzögeru ng 2.5µs * i2cdelay DisplayZeile: DS 1 Gibt an, ob in die obere (0) oder untere (1) Dis playzeile geschrieben wird CursorPosition: DS 1 Position innerhalb einer Displayzeile, an die ei n Zeichen geschrieben wird Anzahl: DS 1 Anzahl der Zeichen, die auf einmal auf das Displ ay geschrieben werden sollen M5SEKUNDEN: DS 1 SEKUNDEN: DS 1 MINUTEN: DS 1 Datenbytes für die Regelung SOLL: DS 1 für SOLL-Wert SOLLA: DS 1 alter Sollwert IST: DS 1 für berechneten Sensorwert BSEG AT 20H Datenbits des SMB Displayzugriffs LCD_Flag: DBIT 1 Der Wert des Flag beeinflußt den Ablauf in Di sp_send_byte Eigene Datenbits PWM_MAX_Flag: DBIT 1 Flag für PWM MAX PWM_MIN_Flag: DBIT 1 Flag für PWM MIN HAND_AUTO_Flag: DBIT 1 für Wechsel zwischen manuellem und automtischem B etrieb HAND_AUTO_Flag == 0 --> manueller Betrieb HAND_AUTO_Flag == 1 --> automatischer Betrieb HAND_AUTO_Disp_Flag: DBIT 1 HAND_AUTO_Disp_Flag == 1 --> es steht "Auto" auf Display HAND_AUTO_Disp_Flag == 0 --> es steht "Hand" auf Display RE_NEW_Flag: DBIT 1 Flag zum aktualisieren des Displays Display_Freigabe: DBIT 1 Bit für die Freigabe der Displayaktuallisierung DATA_TO_WRITE: DBIT 1 Freigabe dass das Display von PTD, HAND oder AUTO beschrieben werden darf HAND_SET_Flag: DBIT 1 Flag dass im Handbetrieb Sollwert in PCA Register geschrieben werden soll TASTER_EINAUS: DBIT 1 stack für push pop stack segment idata declare stack segment rseg stack ds 0A0h reserve 128 bytes for stack CSEG AT 0H Legt absolute Codesegmentadresse auf 0h jmp INIT Interrupt-Vektoren ORG Timer1 Interrupt ORG 01BH Page: 2

3 mov TL1, #0AFh mov TH1, #014h call T1_INTER i Interrupt PWM ORG 05Bh clr CF i Counter Flag quittieren Initialisierungsteil fuer On-Chip Peripherie ORG 100H Programmstart bei 100H INIT: clr Display_Freigabe Displayfreigabe löschen clr RE_NEW_Flag Display aktuallisierung löschen clr DATA_TO_WRITE keine Daten zum schreiben vorhanden call Init_Device Aufruf zur Initialisierung der Controller Funktionen call INIT_LCD Aufruf Init Display call INIT_LCD_TEXT Aufruf Init Displaytext mov R5, #2 mov R7, #1 Startwert für Displayaktualisierung Startwert für die Display -Schreib-Verzögerung mov M5SEKUNDEN,#0d mov SEKUNDEN,#0d mov MINUTEN,#0d clr TR1 Programmschleife ABFRAGE: jnb P1.1, ABFRAGE Lichtschranke wird aktiviert --> Fahrzeug faehrt durch setb TR1 Timer1 wird aktiviert um die Rundenzeit zu zaehlen Funktion fuer Rueckmeldung des I2C djnz R5, $ Springt 2 mal auf diese Stelle cpl P3.2 Wechsel der LED zur Ueberpruefung des Funktionsdurchlaufes mov R5, #2 Wert fuer 2 Schleifen in Register 5 zurueck schreiben call ZEILE2 Aufruf der Funktion um in Zeile 2 zu schreiben MINUTEN mov a,minuten Minutenwert in Akku laden mov b,#10d in b wird Wert fuer Teilung geschrieben div ab Dividiere a durch b und Schreibe Wert vor Komma in a und Wert nach Komma in b mov R6, a Schreibe aus Akku in Register 6 den ersten Wert fuer Zeile 2 zur Minuten ausgabe Aufruf der Funktione Zerlegung um die Zahlen in das Register 0 fuer die Ausgabe zu speichern mov R6, b Schreibe den Restwert von b in das Register 6 zur Ausgabe des 2ten Minut enwerts call MINUTES Ausgabe von m hinter der Minutenzeit auf dem Display SEKUNDEN: siehe Minutenwert mov a,sekunden mov b,#10d div ab mov R6, a Page: 3

4 mov R6, b call SECONDS M5SEKUNDEN (200*5ms) mov a,m5sekunden mov b,#100d div ab mov R6, a mov a,b mov b,#10d div ab mov R6, a mov R6, b call MSECONDS Zerlegung bis hierher, dann Ausgabe call SCHREIBEZ2 Ausgabe in Zeile 2 setb TR1 mov M5SEKUNDEN,#0d mov SEKUNDEN,#0d mov MINUTEN,#0d jmp ABFRAGE T1_INTER: inc M5SEKUNDEN Millisekunden hochzaehlen mov R6,M5SEKUNDEN Wert in Millisekunden ins R6 schreiben cjne R6,#199d,ENDE mov M5SEKUNDEN,#0d inc SEKUNDEN mov R6,SEKUNDEN cjne R6,#59d,ENDE mov SEKUNDEN,#0d inc MINUTEN ENDE: /*######################################################################### */ /*######################################################################### */ I2C Bus Bereich /*######################################################################### */ Display initialisierung INIT_LCD: mov DELAY,#001H Zählerwert für Warteschleife 1* 5ms = 5ms mov LCDNibble,#30H Zu sendender Zahlenwert = 3 call Disp_Send_Nibble call WARTE Nibble in LCDByte per iic übertragen mov LCDNibble,#30H Zu sendender Zahlenwert = 3 call Disp_Send_Nibble Nibble in LCDByte per iic übertragen call WARTE mov LCDNibble,#30H Zu sendender Zahlenwert = 3 call Disp_Send_Nibble Nibble in LCDByte per iic übertragen call WARTE Page: 4

5 mov i2cdelay,#010h mov LCDNibble,#20H call Disp_Send_Nibble setb LCD_Flag mov LCDByte,#28H mov LCDByte,#8H mov LCDByte,#1H mov LCDByte,#2H mov LCDByte,#0CH Zählerwert für Warteschleife 16 * 5µs = 80µs Sende 2 --> Display im 4Bit Mode Nibble in LCDByte per iic übertragen Sende 40 --> Function Set: 2-Zeilen Byte in LCDByte per iic übertragen Sende 08 --> Display Control: Display & Cursor OFF Byte in LCDByte per iic übertragen Sende 01 --> Clear Display Byte in LCDByte per iic übertragen Sende 02 --> Home (Cursor auf Anfangsposition) Byte in LCDByte per iic übertragen Sende 12 --> Display Control: Display ON Byte in LCDByte per iic übertragen INIT Text fuer das Display INIT_LCD_TEXT: Schreiben von "Rundenzeitmessung" in die erste Zeile mov DisplayZeile,#0H mov CursorPosition,#0H mov Anzahl,#016d mov R0,#LCD_DATA_ADDRESS R0 mit Adresse für Zeichen beschreiben mov A,#052H ASCII Code von "R" mov A,#075H ASCII Code von "u" mov A,#06EH ASCII Code von "n" mov A,#064H ASCII Code von "d" mov A,#065H ASCII Code von "e" mov A,#06EH ASCII Code von "n" mov A,#07AH ASCII Code von "z" mov A,#065H ASCII Code von "e" mov A,#069H ASCII Code von "i" mov A,#074H ASCII Code von "t" Page: 5

6 mov A,#03AH ASCII Code von ":" mov A,#020H ASCII Code von " " mov A,#020H ASCII Code von " " mov A,#020H ASCII Code von " " mov A,#020H ASCII Code von " " mov A,#020H ASCII Code von " " call Display_Write Wert im internen RAM auf dem Display ausgeben ZEILE2: Zeile 2 initialisieren mov DisplayZeile,#1H mov CursorPosition,#0H mov Anzahl,#011d mov R0,#LCD_DATA_ADDRESS R0 mit Adresse für Zeichen beschreiben ZERLEGUNG: hier beginnt die Zerlegung cjne R6,#9d, ZAHL8 Vergleiche Wert aus R6 mit 9 dez. Wenn es zutrifft sch reibe 9dez in das R0 fuer Ausgabe mov@r0, #039H Wert 9dez in Hex in R0 schreiben R0 hochzaehlen damit er fuer jedes Zeichen einen Wert hat Sprung an das Ende der Zahlenzerlegung ZAHL8: cjne R6,#8d, ZAHL7 mov@r0, #038H 8 ZAHL7: cjne R6,#7d, ZAHL6 mov@r0, #037H 7 ZAHL6: cjne R6,#6d, ZAHL5 mov@r0, #036H 6 ZAHL5: cjne R6,#5d, ZAHL4 mov@r0, #035H 5 ZAHL4: cjne R6,#4d, ZAHL3 mov@r0, #034H 4 ZAHL3: cjne R6,#3d, ZAHL2 mov@r0, #033H 3 Page: 6

7 ZAHL2: cjne R6,#2d, ZAHL1 #032H 2 ZAHL1: cjne R6,#1d, ZAHL0 mov@r0, #031H 1 ZAHL0: mov@r0, #030H 0 ZAHLENDE: MINUTES: #06DH SECONDS: #073H MSECONDS: #06DH #073H m s m s SCHREIBEZ2: call Display_Write Wert auf Display schreiben setb Display_Freigabe Displayaktuallisierung erlauben Display Schreibfunktionen Display_Write: Erst ueberpruefen, ob "Anzahl", "CursorPosition" und "DisplayZeile" gültige Werte ent halten clr C mov A, Anzahl subb A,#011H Testen, ob "Anzahl" > 16 (--> Fehler) wenn Ergebniss kleiner 0 dann Carry =1 jnc Fehler Jump not Carry clr C mov A, CursorPosition subb A,#010H Testen, ob "CursorPosition" > 15 (--> Fehler) jnc Fehler Wie bei Anzahl clr C mov A, DisplayZeile subb A,#02H Testen, ob DisplayZeile > 1 (--> Fehler) jnc Fehler Wenn Carrybit = 0 sprung in Fehler jmp Write_Start Ende der Werteüberprüfung Fehler: Wenn einer der überprüften Werte falsch ist, nur "Err" ausgeben mov R0,#LCD_DATA_ADDRESS mov Anzahl, #3H mov CursorPosition, #0H mov DisplayZeile, #0H mov A,#45H ASCII Code von "E" Page: 7

8 mov A,#72H mov A,#72H "E" in das RAM schreiben ASCII Code von "r" "r" in das RAM schreiben ASCII Code von "r" "r" in das RAM schreiben Beginn der eigentlichen Aufgabe von Write_Display Write_Start: mov A, DisplayZeile jz EineZeile Wenn A>0 (--> Zweite Zeile ausgewählt), dann add A,#3fH Adresszähler für das Display um 64 erhöhen -> erste S telle 2. Zeile EineZeile: add A,#80H add A,CursorPosition mov LCDByte, A setb LCD_Flag ationen für das Display mov R1, Anzahl clr LCD_Flag mov R0,#LCD_DATA_ADDRESS Write_Schleife: mov A,@R0 mov LCDByte, A djnz R1, Write_Schleife 80H ist die Basisadresse für die erste Displayzeile Displaystelle dazuaddieren LCD_Flag = 1 ->in LCDByte stehen Konfigurationsinform LCDByte per I2C übertragen Ab jetzt werden Zeichen für das Diaplay übertragen Adresse vom Speicherort der Ziffern in R0 Lesezugriff auf Zeichen übertragen Datenpointer auf nächstes Zeichen bis zu Display_Write Disp_Send_Byte: Das Byte in "iicbyte" wird in seine zwei Nibbles zerlegt und diese na cheinander mit Disp_Send_Nibble übertragen. Wenn das Bit "LCD_Flag" gelöscht ist (Datenübertragung, kein Konfigurationszugriff), wird zuvor noch das unterste Bit von iicnibble gesetzt (RS=1) Disp_Send_Byte: mov A, LCDByte anl A, #0F0H Untere 4 Bit auf 0 setzen Teilt Byte un 2 nibble jb LCD_Flag, Disp_Config inc A Unterstes Bit auf 1 setzen (RS=1) Disp_Config: mov LCDNibble, A Highbyte aus Akkumulator wird in LCDNibble geschrieben call Disp_Send_Nibble mov A, LCDByte anl A, #0FH Obere 4 Bit auf 0 setzen swap A Unteres und oberes Nibble vertauschen jb LCD_Flag, Disp_Config2 inc A Unterstes Bit auf 1 setzen (RS=1) Disp_Config2: mov LCDNibble, A call Disp_Send_Nibble Disp_Send_Nibble: 4 Datenbits werden um die Steuerbits für das Display ergänzt (RS, R W, E). Page: 8

9 RS und RW sind 0. Das Byte wird dreimal übertragen. Erst mit E=0, dann mit E=1 und da nn wieder mit E=0 Bei der steigenden Flanke von E werden die Datenbits vom Display übernommen Disp_Send_Nibble: push LCDNibble call LCD_Write on high to low mov A, LCDNibble add A,#4H mov LCDNibble, A call LCD_Write Wert in LCDByte per iic übertragen -> nicht benoetigt, da Datenuebernahme bei Uebergang v E=1 --> Datenübernahme durch Display Wert in LCDByte per iic übertragen pop LCDNibble call LCD_Write Wert in LCDByte per iic übertragen LCD_Write: mov i2cdelay, #01H push ACC START clr STO setb STA i2cwarte = 1*2.5µs Preserve accumulator Initiate Transfer clr SI Clear SI Interrupt Flag T1: clr STA mov SMB0DAT,#LCD_ADDRESS SLA+W clr SI Clear SI Interrupt Flag jnb ACK,T2 T2: mov SMB0DAT,LCDNibble Load Command Set into MEM_ADD clr SI Clear SI Interrupt Flag StopLoc setb STO Stop (P) wird vom Master gesendet jnb ACK,SMB_END Warten bis ACK von Slave gesendet wird SMB_END: pop ACC Restore accumulator WARTE Funktionen benutzte Register: R2, R3, R Warte: Zwei verschachtelte Schleifen. Minimale Verzögerungszeit: 25µs. Mit der Variab len "DELAY" kann ein Vielfaches der minimalen Verzögerung festgelegt werden i2cwarte: mov R2, i2cdelay Zählschleife mit Verzögerungswert initialisieren i2cloop1: mov R3,#030 Multiplikator. Schleifendurchläufe = (2,5µs * R2) i2cloop2: djnz R3,Loop2 djnz R2,Loop1 Page: 9

10 Warte: mov R2, DELAY Zählschleife mit Verzögerungswert initialisieren -> delay * TR3 * 25µs Loop1: mov R3,#TR2 Multiplikator. mittlere Schleife -> TR3 * 25µs Loop2: mov R4,#TR4 Multiplikator. unterste Schleife -> 25µs Loop3: djnz R4,Loop3 djnz R3,Loop2 djnz R2,Loop1 /*######################################################################### */ Peripheral specific initialization functions, Called from the Init_Device label PCA_Init: mov PCA0CN, #040h anl PCA0MD, #0BFh mov PCA0MD, #009h mov PCA0CPM0, #0C2h mov PCA0CPH0, #080h Timer_Init: mov TCON, #040h mov TMOD, #012h mov CKCON, #00Ch mov TL1, #0AFh mov TH0, #0D8h mov TH1, #014h SMBus_Init: mov SMB0CF, #080h setb TR0 Muss auf jedenfall drin bleiben!!! Port_IO_Init: P0.0 - Skipped, Push-Pull, Digital P0.1 - Skipped, Push-Pull, Digital P0.2 - Skipped, Push-Pull, Digital P0.3 - Skipped, Push-Pull, Digital P0.4 - TX0 (UART0), Push-Pull, Digital P0.5 - RX0 (UART0), Push-Pull, Digital P0.6 - SDA (SMBus), Open-Drain, Digital P0.7 - SCL (SMBus), Open-Drain, Digital P1.0 - CEX0 (PCA), Push-Pull, Digital P1.1 - Skipped, Push-Pull, Digital P1.2 - Skipped, Push-Pull, Digital P1.3 - Skipped, Push-Pull, Digital P1.4 - Unassigned, Open-Drain, Digital P1.5 - Unassigned, Open-Drain, Digital P1.6 - Unassigned, Open-Drain, Digital P1.7 - Unassigned, Open-Drain, Digital P2.0 - Skipped, Push-Pull, Analog P2.1 - Unassigned, Open-Drain, Digital P2.2 - Unassigned, Open-Drain, Digital P2.3 - Unassigned, Open-Drain, Digital P2.4 - Unassigned, Open-Drain, Digital P2.5 - Unassigned, Open-Drain, Digital P2.6 - Unassigned, Open-Drain, Digital P2.7 - Unassigned, Open-Drain, Digital P3.0 - Unassigned, Open-Drain, Digital P3.1 - Skipped, Push-Pull, Digital Page: 10

11 P3.2 - Skipped, Push-Pull, Digital P3.3 - Skipped, Push-Pull, Digital P3.4 - Skipped, Push-Pull, Digital P3.5 - Unassigned, Open-Drain, Digital P3.6 - Unassigned, Open-Drain, Digital P3.7 - Unassigned, Open-Drain, Digital mov P2MDIN, #0FEh mov P0MDOUT, #03Fh mov P1MDOUT, #00Fh mov P2MDOUT, #001h mov P3MDOUT, #01Eh mov P0SKIP, #00Fh mov P1SKIP, #00Eh mov P2SKIP, #001h mov P3SKIP, #01Eh mov XBR0, #005h mov XBR1, #041h Oscillator_Init: mov OSCICN, #083h Interrupts_Init: mov EIE1, #011h mov IE, #088h Initialization function for device, Call Init_Device from your main program Init_Device: lcall PCA_Init lcall Timer_Init lcall SMBus_Init lcall Port_IO_Init lcall Oscillator_Init lcall Interrupts_Init end Page: 11

D:\Hübner\verkehr\verkehr.A51 $NOMOD51. ;der Modus fuer 8051 wird abgeschaltet $debug $nolist

D:\Hübner\verkehr\verkehr.A51 $NOMOD51. ;der Modus fuer 8051 wird abgeschaltet $debug $nolist $NOMOD51 der Modus fuer 8051 wird abgeschaltet $debug $nolist es wird kein Listing fuer reg535 erstellt $include(c8051f340.inc) die C8051F340-spezifischen Daten $list es wird ein Listing erstellt $title

Mehr

µ-computer Programm in Assembler mit dem C8051F340

µ-computer Programm in Assembler mit dem C8051F340 µ-computer Programm in Assembler mit dem C8051F340 Programm: Servomotor-Ansteuerung 0-180 über Potentiometerstellung. Michael Mürken (30848), MTB4 1 Inhalt 1. 0 DER SERVOMOTOR... 3 1.1 PRINZIPIELLER AUFBAU...

Mehr

Zusammenfassung der Assemblerbefehle des 8051

Zusammenfassung der Assemblerbefehle des 8051 Zusammenfassung der Assemblerbefehle des 8051 Seite 1 von 5 Befehl Bezeichnung Syntax Wirkung / Beispiel Befehle zum Datentransfer MOV Move MOV [Ziel],[Quelle] MOV P1,P3 Kopiert den Inhalt von P3 nach

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

Befehlssatz der Mikrocontroller der 51er -Familie

Befehlssatz der Mikrocontroller der 51er -Familie Befehlssatz der Mikrocontroller der 51er -Familie Abkürzungen: Mikrocontrollerfamilie 8051 Befehlssatz A : Akkumulator Rn : Register R0..R7 Ri : R0 oder R1 dadr : direkte Byte-Adresse im int. Speicher

Mehr

Zähler- und Zeitgeber-Baugruppen

Zähler- und Zeitgeber-Baugruppen Zähler- und Zeitgeber-Baugruppen Sinn: häufig müssen Zeitbedingungen eingehalten werden z.b.: einige ms warten, Häufigkeit von Ereignissen zählen etc... Lösung: 1.) Zeitschleifen = Programm abarbeiten,

Mehr

Befehlssatz der Mikrocontroller der 51er -Familie

Befehlssatz der Mikrocontroller der 51er -Familie Befehlssatz der Mikrocontroller der 51er -Familie Abkürzungen: Mikrocontrollerfamilie 8051 Befehlssatz A : Akkumulator Rn : Register R0..R7 Ri : R0 oder R1 dadr : direkte Byte-Adresse im int. Speicher

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

$NOMOD51 $INCLUDE (reg515.inc) ; Ein Zeichen auf Tastendruck S1 senden...

$NOMOD51 $INCLUDE (reg515.inc) ; Ein Zeichen auf Tastendruck S1 senden... MC SS2016 - Aufgabenblatt 11a - Übung 4 Serielle Schnittstelle - Zeichen sen & empfangen In diesem Versuch lernen Sie die serielle Schnittstelle des AT89C5131 Mikrocontrollers kennen. Im ersten Versuchsteil

Mehr

8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382

8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382 8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382 Der MAX5382 ist ein 8 Bit DA Wandler im SOT23 Gehäuse. Der MAX5380 besitzt eine interne Referenzspannung von 2 V, der MAX5381 von 4 Volt und der verwendete

Mehr

LCD-Display am MVUS 80535 (nur einfachste Betriebsweise im Text Display Modus - ausführliche Beschreibung )

LCD-Display am MVUS 80535 (nur einfachste Betriebsweise im Text Display Modus - ausführliche Beschreibung ) Prof. Komar - 1 - LCD-Display LCD-Display am MVUS 80535 (nur einfachste Betriebsweise im Text Display Modus - ausführliche Beschreibung ) Das LCD-Modul TLX-1021 besteht aus einem - LCD-Panel mit 120 x

Mehr

4 Assembler für die 8051-Controller-Familie

4 Assembler für die 8051-Controller-Familie 4 Assembler für die 8051-Controller-Familie Tabelle 4.1 Wichtige Schreibweisen und Bedeutungen für die Befehle Abkürzung #data data addr Rr @Rr code addr Bedeutung Daten sind in der Instruktion codiert

Mehr

Praktikum Mikrorechner 8 (Pulsweitenmodulation und Automaten)

Praktikum Mikrorechner 8 (Pulsweitenmodulation und Automaten) G. Kemnitz Institut für Informatik, Technische Universität Clausthal 5. November 24 /6 Praktikum Mikrorechner 8 (Pulsweitenmodulation und Automaten) G. Kemnitz Institut für Informatik, Technische Universität

Mehr

Der Anschluss eines seriellen 16kb EEProms an die I²C Schnittstelle ist denkbar einfach: Hier als Beispiel mit einem ST24C16:

Der Anschluss eines seriellen 16kb EEProms an die I²C Schnittstelle ist denkbar einfach: Hier als Beispiel mit einem ST24C16: 12.0 Ein serielles EEProm an der I²C Schnittstelle Eine serielles EEProm wird häufig zur Speicherung von Systemkonfigurationen verwendet und könnte z.b. die optimalen Betriebsfrequenzen des Elliptecmotors

Mehr

Ansteuerung eines LCD-Screens

Ansteuerung eines LCD-Screens Ansteuerung eines LCD-Screens Marcel Meinersen 4. Mai 2013 Marcel Meinersen Ansteuerung eines LCD-Screens 4. Mai 2013 1 / 27 Inhaltsverzeichnis 1 Allgemeines Was ist ein LCD-Screen? LCD 162C LED Marcel

Mehr

Mikrocontrollertechnik

Mikrocontrollertechnik Aufgaben: Impulse zählen (Zählerfunktion) Zeitintervalle erzeugen (Zeitgeberfunktion) Prinzipschaltbild: Die Programmierung erfolgt mit den Registern TMOD und TCON: timer.doc TSC Seite 1/8 timer.doc TSC

Mehr

Praktikum Mikrorechner 9 (serielle Schnittstelle)

Praktikum Mikrorechner 9 (serielle Schnittstelle) Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 5. November 2014 1/13 Praktikum Mikrorechner 9 (serielle Schnittstelle) Prof. G. Kemnitz Institut für Informatik, Technische Universität

Mehr

7.0 PWM - Pulsbreitenmodulation

7.0 PWM - Pulsbreitenmodulation 7.0 PWM - Pulsbreitenmodulation PWM ist eine Abkürzung für Pulse Width Modulation (Pulsbreitenmodulation). Zwei unabhängige PWM-Ausgänge erlauben die Erzeugung von Rechtecksignalen mit einstellbarer Frequenz

Mehr

DHBW Stuttgart Mikrocomputertechnik Labor KEIL Entwicklungsumgebung. Projektstruktur

DHBW Stuttgart Mikrocomputertechnik Labor KEIL Entwicklungsumgebung. Projektstruktur Projektstruktur 25.10.12 K.Kraft D\MCT_Labor_2013\Dokumente\Projektdetails.odt 1 Typischer Aufbau eines 8051 Programms Start Adresse = 0003H External Interrupt 0 ISR Interrupt Service Routinen Start Adresse

Mehr

HD44780-LC-Display am Atmel-AVR Mikrocontroller

HD44780-LC-Display am Atmel-AVR Mikrocontroller Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik und Datenbanken Praktikum Automatisierung / Echtzeitregelung (BAU/BER) Prof.Dr.-Ing. Coersmeier HD44780-LC-Display am Atmel-AVR

Mehr

Projektlabor. LCD Ansteuerung

Projektlabor. LCD Ansteuerung Projektlabor LCD Ansteuerung Contents 1 LCD 3 2 Hardware des Displays 3 2.1 Hardware............................... 3 2.2 Verbindung.............................. 4 3 Softwareansteuerung 6 4 Quellen 10

Mehr

1. Allgemein Technische Daten... 2

1. Allgemein Technische Daten... 2 Inhalt 1. Allgemein... 2 2. Technische Daten... 2 3. Beschreibung der s... 3 3.1. Allgemein... 3 3.2. Aufbau einer Übertragung... 3 3.2.1. Nur Daten... 3 3.2.2. s und Daten:... 3 3.2.3. s und Daten gemischt:...

Mehr

LCD-Ansteuerung mit MikroForth

LCD-Ansteuerung mit MikroForth Das Attiny-Projekt LCD-Ansteuerung mit MikroForth 1 LCD-Ansteuerung mit MikroForth Zu unserer Attiny-Platine wird standardmäßig ein kleines LCD von der Firma Pollin beigelegt. Dieses ist auf eine kleine

Mehr

Komponenten eines Mikrocontrollers

Komponenten eines Mikrocontrollers MC 27.04.2017 Komponenten eines Mikrocontrollers - Zentraleinheit: CPU (Central Processing Unit): 4, 8, 16 oder 32 Bit Datenwortbreite - Arbeitsspeicher: RAM (Random Access Memory = Speicher mit wahlfreiem

Mehr

Praktikum Mikrorechner 4 (Bitmanipulation und Spezialregister)

Praktikum Mikrorechner 4 (Bitmanipulation und Spezialregister) Prof. Kemnitz Institut für Informatik, Technische Universität Clausthal November 5, 2014 1/18 Praktikum Mikrorechner 4 (Bitmanipulation und Spezialregister) Prof. Kemnitz Institut für Informatik, Technische

Mehr

FTKL-Projektarbeit. x k... Steigung der Kennlinie. x..wert der Spannungsänderung in mv y..wert der Druckänderung in PSI bzw.

FTKL-Projektarbeit. x k... Steigung der Kennlinie. x..wert der Spannungsänderung in mv y..wert der Druckänderung in PSI bzw. FTKL-Projektarbeit Gerald 1996/97 Brosowitsch 5HNB Dokumentation: Aufgabenstellung war die Messung des Luftdrucks, wobei das vom Sensor erhaltene Signal temperaturkompensiert werden sollte. Die dazu notwendige

Mehr

Das Projekt Pathfinder

Das Projekt Pathfinder Das Projekt Pathfinder Das Entwicksteam und die französischen Kommilitonen Eine Studie der HS-Karlsruhe im Rahmen der Vorlesungen Konstruktion IV & Mikrocomputertechnik Rahmenbedingungen Problemstel An

Mehr

Maschinenorientierte Programmierung

Maschinenorientierte Programmierung Prof. Dr. Sven-Hendrik Voß Wintersemester 2015 Technische Informatik (Bachelor), Semester 2 Termin 10, 08.12.2015 Maschinenorientierte Programmierung Seite 2 Timer- und Counter-Programmierung Maschinenorientierte

Mehr

Der I²C-Bus. Vorstellung des Inter-Integrated Circuit -Bus. Aufbau und Funktionsweise. Beispiel PortExpander am Arduino

Der I²C-Bus. Vorstellung des Inter-Integrated Circuit -Bus. Aufbau und Funktionsweise. Beispiel PortExpander am Arduino Der I²C-Bus Vorstellung des Inter-Integrated Circuit -Bus Aufbau und Funktionsweise Beispiel PortExpander am Arduino Weitere Anwendungsmöglichkeiten Was ist der I²C-Bus entwickelt von Philips Anfang der

Mehr

Hardwareaufbau der Mikrocontroller der 51er -Familie

Hardwareaufbau der Mikrocontroller der 51er -Familie Hardwareaufbau der Mikrocontroller der 51er -Familie Mikrocontroller (51er Familie) Quarz Port Timer A D Serielle Schnittst. CPU ROM RAM Ext. ROM Ext. RAM Programmspeicher (ROM) Datenspeicher (RAM) FFFFh

Mehr

Praktikum Mikrorechner 1 (Einführung)

Praktikum Mikrorechner 1 (Einführung) G. Kemnitz Institut für Informatik, Technische Universität Clausthal November 5, 2014 1/16 Praktikum Mikrorechner 1 (Einführung) G. Kemnitz Institut für Informatik, Technische Universität Clausthal November

Mehr

Gegenüberstellung von Assembler- und C-Programmierung

Gegenüberstellung von Assembler- und C-Programmierung Gegenüberstellung von Assembler- und C-Programmierung Assembler-Version C-Version org 8000h #pragma code=0x8000 #pragma xdata=0x2000 INPUT equ 0e081h OUTPUT equ 0e082h neu: mov dptr,#input movx a,@dptr

Mehr

Tag 4 7 Segment-Anzeige, File Include, LC-Display

Tag 4 7 Segment-Anzeige, File Include, LC-Display Tag 4 7 Segment-Anzeige, File Include, LC-Display 09/01/10 Fachbereich Physik Institut für Kernphysik Bastian Löher, Martin Konrad 1 Die 7-Segment-Anzeige Eigentlich 8-Segment-Anzeige Gesteuert über 8

Mehr

2017/01/23 15:50 1/5 Bedienung

2017/01/23 15:50 1/5 Bedienung 2017/01/23 15:50 1/5 Bedienung Bedienung (J.Müller, Hilfe zu JTCEMU) Das originale 2K-System Das 2 KByte große Betriebssystem bietet die wichtigsten Funktionen zur Eingabe und Verwaltung von BASIC-Programmen.

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

Speicheraufbau des AT89C5131

Speicheraufbau des AT89C5131 Speicheraufbau des AT89C5131 Prinzip: - getrennter Programmspeicher (ROM) und Datenspeicher (RAM) - interner Speicher (auf dem Chip) und externer Speicher (Zusatzbausteine) Das Experimentalsystem hat keinen

Mehr

8.3 PCA2.D12 Display-Modul mit 4 Ziffern

8.3 PCA2.D12 Display-Modul mit 4 Ziffern PCD1 - PCD2 Anzeige- und Bedienmodule 8.3 PCA2.D12 Display-Modul mit 4 Ziffern Allgemeines Das Modul PCA2.D12 ist ein Ferndisplay, welches über Ausgänge einer SAIA PCD angesteuert wird. Es besitzt eine

Mehr

ProcessorsTechnik Labor LCD-Uhr

ProcessorsTechnik Labor LCD-Uhr ProcessorsTechnik Labor LCD-Uhr Xu,Zhen 20465719 Aufgabe Beschreibung:LCD-Uhr HardWare :LCD161A. (4B.8B Dataverarbeiten ). Clock Chip:KS0066U Programmieren Sprache :Assemble LCD1602 PIN definieren : Pin

Mehr

MikroController der 8051-Familie

MikroController der 8051-Familie i Dipl.-Ing. Roland Dilsch MikroController der 8051-Familie Aufbau, Funktion, Einsatz Vogel Buchverlag Inhaltsverzeichnis Vorwort 5 1 Was ist ein MikrocontroUer? 13 1.1 Aufbau eines Computers 13 1.2 Entstehung

Mehr

Protokoll TID v0.1 ( )

Protokoll TID v0.1 ( ) Einleitung Der Opel Radio-Display Bus ist ein serieller Bus, der ein Master Gerät, das Radio mit dem Slave Gerät, dem Triple Info Display oder dem Multi Info Display verbindet. Er basiert auf dem I²C Protokoll,

Mehr

Praktikum Mikrorechner 3 (Adressierungsarten)

Praktikum Mikrorechner 3 (Adressierungsarten) G. Kemnitz Institut für Informatik, Technische Universität Clausthal November 5, 2014 1/15 Praktikum Mikrorechner 3 (Adressierungsarten) G. Kemnitz Institut für Informatik, Technische Universität Clausthal

Mehr

LCD board EB

LCD board EB LCD board EB005-00-3 Inhalt 1. Über dieses Dokument...2 2. Allgemeine Information...3 3. Board-Layout...6 4. Schaltungsbeschreibung...7 Anhang 1 Schaltplan Copyright Matrix Multimedia Limited 2005 seite

Mehr

Steffen Weißer Juni 2003 TG 12/3

Steffen Weißer Juni 2003 TG 12/3 Steffen Weißer Juni 2003 TG 12/3 I Inhaltsverzeichnis I Inhaltsverzeichnis...1 II Aufgabenbeschreibung...3 III Inbetriebnahme...3 IV Technologieschema...4 V Schaltplan...5 VI Funktionsbeschreibungen...6

Mehr

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikrocomputertechnik Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikroprozessor-Achritekturen Folie 2 Mikroprozessor-Achritekturen Klassifizierung anhand Wortbreite CPU-Architektur und Busleitungen

Mehr

GRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565. preliminary

GRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565. preliminary GRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565 Stand 10.2.2009 Displayabmessungen -6X9: 56x43mm (Abbildung) -6X8: 34x25mm TECHNISCHE DATEN * INKL. KONTROLLER ST7565 * VDD = 2,7... 3,3V * LOW POWER, ALSO IDEAL FÜR

Mehr

2

2 TINF Interrupts EDT-Referat Jürgen Schwarzbauer 2ANB 1995/96 Inhalt : Was ist ein Interrupt? Zweck von Interrupts Maskierbare und nicht maskierbare Interrupts Aufruf eines Interrupts Anwendung von Interrupts

Mehr

11. Die PC-Schnittstelle

11. Die PC-Schnittstelle PC-Schnittstelle Funktion -1. Die PC-Schnittstelle.1. Funktion Die folgenden Angaben gelten ohne Einschränkung für den PC, PC-XT, PC-AT, AT-386, AT-486 und kompatible Rechner. Sie sind nur für jene interessant,

Mehr

AVR-Mikrocontroller in BASCOM programmieren, Teil 2

AVR-Mikrocontroller in BASCOM programmieren, Teil 2 jean-claude.feltes@education.lu 1 AVR-Mikrocontroller in BASCOM programmieren, Teil 2 13. Interrupts 13.1 Externe Interrupts durch Taster Wenn Taster mittels Polling abgefragt werden, wie in Teil 1 beschrieben,

Mehr

einfache PIC-Übungsprogramme

einfache PIC-Übungsprogramme einfache PIC-Übungsprogramme Schreibe in MPLAB für das PIC-Übungsboard 01 mit dem PIC16F88 folgendes Programm, assembliere und dokumentiere dieses, schreibe es anschließend mittels dem Programmiergerät

Mehr

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)

Mehr

150 ma (bei eingeschalteter Hintergrundbeleuchtung)

150 ma (bei eingeschalteter Hintergrundbeleuchtung) myavr Technische Beschreibung myavr LCD Add-On 2.2 Eigenschaften 16x2 LC-Display mit Hintergrundbeleuchtung Industriestandard-Controller Kontrastregler Jumper für das Schalten der Hintergrundbeleuchtung

Mehr

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving

Mehr

USB-BAT Bedien-Anzeige-Terminal

USB-BAT Bedien-Anzeige-Terminal USB-BAT Bedien-Anzeige-Terminal USB-H Schnittstellen-Protokoll Stand: 12.01.2011 ELV-Bestell-Nr.: Firmware-Version: 1.1 ELV Elektronik AG Postfach 1000 D-26787 Leer Telefon 04 91/600 888 Telefax 04 91/6008-244

Mehr

Der I²C-Bus. Bearbeitet von: Thomas Finke, EL5

Der I²C-Bus. Bearbeitet von: Thomas Finke, EL5 Der I²C-Bus Bearbeitet von: Thomas Finke, EL5 thomas.finke@gmx.de Inhaltsverzeichnis 1. Entstehungsgeschichte des I²C-Bus...3 2. Technik der I²C-Bus...3 2.1 Hardware-Struktur...3 2.2 Das I²C-Protokoll...4

Mehr

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI) Serielle Kommunikation mit dem Arduino Teil 1: Das Serial Peripheral Interface (SPI) Axel Attraktor e.v. 4. Juni 2012 Axel (Attraktor e.v.) 5. Arduino-Stammtisch 4. Juni 2012 1 / 25 Serielle Kommunikation

Mehr

EDT-REFERAT Adressierungsarten

EDT-REFERAT Adressierungsarten EDT-Referat BÜLBÜL Erkan 2ANB 95 /96 Seite 1 EDT-REFERAT Adressierungsarten INHALTSVERZEICHNIS 1.Theoretische Grundlagen 1.0 Einführung 1.1 Programm- & Datenspeicheradressierbereiche 2.Adressierungsarten

Mehr

10. Die Adressierungsarten des MSP 430

10. Die Adressierungsarten des MSP 430 10. Die Adressierungsarten 10.1 Übersicht über die Adressierungsarten 10.2 -Operanden 10.3 Indexregister mit Distanz 10.4 Symbolische (relativ zum ) 10.5 Absolute 10.6 Indirekte 10.7 Indirekte Adressierung

Mehr

Vortrag zur Seminarphase der PG Solar Doorplate MSP430 Wichtigste Grundlagen von David Tondorf

Vortrag zur Seminarphase der PG Solar Doorplate MSP430 Wichtigste Grundlagen von David Tondorf Vortrag zur Seminarphase der PG Solar Doorplate MSP430 Wichtigste Grundlagen von David Tondorf Technische Daten 16-Bit RISC Architektur bis zu 16 Mhz Vcc: 1,8-3,6V 64 KB FRAM 2 KB SRAM 7 Schlafmodi 5 16-Bit

Mehr

EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H T2PS I3FR I2FR T2R1 T2R0 T2CM T2I1 T2I0 0C8H. AFH AEH ADH ACH ABH AAH A9H A8H Bitdresse

EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H T2PS I3FR I2FR T2R1 T2R0 T2CM T2I1 T2I0 0C8H. AFH AEH ADH ACH ABH AAH A9H A8H Bitdresse Siemens-C515C Special-Function-Register (Subset) MSB 7 6 5 4 3 2 1 LSB 0 COCH3 COCL3 COCH2 COCL2 COCH1 COCL1 COCH0 COCL0 Bit 0C1H CCEN EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H IRCON C7H C6H C5H C4H

Mehr

16-Bit PCA Timer/Counter

16-Bit PCA Timer/Counter 4.5.1 Programmable Counter Array (PCA) Das Programmable Counter Array besteht aus fünf PCA-Modulen, die einen gemeinsamen 16- Bit Timer/Counter als Zeitbasis verwenden. ECI: Externer Clock-Eingang für

Mehr

AVR-Mikrocontroller in BASCOM programmieren

AVR-Mikrocontroller in BASCOM programmieren jean-claude.feltes@education.lu 1 AVR-Mikrocontroller in BASCOM programmieren Der IC-Bus (TWI-Interface) Allgemeines Spezifikationen des IC-Busses: http://www.nxp.com/acrobat_download/literature/9398/39311.pdf

Mehr

Data Monitor Anzeige der zuletzt gesendeten bzw. empfangenen Daten

Data Monitor Anzeige der zuletzt gesendeten bzw. empfangenen Daten T9620 / G9620 MIDI GPIO INTERFACE Gerät zur Umsetzung von Midi - Befehlen auf GPIO 8 - GPI Eingänge Option: weitere 8 GPI und 8 GPO 8 - Potentialfreie GPO Ausgänge Status GPIO Statusanzeige der Ein-Ausgänge

Mehr

Anbindung eines Forth- Targets an einen Forth-Host. Rechner z.b. PC steuert ein Target System z.b. Evaluation Board

Anbindung eines Forth- Targets an einen Forth-Host. Rechner z.b. PC steuert ein Target System z.b. Evaluation Board Anbindung eines Forth- Targets an einen Forth-Host Rechner z.b. PC steuert ein Target System z.b. Evaluation Board Grundsätze Für den Host erscheint der Target als integraler Teil seines eigenen Systems.

Mehr

USB I2C Spy V1.0 Manual

USB I2C Spy V1.0 Manual USB I2C Spy V1.0 Manual (Preliminary) Coptonix GmbH Luxemburger Str. 31 D 13353 Berlin Phone: +49 (0)30 61 74 12 48 Fax: +49 (0)30 61 74 12 47 www.coptonix.com support@coptonix.com 2 Installation des USB

Mehr

Temperaturmodul. Software. Bedeutung der Leuchtdioden. Kanal-LEDs. System-LEDs. Start nach Reset

Temperaturmodul. Software. Bedeutung der Leuchtdioden. Kanal-LEDs. System-LEDs. Start nach Reset Temperaturmodul Software Bedeutung der Leuchtdioden Alle LED sind sog. Bicolor-LEDs, die, wie der Name nicht sagt, drei Farben anzeigen können. Rot, grün und gelb, wenn rot und grün gemeinsam aktiviert

Mehr

Klausur zur Mikroprozessortechnik

Klausur 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

Mehr

STM32 - Schieberegister, SPI - u

STM32 - Schieberegister, SPI - u STM32 - Schieberegister, u23 2013 andy, florob, gordin, ike, meise, tobix, zakx e.v. http://koeln.ccc.de Cologne 2013-11-04 STM32 - Schieberegister, - u23 2013 1 Schieberegister Schieberegister Codebeispiel

Mehr

LCDT240160TS Touch Screen

LCDT240160TS Touch Screen LCDT240160TS Touch Screen Softw. V.1.2a Hardw. V.2.0 Vtec Electronics GmbH Schenkstrasse 1 CH-3380 Wangen a.a. Tel. 032 631 11 54 www.vtec.ch Vtec Electronics GmbH Schenkstrasse 1 Postfach 124 CH-3380

Mehr

Bisher hatten immer nur als Ausgänge geschaltet und hierfür folgende Befehle benutzt:

Bisher hatten immer nur als Ausgänge geschaltet und hierfür folgende Befehle benutzt: Tasten abfragen Bisher hatten immer nur als Ausgänge geschaltet und hierfür folgende Befehle benutzt: pinmode(pinnummer, OUTPUT) digitalwrite(pinnummer, HIGH) oder digitalwrite(pinnummer, LOW) Zum Abfragen

Mehr

Programmierübungen in Assembler

Programmierübungen in Assembler Programmierübungen in Assembler 1. LED Ein-/Ausschalten Verwendet: Ports An Portpin P3.0 ist eine LED angeschlossen. An Portpin P1.0 ist ein Taster angeschlossen. a) Schreiben Sie ein Programm, welches

Mehr

Lösungen zum Kurs "Mikrocontroller Hard- und Software

Lösungen zum Kurs Mikrocontroller Hard- und Software Lösungen zum Kurs "Mikrocontroller Hard- und Software Gerhard Schmidt Kastanienallee 20 64289 Darmstadt http://www.avr-asm-tutorial.net Lösung Aufgabe 2 Aufgabe 2 sbi DDRB,PB0 2 Takte sbi PORTB,PB0 2 Takte

Mehr

I2C Serial 2.6 LCD Modul

I2C Serial 2.6 LCD Modul Ausgabe 08.09.2017 Copyright by Joy-IT 1 Index 1. Verwendung mit einem Arduino 1.1 Anschließen des Displays 1.2 Installation der Bibliothek 1.3 Beispiel-Code 2. Verwendung mit einem Raspberry Pi 2.1 Installation

Mehr

Daniel Betz Wintersemester 2011/12

Daniel Betz Wintersemester 2011/12 Daniel Betz Wintersemester 2011/12 Digitally signed by daniel.betz@daniel-betz.com Date: 2011.12.04 17:24:40 +01'00' Insgesamt 16 Register von je 16 Bit (=WORD) Breite Untere 8 Register auch als 2 Register

Mehr

Kapitel 18. Externe Komponenten

Kapitel 18. Externe Komponenten Kapitel 18 Externe Komponenten 31.05.11 K.Kraft E:\MCT_Vorlesung\MCT2011\Externe_31\Externe.odt 18-1 Anschluss von externen Komponenten Einfachste Art : Direkt an einem Port Beispiel Ausgabe : 7-Strich

Mehr

BMC - Mikrocomputertechnik 2017 Aufgaben & Beispiele

BMC - Mikrocomputertechnik 2017 Aufgaben & Beispiele Programme mit dem Simulator testen start: mov p1,#00001111b mov p1,#11110000b Google sim535 Hernando Vasquez http://hernando-vasquez.software.informer.com/ Seite 1 / 35 Bitmuster auf Port 1 (LED-Zeile)

Mehr

Dateien, die nicht in das Projekt eingebunden sind, werden ohne Syntax highlight dargestellt. MiCoWi und µvision Seite 1 Uwe Wittenfeld

Dateien, die nicht in das Projekt eingebunden sind, werden ohne Syntax highlight dargestellt. MiCoWi und µvision Seite 1 Uwe Wittenfeld C-Programmierung von MiCoWi mit der Keil-Entwicklungsumgebung µvision4 1. Erstellung eines neuen Projektes Menüpunkt: Project New µvision Project Es wird ein komplett neues Projekt in einem beliebigen

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

MOP: Hinweise zur professionellen Assembler-Programmierung

MOP: Hinweise zur professionellen Assembler-Programmierung Beuth Hochschule Berlin FB VI, Labor für Digitaltechnik MOP: Hinweise zur professionellen Assembler-Programmierung Allgemeine Grundlagen Ein Programm kann als Sammlung von Befehlen (engl. instructions

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

Mikrocontroller - Tipps & Tricks

Mikrocontroller - Tipps & Tricks Mikrocontroller - Tipps & Tricks Mikrocontroller vs. CPU CPU alles RAM, viel RAM Keine On-Chip Peripherie Viele Chips, Motherboard Mikrocontroller Wenig RAM, Flash im Chip mit drin Peripherie an Board

Mehr

Protokoll zum Datenaustausch zwischen RS485-Master und Trübungssensor Version

Protokoll zum Datenaustausch zwischen RS485-Master und Trübungssensor Version Protokoll zum Datenaustausch zwischen RS485-Master und Trübungssensor Version 1.0.12 Anschluss-Einstellungen (1200,N,8,1) Baudrate: 1200 baud Paritätsbit: ohne Startbit: 1 Bit Nutzdaten: 8 Datenbit Stoppbit:

Mehr

Servo-Modul Version

Servo-Modul Version Servo-Modul Version 1.0 24.06.2010 Mit dem Servo-Modul ist es möglich bis zu 8 Modellbau-Servos (analoges Signal) an zu steuern. Die Ansteuerung kann wahlweise über den I2C-Bus, einen COM-Port (RS232)

Mehr

1. Allgemein Befehle... 3

1. Allgemein Befehle... 3 Inhalt 1. Allgemein... 2 2. Befehle... 3 2.1. GET... 3 2.1.1. SPEED... 3 2.1.2. SDA, SCL, INT... 3 2.1.3. VERSION... 3 2.1.4. PULLUP... 3 2.2. SET... 4 2.2.1. SPEED... 4 2.2.2. SDA, SCL, INT... 4 2.2.3.

Mehr

Name : Klasse : Punkte : Note :

Name : Klasse : Punkte : Note : Name : Klasse : Punkte : Note : Zeit: 08.00 bis 09.30 Es dürfen alle Unterlagen verwendet werden. Die Aufgaben sind möglichst direkt auf den Blättern zu lösen (Antworten bitte in ganzen Sätzen!), bei Bedarf

Mehr

i2c-bus.de ASCII ZEICHEN AUF DEM HYPERTERMINAL Übungsaufgabe RS232 Schnittstelle Dokument NR.: AB-001-U-01

i2c-bus.de ASCII ZEICHEN AUF DEM HYPERTERMINAL Übungsaufgabe RS232 Schnittstelle Dokument NR.: AB-001-U-01 DA Dokument NR.: AB-001-U-01 ACII ZEICHEN AUF DEM HYPERTERMINAL Übungsaufgabe R232 chnittstelle P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken DA ACII Zeichen auf dem Hyperterminal Inhaltsverzeichnis

Mehr

Spemon 552 V1.1 BÖZE Co. Realisierung einer mikroprozessorgesteuerten Dimmerschaltung

Spemon 552 V1.1 BÖZE Co. Realisierung einer mikroprozessorgesteuerten Dimmerschaltung Spemon 552 V1.1 BÖZE Co. Realisierung einer mikroprozessorgesteuerten Dimmerschaltung 1.Aufgabenstellung Entwurf und Realisierung einer mikroprozessorgesteuerten Dimmerschaltung mit folgenden Features:

Mehr

Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung. Kurzbeschreibung

Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung. Kurzbeschreibung Ringlicht-v3 - Frei konfigurierbares Ringlicht mit RS232 Anbindung Kurzbeschreibung Das frei konfigurierbare Ringlicht kann jede beliebige Abfolge an Lichtmustern erzeugen und über einen Triggereingang

Mehr

0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags.

0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags. 3. Assembler-Programmierung Der PIC 16F84A Microcontroller kennt 35 verschiedene Befehle. Für eine ausführliche Beschreibung aller Befehle siehe PIC16F84A-Datenblatt Kapitel 7.1. 3.1 Wichtige Flaggen im

Mehr

COMM-TEC EIB-Gateway

COMM-TEC EIB-Gateway COMM-TEC EIB-Gateway GW-KNX (Hutschienenmontage) Benutzer-Handbuch Version 1.1 Inhaltsverzeichnis 1. Einführung... 3 2. Konfiguration (mit HyperTerminal)... 4 2.1 Verkabelung... 4 2.2 Voreinstellungen

Mehr

Architektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005

Architektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005 Architektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005 1 1. DIE GESCHICHTE DER 8051-MIKROCONTROLLERFAMILE 4 2. GRUNDLEGENDE HARDWARESTRUKTUR UND FUNKTIONSMODELL 5 2.1 HARDWARESTRUKTUR

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

Multitasking / virtuelle Maschinen mittels Atmel AVR- Mikrocontrollern (Simple & Stupid)

Multitasking / virtuelle Maschinen mittels Atmel AVR- Mikrocontrollern (Simple & Stupid) VM/AVR SIMPLE & STUPID 1 Multitasking / virtuelle Maschinen mittels Atmel AVR- Mikrocontrollern (Simple & Stupid) Stand: 26. 1. 2010 Zweck: Elementare Demonstration der Mehrprogrammausführung auf Grundlage

Mehr

WS2500 V24-Kommunikation

WS2500 V24-Kommunikation WS2500 V24-Kommunikation Seite 1 von 9 Inhaltsverzeichnis V24-DATENÜBERTRAGUNG... 3 AKTIVIERUNG DER DATENÜBERTRAGUNG... 3 DATENFORMATE... 4 Datenrahmen bei Befehlen vom PC zur WS2500... 4 Befehlsübersicht...

Mehr

'

' ------------------------------------------------------------------------------ Sorry für diese Art der Darstellung. So stelle ich sicher, daß niveaulose Trittbrettfahrer die Daten wenigstens selbst einmal

Mehr

= 7 (In Binärdarstellung: = 0111; Unterlauf) = -8 (In Binärdarstellung: = 1000; Überlauf)

= 7 (In Binärdarstellung: = 0111; Unterlauf) = -8 (In Binärdarstellung: = 1000; Überlauf) Musterlösung Übung 2 Aufgabe 1: Große Zahlen Das Ergebnis ist nicht immer richtig. Die Maschine erzeugt bei Zahlen, die zu groß sind um sie darstellen zu können einen Über- bzw. einen Unterlauf. Beispiele

Mehr

MODBUS RTU Übertragungsprotokoll für Digitale Elektronische Vorschaltgeräte mit RS-485 Schnittstelle

MODBUS RTU Übertragungsprotokoll für Digitale Elektronische Vorschaltgeräte mit RS-485 Schnittstelle MODBUS RTU Übertragungsprotokoll für Digitale Elektronische Vorschaltgeräte mit RS-485 Schnittstelle Die Digitalen Elektronischen Vorschaltgeräte von LT-Elektronik Gera GmbH unterstützen die serielle Datenübertragung

Mehr

Assembler (NASM) Crashkurs von Sönke Schmidt

Assembler (NASM) Crashkurs von Sönke Schmidt Sönke Schmidt (NASM) Crashkurs von Sönke Schmidt Berlin, 4.11.2015 Meine Webseite: http://www.soenke-berlin.de NASM Was ist das? nach Wikipedia: Ein ist ein Programmierwerkzeug, das ein in maschinennaher

Mehr

E. Fehlermeldungen von PC-Bibliotheken

E. Fehlermeldungen von PC-Bibliotheken Anhang Fehlermeldungen von PC-Bibliotheken -1. Fehlermeldungen von PC-Bibliotheken Beim insatz von MODULAR-4/486 und Multi-LAB/2 Karten und den dazugehörigen Bibliotheken können die folgenden Fehlermeldungen

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