Μ Version 1.0Seite 1µVision Start Debugger Set Breakpoint µVision Debugger.

Slides:



Advertisements
Ähnliche Präsentationen
Ausführen.
Advertisements

Befehlssatz und Struktur
IO - Hardwarestruktur, allgemein
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
der Universität Oldenburg
Atmel AVR JTAG Einführung
Threads Richard Göbel.
Java: Dynamische Datentypen
Das Halteproblem. Gibt es einen Algorithmus, mit dem man für jedes beliebig vorgegebene Programm R und für jede beliebig vorgegebene Eingabe E entscheiden.
Strukturen. In einer Struktur kann eine beliebige Anzahl von Komponenten (Daten) mit unterschiedlichen Datentypen (im Gegensatz zu Feldern) zusammengefaßt.
1 Named Pipes alias FIFO Haben einen Eintrag im Dateisystem und sind somit durch Zugriffsrechte identifizierbar Ermöglichen die Kommunikation zwischen.
OpenMP Präsentation im Rahmen des Seminars
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 7 Claudio Moraga, Gisbert Dittrich FBI Unido
Modularisierungstechniken
Simulates what stimulates for Elektronik Studends
Vorl. 6: Single- und Multitasking Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 5: Interrupts Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin Wintersemester.
Vorlesung 5 Interrupts Peter B. Ladkin
Die Skriptsprache Perl (2) Wolfgang Friebel DESY Zeuthen.
int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0);
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
Arrays,Strings&Pointer in C/C++
DVG Methoden 1 Methoden. 2 int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0); dezi = Math.abs(dezi); String Bin = ""; do { } while.
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Der VFP Debugger - Coverage und Profiling. © 1999 TMN-Systemberatung GmbH Der VFP Debugger n Neues Aussehen, eigene Task n Erweiterte Möglichkeiten n.
PHP Pakete und Beispiele Webengineering Robert Lemke.
RS232 Register und ihre Bits
Welche Funktion hat die php.ini? -Beinhaltet wichtige Einstellungen für PHP. Genannt seien hier u.a. der Speicherort von Cookies, Parameter der Kompilierung,
1 Welche Maßnahmen muss man treffen, um sowohl unter BORLAND als auch unter KEIL kompilieren zu können? Eliminieren der zusätzlichen Schlüsselwörter Programmieren.
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Micrologica Communication Center ®
Steuerung externer Komponenten über ein USB-Interface.
Informatik Grundlagen, WS04, Seminar 11
Einführung in die Programmiersprache C 3.Tag Institut für Mathematische Optimierung - Technische Universität Braunschweig.
Debugging in Lua Universität zu Köln Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller Referent: Artur Wilke.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Präsentation C Tutorium von Daniel J. Nowak Folie 1 C Tutorium.
Real Time Operating System
Computerorientierte Physik VORLESUNG
C-Einstieg. Agenda 1Vorbereitung 2Aufbau eines Programms 2.1Header 2.2 Methoden 2.3Main 3Datentypen & Variablen 4Operatoren(+, -, *, /) 5Logik 5.1IF 5.2Switch.
Betriebssysteme Übung Tutorium „System Calls & Multipgrogramming“
Prof. Dr.-Ing. Franz-Josef Behr
Modbus Funktionen bei Saia®PCD
Objectives Verstehen was unterDelegate verstanden wird
Ultraschall Funktionsprinzip des Sensors (1)
Informatik II Grundlagen der Programmierung Programmieren in C Benutzerinteraktion / Ein- und Ausgabe Hochschule Fulda – FB ET Sommersemester
Mikrocomputertechnik 1 Einführung Prof. J. Walter Stand Oktober Mikrocomputertechnik Jürgen Walter „EVA-WAS-Quickie“ Eingabe – Verarbeitung - Ausgabe.
Java-Kurs - 6. Übung Besprechung der Hausaufgabe
Mikrocomputertechnik Jürgen Walter
© 2004 Pohlig Informatik Kurse © 2004 Pohlig Informatik Kurse Der Tramp tanzt die Rekursion zünderUntersuchen(…) Basisfall Rückmeldung:
RC-5-Code.
C Tutorium – Debugging & Tracing – Knut Stolze. 2 Agenda Debugging & Debugger Tracing.
Mikrocomputertechnik BLIN_INT-P-Quickie Prof. J. Walter Stand Januar Mikrocomputertechnik Jürgen Walter „BLIN_INT-P-Quickie“
Mikrocomputertechnik Timer-0-1-Quickie Prof. J. Walter Stand Januar Mikrocomputertechnik Jürgen Walter „TIMER-0-1-Quickie“
PVM – Parallel Virtual Machine Michael Springmann.
Funktionen. Aufgabe : Eingabe zweier Zahlen ---> Minimum bestimmen Dann nochmals Eingabe zweier Zahlen ---> Minimum bestimmen.
Pointer, Arrays und verkettete Listen. Mehrdimensionale Arrays  Pointer auf ein Array von Pointern  int32 **matrix = new int32*[3];  matrix: Zeiger.
C++ FÜR cOMPUTERSPIELENTWICKLER
Pointer. * und &  Bei der Definition int var1; ○ // „normale“ Variable int *var2; ○ // Zeiger auf einen Integer int *var2 = NULL; ○ // … incl. Initialisierung.
SAS Backstage Biljana Gigić1, Andreas Deckert2
C / C++ für das Internet der Dinge und Hausautomatisierung Arduino Uno / Nano / … Input, Interrupts, Timer, Sleepmode Hochschule Fulda – FB AI Sommersemester.
LCD-Display HD44780 kompatibles Display
Arbeiten mit dem Terminal
Programmieren in C Wie speichert C
Die I/O-Register des Attiny
Projektmodul DM Kurze Einführung Arduino und Arduino-Programmierung
Aufbau und Anwendungen von Mikrokontrollern
Implementieren von Klassen
 Präsentation transkript:

µ Version 1.0Seite 1µVision Start Debugger Set Breakpoint µVision Debugger

µ Version 1.0Seite 2µVision µVision Simulator Tools zur Beeinflussung von SFR's

µ Version 1.0Seite 3µVision Das Erstellen von Debug-Funktionen erfolgt nach dem Start der Debug- Session im Menü Debug-Function-Editor. Es gibt zwei unterschiedliche Arten von Funktionen: FUNC-Funktionen: Werden nach ihrem Start direkt ausgeführt, das Targetprogramm hält während ihrer Ausführung an. SIGNAL-Funktionen: Werden gestartet und laufen bis zum ersten Aufruf der Systemfunktion "twatch(prm)", dann erfolgt für die als Parameter prm angegbene Anzahl von Maschinenzyklen die Ausführung des Targetprogrammes ehe die Simulationsfunktion weiter fortgeführt wird. Simulationsfunktionen Simulationsfunktionen sind Funktionen in C-Syntax (ähnlich), die während des Debug-Vorgangs aus dem Commandofenster gestartet werden können (statisch und dynamisch), gebunden an einen Haltepunkt ausgeführt werden können (ohne das Targetprogramm zu stoppen), parallel zur Ausführung des Targetprogrammes ablaufen können. Innerhalb der Simulatorfunktionen kann mit SFR's, globalen Variablen des Targets und virtuellen Target Registern gearbeitet werden. Parameterübergabe und Definition lokaler Variabler ist möglich.

µ Version 1.0Seite 4µVision Simulationsfunktionen Virtuelle Target Register (VTREG): AINxAnaloger Eingang des Chip. Das Programm des Targets kann die Werte einlesen, die auf AINx hinterlegt wurden. PORTxEine Gruppe von I/O Anschlüssen des Chips. PORT2 z.B. bezieht sich auf alle 16 Pins von P2. Mit diesen VT-Registern können beliebige I/O-Ports simuliert werden. SxIN Input-Buffer der seriellen Schnittstelle x. Man kann 8-Bit- oder 9-Bit- Werte auf SxIN schreiben. Diese können dann durch das Target-Programm empfangen werden. Durch Lesen von SxIN lässt sich feststellen ob der Buffer für den Empfang eines neuen Zeichens bereit ist. Der Wert 0xFFFF zeigt an, dass das vorhergehende Zeichen übernommen wurde. SxOUTAusgabepuffer der seriellen Schnittstelle x. Es werden 8-Bit oder 9-Bit-Werte (wie durch das Target-Programm festgelegt) in das VT-Register kopiert.. SxTIMEBestimmt das Timing der Baudrate der seriellen Schnittstelle x. Mit SxTIME=1 wird die Targetrate verwendet. SxTIME=0 (default) ignoriert das Targettiming, die Ausgabe erfolgt sofort. CLOCK Taktfrequenz der simulierten CPU wie sie durch das Menü Options – Target festgelegt wurde. "twatch(CLOCK)" realisiert eine Wartezeit von genau 1 sec!

µ Version 1.0Seite 5µVision /* Simulate analog input ramp on analog input AIN0 */ SIGNAL void analog0 (float limit) { float volts; printf (ANALOG0 (%f) ENTERED\n, limit); volts = 0; while (volts < limit) { volts += 0.1; AIN0 = volts; twatch (1000); } Simulationsfunktionen /* Toggle Port P2.0 and Set P2.8 */ FUNC void SetP28_ToggleP20 (void) { PORT2 ^= 0x0001; /* invert value on Port2.0 */ PORT2 |= 0x0100; /* set bit Port2.8 */ } Wartet die angegebene Anzahl von Maschinenzyklen ab - d.h. das Targetprogramm läuft innerhalb dieses Zeitraums

µ Version 1.0Seite 6µVision Simulationsfunktionen /* Simulate input to serial0 'ABC' in 1 sec intervals endless */ 5 SIGNAL void serial_input (void) { while (1) { /* repeat forever */ twatch (CLOCK); /* Delay for 1 second */ S0IN = 'A'; /* Send first character */ twatch (CLOCK / 900); /* Delay for 1 character time */ /* 900 is good for 9600 baud */ S0IN = 'B'; /* Send next character */ twatch (CLOCK / 900); S0IN = 'C'; /* Send final character */ } /* repeat */ } /* Square wave on P1H7 with a frequency of 1000Hz */ SIGNAL void P1H7_1000hz (void) { while (1) { /* repeat forever */ PORT1H |= 0x80; /* set P1H7 */ twatch (CLOCK / 2000);/* delay for.0005 secs */ PORT1H &= ~0x80; /* clear P1H7 */ twatch (CLOCK / 2000); /* delay for.0005 secs */ } /* repeat */ }