Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Mc Seite 1 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tafelanschrieb Mikrocomputertechnik WS04 Jürgen Walter.

Ähnliche Präsentationen


Präsentation zum Thema: "Mc Seite 1 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tafelanschrieb Mikrocomputertechnik WS04 Jürgen Walter."—  Präsentation transkript:

1 mc Seite 1 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tafelanschrieb Mikrocomputertechnik WS04 Jürgen Walter

2 mc Seite 2 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Assembler übersetzt den mnemotechnischen Code in Hexademzimalzahlen Linker – bindet einzelne Programmteile zusammen Locator – legt die absoluten Adressen für den Code fest

3 mc Seite 3 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Adressspiegelung 15. te Bit unterscheidet zwischen unterem und oberen Adressbereich im EPROM steht der Befehl ljmp 80AE Adresse Nach dem Einschalten des Controllers wird das Programm in Programmspeicheradresse 0000h ausgeführt -> ljmp 80AE A15 = 1 bewirkt eine Umschaltung des D- Flip-Flops -> A15 wird gespiegelt -> Zugriff wieder auf das EPROM

4 mc Seite 4 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Adressspiegelung Vertauschen von EPROM-Speicher und RAM- Speicher Verknüpfung von /PSEN und /RD Warum muss A15 gespiegelt werden? Nach dem Einschalten des Controllers wird der Befehl in Adresszelle 0000h ausgeführt -> Programm darf nicht größer als 32KByte werden

5 mc Seite 5 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tipps Sobald ein Programm größer als 1KByte in Assembler wird -> C Wenn das Programm größer als 100KByte - >C++ Objektorientiert noch besser ->C# C Sharp Warum diese Empfehlung? 40% - 60% effektiver

6 mc Seite 6 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Was erwartet Sie in MC Der Dozent F11 Ich bringe mein Notebook mit Binär Code – Rechner – wissenschaftlich Wie bewerbe ich mich? Was ist eine Draisine Wo finde ich Infos zur mc Wie bestehe ich die Prüfung? Klavier spielen Computer spielen – programmieren - ASM

7 mc Seite 7 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Internet – ohne Firewall – für Ihren Rechner sind Sie verantwortlich

8 mc Seite 8 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 MC Vorlesung + Labor Zu Beginn: intensiv Vorlesung Multitasking – mehrere Programme /

9 mc Seite 9 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Marko Veselcic + Uwe Zundel + FT Tutorium Mittwoch 11:30 – 13:00 FH Karlsruhe, Gebäude LI, Raum U22,

10 mc Seite 10 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Details Netzwerk RJ 45 einstecken Probleme die länger als 15 Min. dauern…aufhören-> NachbarIn fragen xxx.xxx wird nicht nach außen weitergeleitet. – Adresse WaveLan cmd-Box ipconfig ipconfig /all ping

11 mc Seite 11 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Wichtige Internetadressen

12 mc Seite 12 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Controller Leihe Din-A4 – eintragen in Nachricht an Bibliothek

13 mc Seite 13 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Arbeiten Sie mit dem Rechner!

14 mc Seite 14 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Mein erster Befehl in 8051-Assembler Assembler Maschinensprache Programm zum Übersetzen mov A,R1;Inhalt von R1 in A mov R1,A;Inhalt von A in R1 nop;No Operation

15 mc Seite 15 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Wie komme ich ins Netzwerk HIT interne Adressen fest installierten Rechnern ? Adressen werden über RZ zugewiesen – DHCP proxy.fh-karlsruhe.de Port: 8888 WaveLan Adresse: xxx.xxx proxy ausschalten

16 mc Seite 16 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenfassung Befehle auf DOS-Ebene EURO_535-Karte Software – Keil – mov A,R1 ; Schiebe Inhalt von R1 in A mov R1,A end Ebenenmodell

17 mc Seite 17 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Arbeiten am PC Zum Konfigurieren – Administrator Normales Arbeiten - Hauptbenutzer

18 mc Seite 18 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Eierlegende Wollmilchsau Der vernetzte PC kann alle Geräte Maschinen Medien simulieren – nachahmen und damit teilweise ersetzen

19 mc Seite 19 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Denken? Herr Kraft hat Haare mit der Dicke von 45µm. Wie oft muss er sein Haar spalten damit er die Strukturbreite von modernen Prozessoren mit 90nm erhält? Alle 1,5 Jahre verdoppelt sich die Anzahl der Transistoren und damit die Rechenleistung Moorsche Gesetz

20 mc Seite 20 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Neuer Befehl mov A,#0A5;Lade den Akku mit 165 AH, Ah, 0xA

21 mc Seite 21 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenfassung Umsetzer: Seriell USB V24 – USB RS232C – USB Lösung für ca. 30 Notebooks Begriffsbestimmung: µC, µController, PC Schaltwerk – Rechenwerk Peripherie Pegelunterschiede CMOS – TTL Umgang mit EURO_535-Karte – Wie fasse ich die Karte an?

22 mc Seite 22 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenfassung 2 Belwue.de – BadenWürttemberg Forschungsnetz WaveLan – Wireless LAN Datenübertragung – Geschwindigkeit kbps – kB/s

23 mc Seite 23 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Digitaltechnik - CBT Nur die notwendigsten Funktionen Computer Based Training

24 mc Seite 24 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Arbeiten am PC Prinzip: Festplatte C: für Programme Festplatte D: für Daten Hausaufgabe: CBT Neu packen! Als ZIP Verwenden Sie nur Entwicklungs-Programme von Firmen die sehr wahrscheinlich wirtschaftlich überleben!

25 mc Seite 25 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Betreuung: Herr Wolfgang Loes – Gebäude P – Raum 203 Tel. 1325

26 mc Seite 26 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenfassung Logische Verknüpfungen UND, ODER, NOR, NAND, Exclusiv-Oder = Antivalenz, Äquivalenz /R – LOW-Aktives Signal Wahrheitstabelle, Signal-Zeit-Diagramm, Funktionsgleichung, Blockschaltbild CBT-2 D-Flip-Flop Initialisierung mit /S /R Speicherung erfolgt mit steigender Flanke

27 mc Seite 27 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 CBT - 2 Register mit steigender Flanke erfolgt der Speichervorgang Latch mit fallender Flanke erfolgt der Speichervorgang Sobald LE auf HIGH liegt wird der Eingang auf den Ausgang durchgeschaltet

28 mc Seite 28 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenfassung Dienstag Keine Vorlesung aufgrund Baulärm! Vorlesung wird nachgeholt! Schreibmaschinenkurs wird empfohlen!

29 mc Seite 29 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Simulator Ziel: Mein erstes Programm mit Assembler $ - Anweisungen an den Assembler ; Kommentar jnb P1.1,EIN;Springe bei P1.1=0 ;nach EIN jmp LABEL;Springe nach LABEL clr P3.2;Setze Port P3.2=0 setb P3.2; Setze Port P3.2=1

30 mc Seite 30 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Weitere Befehle end ORG 100H;Setze den PC Program ;Counter auf 100H

31 mc Seite 31 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programmentwicklung PDL Program Design Language WAS wird entwickelt? zuerst die Kommentare, dann die Befehlsumsetzung Sprachunabhängig – Umsetzung in Assembler oder C C++ ist bei 8051-Controllern noch nicht umsetzbar

32 mc Seite 32 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programmentwicklung Keil µVision Installation Patch installiert – Erweiterung: Wie entwickeln Sie einfach Programme für EURO_535 = Volkscontroller Embedded System = Eingebettet = der Controller ist in das System integriert Patch stellt die Verbindung zur Hardware her *.pdf – Controller hat mehrere Register – Controller hat A/D-Wandler Man muss der Software die Hardware bekannt machen!

33 mc Seite 33 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Debug Mode Entwanzen Viele Fehler welche in der Software vermutet werden, sind in der Hardware (Controllern) F5 – RUN F11 – Einzelschritt

34 mc Seite 34 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Immer wenn Sie am PC nicht… weiterkommen RECHTE MAUSTASTE – kontextsensitives Menü

35 mc Seite 35 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Breakpoint setzen Im Programm RENAUD wird ein Breakpoint gesetzt.

36 mc Seite 36 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zusammenarbeit Ordnerstruktur übernehmen C:/8051/ASM Assembler – Programme In Ordner ASM alle Projekte Namensbezeichnung übernehmen

37 mc Seite 37 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Empfehlung Programm im Simulator entwickeln Programm auf Hardware testen – Hardware- Debugger – Remote Debug System

38 mc Seite 38 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Was wurde bei der Entwicklung…. alles erzeugt REAUD.LST – Listing Datei LOC Location – Ort vom Programmcode PC Programmspeicherplatz OBJObject Code

39 mc Seite 39 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Was haben wir heute gemacht? Wo und wie wird das Programm abgespeichert? Komponenten Breakpoint setzen Zusammenhänge der Entwicklungsumgebung

40 mc Seite 40 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Evaluation Jede Kritik zur Verbesserung der Vorlesung und des Labors ist willkommen.

41 mc Seite 41 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Statistik WLAN - Notebooks 66 Studierende 8 kein Notebook 18 WLAN 40 per LAN

42 mc Seite 42 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 WaveLan b/g – 2,4 GHz 11Mbit/s 54MBit/s a 5,4 GHz 54Mbit/s bis 108Mbit/s

43 mc Seite 43 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Projekte - Dokumentation Projekte aus dem letzten Semester SS04 Im Musterweb Mindmap WS04-Projektname

44 mc Seite 44 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Frontpage-Seitenerstellungsprogramm Integration in Betriebssystem gegeben Datenbankanbindung sehr gut realisiert Layout verbesserungswürdig

45 mc Seite 45 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Musterweb: Entwurf und Gestaltung + MC Download bei Prof. Dr. Weber Entpacken auf lokale Platte

46 mc Seite 46 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Vorsicht ….wird teuer Musterweb Musterweb Veröffentlichen Benutzer mic-ss04 PSW: Regatta1 Vorsicht: Startseite beachten Startseite, je nach Server unterschiedlich

47 mc Seite 47 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Wo wird veröffentlicht? Warum: wird nicht gelöscht wenn der Student die FH verläßt. Walter sichert am Ende des Semesters

48 mc Seite 48 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen! Keil Simulator Seitenerstellung / Dokumentation im Internet / Intranet für Methodisches Vorgehen

49 mc Seite 49 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Test des Befehls: mov A,R1 mov R1,#0A5hTest!

50 mc Seite 50 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Wichtig! Pegelerzeugung

51 mc Seite 51 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 /OE Output Enable -> bei 1-Pegel wird freigeschaltet / Verneinung /Output Enable -> bei 0-Pegel wird freigeschaltet

52 mc Seite 52 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Übung Datenübergabe Nach dieser Übung wissen Sie: Was macht der Befehlinterpreter Was macht das Steuerwerk

53 mc Seite 53 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Auswahl von Registern Verbindung von Registern mit Bussen - Datenbus Decoder – Adressen – Adressbus 15 Adressleitungen -> 32768

54 mc Seite 54 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Tag Blockschaltbild EURO_535

55 mc Seite 55 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zugang zum Internet DNS Domain Name Service proxy.fh-karlsruhe.de port 8888 Für lokale Adressen Proxy umgehen *.fh-karlsruhe.de

56 mc Seite 56 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kondensatoren 100nF - Blockkondensatoren – schlechte Kondensatoren tan alpha (nicht Energie speichern – sondern Spannungsspitzen zerstören) 10µF - Glättungskondensator

57 mc Seite 57 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Herzlich willkommen Besprechungstermine Dienstag/Mittwoch Labor vereinbart teilweise Schwierigkeiten da Sprachunterricht nachmittags - Dozent verlegt auf die Abendstunden Blockschaltbild Euro_535 und Schaltbild Euro_535 Internetführerschein Multiple-Choice Fragen Evaluation Pegelerzeugung

58 mc Seite 58 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Portfunktionen EIN-AUSGANG P ca. 50kOhm Mäuseklavier

59 mc Seite 59 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Der rote Faden! Zwiebelmodell: von außen nach Innen vordringen / schälen Zunächst wird das Kernsystem betrachtet Alle 8051-Befehle werden ausgeführt! Bei neuen / erweiterten Controllern der Familie kommen nur neue Register hinzu. Vergleich REG51 mit REG535 Alle Register von REG51 sind im REG535 enthalten

60 mc Seite 60 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Drei wesentliche Signale /WR Schreiben auf Datenspeicher /RD Lesen vom Datenspeicher /PSEN Lesen vom Programmspeicher Alle Bezeichnungsweisen aus Sicht des Prozessors! DIL Dual Inline Version Wie der Chip in die Karte kommt? Video Kapitel 3 Folie 9 – Ende - Bis später….

61 mc Seite 61 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Tag – Ports Ports – innere Aufbau und äußere Beschaltung Unterschiede 8051 – REG535.PDF REG51.PDF Zwiebel Pin Definition Ports können mehrere Funktionen haben: Ein- Ausgang, Adressbus, Datenbus, Auxiliary Functions

62 mc Seite 62 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Port 3 – besondere Funktionen RxD, TxD – Empfangen und Senden über serielle Schnittstelle T0, T1 – Timer 0,1 /INT0, /INT1 – Hardware-Interrupt /RD, /WR Lesen und Schreiben auf Datenspeicher

63 mc Seite 63 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Fan Out Ausgangsleistung von einem Port bei CMOS max. 2mA Vorsicht beim Anschluss von Leuchtdioden! Strombegrenzung beachten Spezifikation: Jeder Ausgang kann 4 LS TTL- Lasten treiben

64 mc Seite 64 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Beschaltung von Port 0 Normalerweise Float- 50 kΩ gegen Vcc zusätzlich verschalten – nur an Port 0 An Port 0 ist der Datenbus: Port 0 kann 8 TTL LS-Lasten treiben

65 mc Seite 65 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Schreiben auf externen Datenspeicher Übung Schreiben Sie ein Programm EXT_A5 welches bei: T1 betätigt: A5h in den externen Speicher auf Adresse 2000h schreibt. T2 betätigt: 5Ah in den externen Speicher auf Adresse 2000h schreibt. mov DPTR,#2000h Bitte PDL verwenden – zuerst Kommentar was gemacht wird.

66 mc Seite 66 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Externer Datenspeicher X: = Bezeichnung für externen Datenspeicher C: = Bezeichnung für externen Programmspeicher D: =Bezeichnung für internen Datenspeicher B: =Bezeichnung für bitadressierbaren Speicherbereich I: =Bezeichnung für indirekt adressierbaren Speicherbereich

67 mc Seite 67 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Neuer Befehl inc DPTR;DPTR+1 Neue Aufgabe Beschreiben Sie den externen Datenspeicher von 2000h -20FFh mit A5h (Hausaufgabe für Walter) djnz R1,MARKE;Dekrementiere R1 falls R1 0 springenach MARKE Übung: 5A in die Speicherzellen 2000h-20FFh bei T2=0 schreiben

68 mc Seite 68 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Vielen Dank für Ihre Aufmerksamkeit!

69 mc Seite 69 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Label 5A als Label – geht nicht, da eine Zahl Eine Marke darf nicht mit einer Zahl beginnen

70 mc Seite 70 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Toll ! Bei allen Studenten laufen die geliehenen VolksController! Kompliment an Betreuer!

71 mc Seite 71 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Wo waren Sie denn?????? Mechatronik-Award Port – Ein-Ausgang, Funktionen Register djnz Rn,SPRUNGMARKE Programm: EXT_BER Beschreiben vom externen Speicher von 2000h bis 2030h

72 mc Seite 72 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programm: MUEDE Beschreiben Sie den externen Datenspeicher: T1 mit A5h T2 mit 5Ah von 2000h…..2FFFh

73 mc Seite 73 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Reihenfolge!!! Denken, Programmieren, Debuggen falsch: Programmieren, Denken, Debuggen

74 mc Seite 74 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Überlegungen 2FFFh ……2000h FFFh – Register ist 8 Bit breit -> zwei Register werden benötigt für 16Bit- Zahl R1 = LOW BYTE = 0h = innere Schleife R2 = HIGH BYTE = 10h = äußere Schleife Bei 8-Bit Controller gilt: Alle Register sind 8 Bit breit – außer DPTR, PC Kombinationaus 2 8 Bit Registern DPTR = DPH + DPL

75 mc Seite 75 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Programm muede Programmentwicklung durch Variation von alten Programmen. -> Programme müssen korrekt dokumentiert sein! Nur dokumentierte Programme sind existent.

76 mc Seite 76 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Grundlagen x -> externer Datenspeicher Adresse 2000h X:0x2000 DPTR Datenpointer 16 Bit breit DPTR DPH, DPL Bei 8051 nur 1 Datenpointer Bei 80537, gibt es 8 Datenpointer R1, R2 als Zählregister -> 8Bit Breite innere und äußere Schleife Breakpoints setzen

77 mc Seite 77 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Ports 8051 Port 0 – I/O – Adressbus LB – Datenbus Port 1 – I/O Port 2 – I/O – Adressbus HB Port 3 – I/O – Auxiliary Functions - /INT0, /INT1, /RD, /WR, T0,T1, RxD, TxD

78 mc Seite 78 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 USART U – universal S – synchron – 1Mbit/s A – asynchron – max. 115 KBit/s R – Receiver T - Transmitter

79 mc Seite 79 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zwei Adress-Zeiger DPTR = DPH + DPL PC = PCH + PCL

80 mc Seite 80 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Nur dokumentierte Software ist existent Denken, programmieren, debuggen Programm mit zwei Schleifen MUEDE In sich geschachtelte Schleifen Bitbreite 16-Bit – 2000h-2FFFh 2 Register – R2, R1 Ports verfeinertes Blockdiagramm Richtungen – Datenwege Adresserzeugung -

81 mc Seite 81 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober Bit Register DPTR Datenpointer – lässt sich direkt laden PC Program Counter – Adresse auf Programmspeicher – lässt sich nicht direkt laden Nur bei gibt es internen ROM Bei ist kein interner ROM vorhanden wird nicht mehr produziert 80C515C 8051-Controller mit CAN-Bus

82 mc Seite 82 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programmieren - Controller Zuerst wird die Funktionsweise der Hardware programmiert Modifizieren und konfigurieren der Hardware Zusammenspiel Hardware + Software Hardware ist die wesentliche Voraussetzung damit Software läuft TMOD – TCON SCON – TCON

83 mc Seite 83 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Blinken mit Schleife BMS Lassen Sie die Leuchte an Port 3.2 mit der Frequenz 1 Hz blinken. (0,5s aus – 0,5s ein) PDL – Was wird gemacht? Wie wird 0,5 s erzeugt – Warteschleife mehrere Register schachteln MUEDE auf Dauer untersuchen. -> Ergebnis : CPU macht nichts anderes als zählen – Gezieltes Spielen ungenau ideal: Zeitgeber mit der Dauer von 50ms

84 mc Seite 84 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Timer - zählt bis …… > Überlauf -> Automatisches Wiederladen mit Geheimnis: TIMER2 Mit Timer 2 erzeugen wir 50ms Wenn Überlauf auftritt -> TF2 Flag wird gesetzt Flag? - Flagge

85 mc Seite 85 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Blinken mit Timer 2 – BMT2 Guten Morgen CRCL, CRCH =Compare – Reload – Capture CCL#,CCH# Wir möchten die Funktion Wiederladen T2CON Control Register Timer 2 SFR Special Function Register Controller wird eingeschaltet -> Alle Register sind auf 0 – Ausnahme: Ports, Serielle Schnittstelle SBUF, Stackpointer

86 mc Seite 86 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Überlegung zum Programm Hardware initialisieren - Voreinstellungen der Hardware durchführen LABEL: Auslösen des Vorgangs mit Taste 1 10*50ms warten komplementieren Sprung nach LABEL

87 mc Seite 87 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen BMT3 – Das Programm ist schlecht programmiert Prozessor wartet auf TF2 Flag Kann während dieser Zeit nichts anderes machen - > Schlecht Beispiel: Warten auf Beginn Vorlesung

88 mc Seite 88 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Interrupt wird zugelassen Allgemeine Interrupt-Freigabe (EAL) Spezielle Interrupt-Freigabe (ET2) für Timer 2 Ab dem Interrupt-Vektor –spezielle Adresse im Programmspeicher, durch Hardware vorgegeben- wird das Interrupt-Programm geschrieben. Sobald ein Interrupt auftritt, das EAL-Bit und das spezielle Interrupt-Bit freigegeben ist, wird das Programm am Interrupt-Vektor fortgesetzt.

89 mc Seite 89 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Subroutine - Interrupts Subroutine – call immer mit ret abschliessen Interrupts immer mit reti abschliessen

90 mc Seite 90 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Aufgabe Laden Sie das Programm BMT_MI Führen das Programm im Debugger aus Breakpoint in der ISR setzen cpl P3.2 Timer2 ist 10 mal übergelaufen Ändern Sie das Programm auf T=2 Sekunden

91 mc Seite 91 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Interrupt Freigabe EAL Allgemeine Spezielle ET2 Interrupt-Vektor An einer Adresse im Programmspeicher steht das auszuführende Programm call mit ret abschliessen

92 mc Seite 92 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kleine Aufgabe An welcher Stelle im Programmspeicher PC wird die ISR_T2 ausgeführt?

93 mc Seite 93 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Der Stackpointer Ist eine Adresse, welche auf eine Adresse im internen Datenspeicher zeigt. Diese Adresse im internen Datenspeicher enthält die Rücksprungadresse.

94 mc Seite 94 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Was wurde begriffen? Interrupt – Funktion – Ablauf Test im Simulator Funktion Stackpointers Wo stehen die Rücksprungadressen? nicht vergessen – nicht überschreiben Listing-File - wo finde ich die Adressen vom Programmspeicher Konfigurieren der seriellen Schnittstelle am PC Anschließen der EURO_535-Hardware

95 mc Seite 95 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Neue Hardware am Rechner Administrator wird benötigt! Datensicherung – jeder ist selbst verantwortlich

96 mc Seite 96 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Serielle Schnittstelle SCON Control-Register für serielle Schnittstelle SBUF (senden) Register zum Senden SBUF (empfangen) Register für den Empfang Port 3.1 = TxD Transmit - senden Port 3.0 = RxD Receive – empfangen

97 mc Seite 97 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Aufgabe Mit einem Terminalprogramm wird ein großer Buchstabe an die Euro_535 gesendet, in einen kleinen gewandelt und an das Terminal zurückgesendet. Lösung großer Buchstabe in kleinen wandeln: in hex: 20h addieren Einstellungen auf PC-Seite + Euro_535 Herausforderung: Serielle Schnittstelle 1 wird zum Debuggen benutzt -> Serielle Schnittstelle 2 keine echte serielle Schnittstelle -> Programm seriell2

98 mc Seite 98 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Serielle Schnittstelle Ablauf Einstellungen der seriellen Schnittstellen SCON Control serielle Schnittstelle PCON Control Power Verfahren: Interrupt -> PC? Interrupt-Vektor =Adresse im Programmspeicher: 0023h Fundstellen für Interruptvektoren: Buch Seite S. 115 Users Manual S. 240 Interrupt-Einheit programmmieren

99 mc Seite 99 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programm: SER_ZEICH Ausführung im Simulator Wie funktioniert das Programm? Über Serial Window #1 wird ein großer Buchstabe gesendet -> Interrupt wird ausgelöst -> Programm wird an 23h fortgesetzt Subroutine – Unterprogramm SBUF->A A+20h A->SBUF RI+TI zurücksetzen ->

100 mc Seite 100 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Programm: SER_ZEICH2 Unterprogramm mit ret beenden Interrupt mit reti beenden Warteschleife Bitte Programm laden und im Debugger testen Eingabe von großen Buchstaben Breakpoint in Subroutine: SERINT: setzen

101 mc Seite 101 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Interrupt - Pollen Briefkasten immer wieder nachschauen ist etwas da -> Verfahren: pollen Schalter der Öffnung detektiert und rote Lampe geht an: Interrupt

102 mc Seite 102 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Serielle Schnittstelle interner Aufbau mit Shift-Registern SBUF /WR /RD Vorsicht Bits zur Kontrolle der seriellen Schnittstelle sind verteilt auf: SCON PCON –SMOD ADCON –BD +evtl. zur Synchronisation CLK

103 mc Seite 103 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Seriell2 Programm für eine per Software realisierte Schnittstelle (COM2) Port 1.4 RxD2 Port 4.7 TxD2

104 mc Seite 104 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kompatibilität Ältere Software muss auf neuerer Hardware laufen Bei der Entwicklung Restriktionen – aber die Mehrarbeit lohnt sich! Die meisten Kosten sind in der Software

105 mc Seite 105 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Empfehlung für Portbelegung Port 1 P1.1 –P1.3 Servomotor P1.4 COM2 Port 3 – Sonderfunktionen Port 4 frei!!! Ausgänge Port 5 frei!!! Eingänge Port 6 A/D-Wandler

106 mc Seite 106 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 A/D-Wandler Port 6 Sample and Hold Wandlungszeit 15µs …20µs Bitbreite 8Bit…..10Bit 5V t

107 mc Seite 107 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Auslösen der Wandlung mov DAPR,#0;Wandlung wird ausgel ;Bereich 0..5V DAPR-Register: Low-Nibble – Vorgabe von unterem Bezugspegel High – Vorgabe von oberen Bezugspegel Mit DAPR wird Messbereich vorgegeben Vielen Dank auf Wiedersehen!

108 mc Seite 108 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kleine Aufgabe Lösen Sie eine A/D-Wandlung aus, sobald T1 betätigt wird. Schieben Sie den Inhalt von ADDAT in den Akku Programm: ADWP A/D-Wandlung Primitiv Tipp: Wandlungszeit ~18µs Solange die Wandlung läuft ist BSY-Bit gesetzt

109 mc Seite 109 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen PSW Program Status Word CY Carry-Bit

110 mc Seite 110 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Zahlendarstellung char 0…255 – 0h…FFh unsigned integer 0…255 Vorsicht bei C 0…65535 signed integer -128… negative Zahl das vorderste Bit = 1 bei C … Negative Zahlen werden im Zweierkomplement dargestellt Zahl Zweierkomplement der Zahl

111 mc Seite 111 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kleine Übung Berechnen Sie das Ergebnis der Subtraktion: 0 – 103 0h-67h=99h ????? im Mikrocontroller WARUM????? mit Hilfe von AN0_COD

112 mc Seite 112 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Stackpointer: Adresse im internen Datenspeicher, welche eine Adresse enthält Stackpointer hat nach einem RESET den Wert 07 - Überbleibsel aus der 8048-Zeit

113 mc Seite 113 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Anschluss Servomotor Rot +5V – A4 Braun GND – A21 Orange Steuerung - C13 Durch Veränderung des Compare-Registers wird die Pulsweite moduliert – verändert. Programm Servo.asm Wichtig: Treiberbaustein zwischen Servo + µ- Controller zum Schutz des Controllers Servomotoren sind nicht kalibriert Wo ist 0°? Kalibration mit µ-Schalter

114 mc Seite 114 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Servo – Timer2 Kombination 20ms von Timer 2 mit Interrupt -> 50 mal zählen -> 1s Die CPU wird lediglich durch ISR Interrupt Service Routine belastet. PWM zur Leistungsansteuerung PWM zur D/A-Wandlung

115 mc Seite 115 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen Interrupt – Ablauf Adressbereiche Programmspeicher – PC = Adresse des Programmspeichers – Programmspeicher lesen: /PSEN Datenspeicher – DPTR Datenspeicher lesen - /RD - /WR ->zwei getrennte Adressgeneratoren / Adresszeiger

116 mc Seite 116 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 EURO_535-Karte Programmspeicher? Datenspeicher? Der große Trick: Datenspeicher und Programmspeicher werden vereint Programm in den Datenspeicher schreiben Der Controller spricht den Programmspeicher an – greift aber auf Datenspeicher zu

117 mc Seite 117 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober Architektur Jeder 8051 hat eine Harvard-Architektur Programmspeicher und Datenspeicher haben gesonderte hardwaremäßig getrennte Adressbusse. Durch ein spezielle Hardware-Verknüpfung lässt sich aus der Harvard-Architektur eine von Neumann Architektur herstellen von Neumann-Architektur: Daten und Programme wild gemischt Praktische Auswirkung ->PC Laufwerk c: - Programme d: - Daten

118 mc Seite 118 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Kleine Aufgabe Auf die Adresse 127 wird im Speicher 0..FFFFh zugegriffen. Welche Bitkombination liegt an den 16 Leitungen an? b = b = 128

119 mc Seite 119 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Memory mapped Voraussetzung: Von Neumann Architektur oder Harvard Architektur Im Datenspeicherbereich liegen Periphere Einheiten Bsp. A/D-Wandler serielle Schnittstelle Interrupt-Controller I2C

120 mc Seite 120 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Memory mapped 2 Bsp. EURO_535 ab Adresse können periphere Bausteine liegen Busteine werden wie eine externe Speicherzelle angesprochen

121 mc Seite 121 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Neue Aufgabe Es liegt ein Adressbereich von 0…FFFFh 64KByte vor In welchem Bit unterscheidet sich der untere und obere 32K Adressraum Korrekte Antwort: im 15.ten Bit oberen 32 KByte unteren 32 KByte

122 mc Seite 122 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Bsp. Harvard-Architektur DSP Digitale Signalprozessoren haben eine Harvard-Architektur 8051 hat normalerweise Harvard-Architektur zwei Adressgeneratoren

123 mc Seite 123 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 /PSEN - /RD, /WR Beim Zugriff auf den Programmspeicher wird /PSEN aktiv Beim Zugriff auf Datenspeicher wird /RD oder /WR aktiv Die Adresse aus den beiden Adressgeneratoren wird immer an Port0 und Port 2 ausgegeben. Aus der Harvard-Architektur wird durch eine UND-Verknüpfung der Signale /PSEN und /RD eine von Neumann-Architektur

124 mc Seite 124 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Warum funktioniert EURO_535 Monitorprogramm auf EPROM Verbindung zwischen PC und EUR_535 Das auf dem PC entwickelte Programm wird in den Datenspeicherbereich von 0000h bis 7FFFh geschrieben. Greift der 8051-Controller auf Programmspeicher zu – greift er auf die Daten=Programme im Datenspeicher zu, da /PSEN mit /RD verknüpft ist.

125 mc Seite 125 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Übung Vergleichen Sie beim Programm: EIN_AUS den Inhalt von Programmspeicher und Datenspeicher im Debugger. – !Remote- Debug-System -> Inhalt von Programmspeicher und Datenspeicher ist bei Vernüpfung von /PSEN und /RD identisch!

126 mc Seite 126 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Ein erfolgreiches NEUES JAHR EPROM-Simulator – sehr selten – nicht effektiv zur Programmentwicklung Remote-Debug-System Emulatoren – Rüssel Simulieren mit Hardware den Prozessor – sehr teuer

127 mc Seite 127 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tipps zur Softwareentwicklung Voraussetzung Viele Programm-Module z. Bsp. call – ret z.B. I2C Viele Interrupts – reti -> viele Rücksprungadressen werden gespeichert im internen Datenspeicher – ab Adresse 08h Stackpointer auf 07h Lösung: mov SP,#2Fh

128 mc Seite 128 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Weitere Vorgehensweise Kapitel 3 – Bild 3.26 wurde noch behandelt Vorsicht: Signalformen werden bei unterschiedlichen Herstellern verschieden definiert – Blick in Datenbuch Kapitel 4 – Reste der HITEX- Entwicklungsumgebung sind im Buch zu finden.

129 mc Seite 129 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Morgen DOS Disc Operating System Windows Server 2003 – Windows XP Longhorn Zeitschriften im Internet für Mikrocomputertechnik ct x1080 Pixel HDTV 1280x720 Pixel HDTV

130 mc Seite 130 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Betriebssystem 01 DLL Dynamic Link Library DDE Dynamic Data Exchange Polling – Interrupt Zeitscheibenmodelle Multitasking – Mehrere Programme können gleichzeitig ablaufen kooperatives Multitasking preemptive Multitasking – Windows XP Taskmanager

131 mc Seite 131 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Betriebssystem 02 Windows CE Handy: Symbian, Palm OS Linux relokatibler Code – verschiebbarer Code – Der Code lässt sich in verschiedenen Speicherbereichen ausführen. Bsp. Effektivwertmesser BIOS Basic Input Output System AIDA32 bei zdnet – Diagnose des Rechners

132 mc Seite 132 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Auswahl von Controllern Options for Target – Device in µVision Buch S. 214 MIPS Million Instructions Per Second

133 mc Seite 133 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Stand alone System Das Programm *.hex wird in ein EPROM gebrannt – es wird nur noch der Controller mit etwas Peripherie - Hardwarebeschaltung benötigt Anstatt EPROM kann auch Flash-Speicher verwendet werden.

134 mc Seite 134 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Entwicklungsumgebung SFR Alle Special Function Register sind in der reg*.pdf aufgeführt.

135 mc Seite 135 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Ein herzliches Grüß Gott Softwareentwicklung Was will der Kunde? Oberfläche festlegen Handbuch schreiben dann erst programmieren kleine Programmmodule programmieren und austesten – Vorsicht: Zeit Controller Softwareentwicklung Hard- & Software testen

136 mc Seite 136 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 PDL Program Design Language Was wird programmiert Wie wird programmiert -> abhängig von der Zielumgebung: C oder Assembler C++ CSharp

137 mc Seite 137 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 *.hex Diese Datei wird für das EPROM benötigt Vorsicht: externer Datenspeicher ab 8000h Adressumschaltung wird nicht aktiviert Start Off-chip XDATA memory auf 8000h

138 mc Seite 138 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Relokatibler Code verschiebarer Code Die Programmteile sind an beliebigen Programmspeicheradressen im Programmspeicher auszuführen CSEG -> RSEG Nur ein Progammteil liegt auf CSEG 0 – alle anderen Module müssen relokatibel sein

139 mc Seite 139 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Methodisches Vorgehen nach VDI VDI 2222 / VDI 2224 Tipp lesen

140 mc Seite 140 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Guten Tag Kleine Module testen Bsp. EPROM-Betrieb Embedded System Der Controller ist in das System eingebettet

141 mc Seite 141 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Wichtige Termine Präsentation der Mikrocomputer-Projekte – 10:00 – Ort HIT Prüfung: Mikrocomputertechnik FT + MT :00 – 13:00 Dozent steht am Freitag ab 8:00-18:00, für Klausurfragen zur Verfügung.

142 mc Seite 142 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Prinzipielle Verfahren Betriebssystem Interrupt – Ereignisorientiert Polling – Abfragen/nacheinander Abarbeiten Beispiel: Aufnahme Läuft Kombination Beim T2 Polling Bei T0 Interrupt

143 mc Seite 143 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Adressierung Mit 32 Bit lassen sich 4 GByte adressieren Linearer Adressraum Segmentierter Adressraum

144 mc Seite 144 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Mischen con C und *.A51 Komplizierte Übergabe Sehr aufwendig in einer gemischten Umgebung zu entwickeln Speicherverwaltung immer kritisch

145 mc Seite 145 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Warum Registerbänke jeweils einer Registerbank wird ein Task zugeordnet Einer ISR wird eine Registerbank zugeordnet

146 mc Seite 146 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Adressräume Sie führen die Arbeit des Betriebssystems: Speicherverwaltung durch!

147 mc Seite 147 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Servomotor langsam verfahren Periodendauer PWM -> 20ms – 50Hz Reloadbetrieb Pulsweite: 0,5ms bis 3ms ->19,5ms – 17ms = =62536 Verfahrweg 2500 Schritte CCH1,CCL1 = 16Bit Das einzige 16Bit-Register welches mit inc arbeitet: DPTR Idee: Wir missbrauchen DPTR

148 mc Seite 148 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 SRV_INTLR SeRVomotor mit INTerrupt Links Rechts Gibt es bereits ein Programm??? ServoLR – aber kein Interrupt Timer2 Interruptvektor – 02Bh Programm mit NEUES EURO_535-Projekt Programm von: Name Was macht das Programm Unterschied bei Interrupt: T0,T1 – T2 TF2 zurücksetzen Wichtig: Servo nicht direkt an Port


Herunterladen ppt "Mc Seite 1 Prof. J. WALTER MC Tafelanschrieb Stand: Oktober 2004 Tafelanschrieb Mikrocomputertechnik WS04 Jürgen Walter."

Ähnliche Präsentationen


Google-Anzeigen