Da der Mikrocontroller mit den internen Timern sehr genau Zeiten messen kann, entschieden wir uns für die Zeitmessung.
|
|
- Anna Goldschmidt
- vor 7 Jahren
- Abrufe
Transkript
1 Stufe 1: Das Projekt Fahrradcomputer wurde in der Stufe 1 zunächst auf die Messung der Geschwindigkeit gerichtet. Dabei soll der Mikrocontroller die Impulse auswerten, die von einem Sensor an der Fahrradgabel (bei jeder Radumdrehung) erfasst werden: Da für die Geschwindigkeit v gilt: v = s / t (mit der Wegstrecke s und der für den Weg benötigten Zeit t), kann entweder der Weg gemessen werden, der in einer vorgegebenen Zeit zurückgelegt wird oder die Zeit gemessen werden, die für einen bestimmten Weg (zum Beispiel einen Radumfang) benötigt wird. Da der Mikrocontroller mit den internen Timern sehr genau Zeiten messen kann, entschieden wir uns für die Zeitmessung. Der Radumfang beträgt 2.25m. untersuchte Fälle: v=100 km/h = m/3600s 27.8 m/s Zeit für einen Radumfang: t= s/v=(2.25/100)*3.6=0.081s= 81 ms v=1km/h=1000m/3600s m/s Zeit für einen Radumfang: t= s/v=(2.25/1)*3.6=8.1s = ms Der Mikrocontroller muss also ca. 81 bis 8100ms messen können! Der Timer T0 kann dazu im Autoreload-Betrieb (BA 2) benutzt werden. Er kann dabei 256 Takte der Ozillatorfrequenz/12 zählen. Bei einem Quarz mit f= Mhz werden für eine Sekunde f/12= Zähltakte benötigt. 256 Takte entsprechen dann 256/ s =1/3.6 ms ms. Das Zählregister des Mikrocontrollers läuft also nach ca ms über. Man kann deshalb eine Zeit von 8100 ms nicht direkt mit dem Timer T0 messen. Dennoch ist es möglich, diese Zeit zu messen, wenn man die periodischen Überläufe des Timers in einer Interrupt-Service-Routine (ISR) zählt. Das heißt, jedes Mal, wenn der Timer überläuft (bei dem Zählerstand 256), wird ein Interrupt ausgelöst und durch Hardware die ISR aufgerufen. Diese inkrementiert dann eine Zählervariable z ( von Typ unsigned int). Gemessen wird die Zeit zwischen 2 Impulsen. Das Fahrrad hat dabei einen Weg von s=2.25m zurückgelegt. Anschließend kann die Geschwindigkeit aus dem Zählerstand der Zählvariablen z berechnet werden mit v= 2.25m/ t = 2.25m/[z*(1/3.6) ] ms = 2.25*3.6/z m/ms = 8.1/z m/ms 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 1 von 6
2 = 8.1/z km/s v = 8.1*3600/z km/h v = (29160/z) km/h Zum Testprogramm: In der Testumgebung werden die Sensorimpulse mit einer externen MFA-Timer-Baugruppe erzeugt (funktion void impulsgeber1s(void)) und an Bit B0 der 8-Bit-Paralleleigabe (eport an der Adresse 0xe081) geführt. Am Bit B0 wird dann die ansteigende Flanke abgefragt mit while((eport & 1)==1);while((eport & 1)==0); Es könnte vorkommen, dass der Fahrradfahrer den ersten Flankenimpuls auslöst und damit die Messung startet, aber dann stehen bleibt. Die im Interrupt hochgezählte Variable z würde dann überlaufen. Damit daraus keine Fehlmessungen resultieren, wird in der ISR void T0_isr(void) interrupt 0x800b bei dem maximalen Zählerstand von eine Variable steht=1 gesetzt. Das bedeutet: das Fahrrad steht. Die Messung wird bei einer 2. pos. Flanke des Impulsgebers oder bei steht=1 beendet: while((eport & 1)==1 && steht==0);while((eport & 1)==0 && steht==0); Bei steht=1 wird dann die Geschwindigkeit 0 km/h ausgegeben und andernfalls aus z berechnet: if(steht==0) v= /z; else v=0; Es folgt das vollständige Programm: #pragma code=0x8000 #pragma xdata=0x2000 #include <stdio.h> xdata char eport at 0xe081, aport at 0xe082; xdata char TSTW at 0xe013, TIMER0 at 0xe010, TIMER1 at 0xe011; unsigned int z; char steht; float v; void init(void){ TR0=0;//T0 gestoppt TF0=0;//Ueberlaufbit reset TMOD=2;// T0 auto-reload TH0=0;//Anfangszaehlerstand=0 TL0=0; z=0;//zaehler=0 v=0;//geschwindigkeit=0 ET0=1; // Interruptbetrieb von T0 // einstellen 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 2 von 6
3 EA=1;//T0-Interrupt aktiviert fopen(1);//lcd-display initialisieren void T0_isr(void) interrupt 0x800b{ z++; //Zaehlerstand erhoehen aport=0x0f; if(z==65535){steht=1; //Interrupt-Service_Routine void impulsgeber1s(void){ //Erzeugt 0.5 Sek.-Takt -> v=16.2 km/h TSTW=0x27; TIMER0=0x40; TSTW=0x67; TIMER1=0x05; void main(){ impulsgeber1s(); init(); //externen Impulsgeber starten //Interruptbetrieb von T0 init. do{ fprintf(1,"v=%7.2f km/h\n\n",v);//ausgabe der Geschwindigkeit //auf dem LCD-Display z=0;steht=0; while((eport & 1)==1);while((eport & 1)==0); TR0=1; //Messung starten! while((eport & 1)==1 && steht==0);while((eport & 1)==0 && steht==0); TR0=0;TH0=0;TL0=0; //Messung gestoppt if(steht==0) v= /z; else v=0;//geschwindigkeit berechnen while(1); Stufe 2: Neben der Geschwindigkeit soll nun auch die zurückgelegte Wegstrecke bestimmt werden: Die Messung der Geschwindigkeit erfolgt bei jedem 2. Radumlauf. Dabei hat das Fahrrad dann 2* 2.25m = 4.50 m zurückgelegt. Erhöht man bei jeder Geschwindigkeitsmessung eine Variablen m um 1, so ergibt sich die gefahrene Strecke in Kilometern zu s = m * km. Erweitern Sie das Programm entsprechend und zeigen Sie die gefahrene Strecke s in der 2. Zeile des LCD-Displays an! 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 3 von 6
4 Stufe 3: Es sollen zusätzlich die Fahrtzeit im Format hh:mm:ss und die Durchschnittsgeschwindigkeit bestimmt werden. Hierzu soll der Timer T1 im Interruptbetrieb als Uhr programmiert werden. Das LCD-Display soll dann über den eport Bit B1 umgeschaltet werden können: B1=0: Anzeige Geschwindigkeit und Weg, B1=1: Anzeige Durchschnittsgeschwindigkeit und Fahrzeit 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 4 von 6
5 Vollständiges Programm mit allen Ausbaustufen: #pragma code=0x8000 #pragma xdata=0x2000 #include <stdio.h> xdata char eport at 0xe081; xdata char TSTW at 0xe013, TIMER0 at 0xe010, TIMER1 at 0xe011; xdata unsigned int z, km_z; char steht; char stu, min, sek; int zuhr; xdata float v, gefahrene_km, fahrzeit, v_mittel; void init(void){ zuhr=0; //Zähler für Uhreninterrupt mit Timer 1 stu=0;min=0;sek=0; //Für die Fahrzeit (Uhr) gefahrene_km=0; km_z=0; fopen(1); //LCD-Display initialisieren TR0=0;TF0=0; //T0 gestoppt TR1=0;TF1=0; //T1 gestoppt TMOD=0x22;// T0 und T1 auto-reload TH0=0; //Anfangszaehlerstand=0 TL0=0; TH1=0; TL1=0; z=0; //Zaehler=0 v=0; //Geschwindigkeit=0 ET0=1; //T0-Interrupt aktiviert ET1=1; //T1-Interrupt aktiviert EA=1; PT0=1; //Interrupt von T0 mit höherer Priorität //Interruptsteuerung ist scharf! void T0_isr(void) interrupt 0x800b{ z++; //Zaehlerstand erhoehen if(z==65535){steht=1; void T1_isr(void) interrupt 0x801b{ //Uhr: zuhr++; if(zuhr==3600){ zuhr=0; sek++; if(sek==60){ sek=0; min++; if(min==60){ min=0; stu++; if(stu=24) stu=0; //Diese ISR wird 3600-mal/Sekunde //aufgerufen 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 5 von 6
6 void impulsgeber1s(void){ //Erzeugt 0.5 Sek.-Takt -> v=16.2 km/h TSTW=0x27; TIMER0=0x40; TSTW=0x67; TIMER1=0x05; void main(){ impulsgeber1s(); init(); do{ gefahrene_km = 2.25/1000*km_z; fahrzeit= sek/ min/ stu; v_mittel=gefahrene_km/fahrzeit; if((eport &2)==0){ fprintf(1,"v=%7.2f km/h\nweg=%7.3f km\n",v, gefahrene_km); else fprintf(1,"v_m=%7.2f km/h\nzeit=%2d:%2d:%2d \n",v_mittel,stu,min,sek); z=0;steht=0; while((eport & 1)==1);while((eport & 1)==0); TR0=1;//Messung laeuft! TR1=1;//Uhr laeuft! while((eport & 1)==1 && steht==0);while((eport & 1)==0 && steht==0); TR0=0;TH0=0;TL0=0;//T0 gestoppt if(steht==0) {v= /z; km_z=km_z+2; else v=0; while(1); 2006 Wolfgang Bertolt-Brecht-Berufskolleg DU Seite 6 von 6
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
MehrDateien, 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
MehrMODUL 6 TIMER UND COUNTER
µc Anwendungsprogrammierung in C Modul 6 / Seite 1 MODUL 6 TIMER UND COUNTER V1.1 J. Humer 1997 µc Anwendungsprogrammierung in C Modul 6 / Seite 2 INHALTSVERZEICHNIS MODUL 6 TIMER UND COUNTER Inhalt Seite
MehrFür den CTC-Mode kann demnach TCCR1A komplett auf 0 gesetzt werden, weil WGM11 und WGM10 in diesem Register liegen und beide laut Tabelle 0 sind:
Timerinterrupts beim Arduino Timer 1 (16bit) Register: Bits in den Registern und ihre Bedeutung: Für den CTC-Mode kann demnach TCCR1A komplett auf 0 gesetzt werden, weil WGM11 und WGM10 in diesem Register
MehrEXF2 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
Mehrmyavr Programmierung in C
myavr Programmierung in C Stefan Goebel Februar 2017 Stefan Goebel myavr Programmierung in C Februar 2017 1 / 12 Grundgerüst... braucht man immer! #include // Register- und Konstantendefinitionen
MehrUnter einem Interrupt kann man sich einen durch Hardware ausgelösten Unterprogrammaufruf vorstellen.
Interrupttechnik mit dem ATmega32 Unter einem Interrupt kann man sich einen durch Hardware ausgelösten Unterprogrammaufruf vorstellen. Aufgrund einer Interruptanforderung wird das laufende Programm unterbrochen
MehrSpeicheraufbau 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
Mehra) Welche Aussage zu Zeigern ist richtig? Die Übergabesemantik für Zeiger als Funktionsparameter ist callby-value.
Aufgabe 1: (15 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort
MehrLaborprotokoll Informationstechnologien
Laborprotokoll Informationstechnologien Mikrocontroller-Programmierung (C 51) TKS 2004, Sommersemester 2004/05 Klaus Roleff Andreas Unterweger Klaus Roleff, Andreas Unterweger ITLB2 Seite 1 von 18 Übung
MehrGegenü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
MehrAufgabe 34 (Mechanik, Drehbewegung) Die Spitze des Minutenzeigers einer Turmuhr hat die Geschwindigkeit 1,50 mms -1. Wie lang ist der Zeiger?
zu 2.2 / IV. Wiederholung zur Drehbewegung (Rotation) Aufgabe 31 (Mechanik, Drehbewegung) Fach: Physik/ L. Wenzl Datum:. Der Erdradius beträgt etwa 6370 km. Mit welcher Geschwindigkeit bewegt sich ein
Mehri2c-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
MehrAtmega Interrupts. Rachid Abdallah Gruppe 3 Betreuer : Benjamin Bös
Atmega Interrupts Rachid Abdallah Gruppe 3 Betreuer : Benjamin Bös Inhaltsverzeichnis Vorbereitung Was Sind Interrupts Interruptvektoren Software Interrupts Hardware Interrupts Quellen 2 Vorbereitung Rechner
MehrStopp-Uhr. Erstellen Sie ein Programm (in Zweier- bzw. Dreier-Gruppen), welches folgende Bedingungen erfüllt:
Inhalt Aufgabenstellung... 1 Lösung... 2 System (Kontextdiagramm)... 2 Zustands-Übergangs-Diagramm... 2 Codeierung... 4 Main-Module... 4 Module-Button... 6 Module Timer... 8 Anhang... 12 Datenflussdiagramm...
MehrC.1 Serielle Schnittstelle, erstes Testprogramm (a)
C.1 Serielle Schnittstelle, erstes Testprogramm (a) Verbinden Sie die Mikrocontrollerplatine mit dem USB-Anschluss Ihres Rechners und laden Sie das abgebildete Testprogramm auf den Mikrocontroller. Es
MehrLotto. eine Projektarbeit in DVT. von Sven Schwab
Lotto eine Projektarbeit in DVT von Sven Schwab IAV 2 Nürnberg, den 21.07.2010 Agenda 1) Idee 2) Projektbestandteile - Software - Hardware 3) Projektdetails - Ablauf - Fehler die auftreten können 4) Quellcode
MehrMaschinenorientierte 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
MehrV cc. 1 k. 7 mal 150 Ohm
Ein Digitalvoltmeter Seite 1 von 6 Eine Multiplex-Anzeige Mit diesem Projekt wird das Ziel verfolgt, eine mehrstellige numerische Anzeige für Mikrocontroller-Systeme zu realisieren. Die Multiplex-Anzeige
MehrD.1 Vorbereitung. Teil D Analog-Digital-Wandler 1
D.1 Vorbereitung So wird der Analog-Digital-Wandler des Mikrocontrollers ATmega328P initialisiert: ADMUX = _BV(REFS0); ADCSRA = _BV(ADEN) _BV(ADPS2) _BV(ADPS1) _BV(ADPS0); Der Analog-Digital-Wandler ist
MehrVorbereitung. Teil D Analog-Digital-Wandler 1
Vorbereitung So wird der Analog-Digital-Wandler des Mikrocontrollers ATmega328P initialisiert: ADMUX = _BV(REFS0); ADCSRA = _BV(ADEN) _BV(ADPS2) _BV(ADPS1) _BV(ADPS0); Der Analog-Digital-Wandler ist im
MehrZä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,
MehrLehrfach: Mikrorechentechnik Versuch: Zeitmessung
ZM P_51_004_NEU. doc Lehrfach: Mikrorechentechnik Versuch: Zeitmessung Oc Hochschule Zittau/Görlitz; Fachbereich Elektro- und Informationstechnik Prof. Dr.-Ing. Kühne April 2005 Bearb.:Dipl.-Ing. Sbieschni
MehrAufbau eines Assembler-Programms
Aufbau eines Assembler-Programms. Assembler-Anweisungen (Direktiven) Einbindung von include-files Definition von Konstanten, Reservierung von Speicherplatz im RAM, 2. Was tun, wenn C Reset-Signal erhält
MehrSerielle Schnittstelle, erstes Testprogramm (a)
Serielle Schnittstelle, erstes Testprogramm (a) Aufgabe C1 Verbinden Sie die Mikrocontrollerplatine mit dem USB-Anschluss Ihres Rechners und laden Sie das abgebildete Testprogramm auf den Mikrocontroller.
MehrTemperaturmodul. 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
MehrPIC16 Programmierung in HITECH-C
PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden
MehrProgrammierung in C. Grundlagen. Stefan Kallerhoff
Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/
MehrInterrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C
Interrupts Funktionsprinzip Interrupts bei ATmega128 Beispiel in C Funktionsprinzip 1 Was ist ein Interrupt? C muss auf Ereignisse reagieren können, z.b.: - jemand drückt eine Taste - USART hat Daten empfangen
MehrP(k, λ) = λ k /k!*exp(-λ) angegeben werden kann.
Zeitintervall-Vorgabe versus Zählimpuls-Vorgabe für die Datenauswertung mit dem Arduino bei zählenden Strahlungs-Detektoren für Radioaktivität Bernd Laquai, 2. Oktober 2015 Bekanntlich unterliegt der radioaktive
MehrArtikel Nr FUNKTIONEN UND FEATURES
DE DIGITAL WIRELESS FUNKTIONEN UND FEATURES 1. Aktuelle Geschwindigkeit 2. Tagesstrecke 3. Fahrzeit 4. Durchschnitts-Geschwindigkeit mit 2 Komma-Stellen 5. Maximale Geschwindigkeit mit 2 Komma-Stellen
MehrHardwareaufbau 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
MehrArduino - Einfacher Teiler
Einen Teiler z.b. zur Reduzierung von Stromzählerimpulsen, wie er hier benötigt wird kann man alternativ zu fertigen Lösungen (z.b. industrieller Vorwahlzähler) sehr leicht und kostengünstig auf einem
Mehr2
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
MehrKlausur. 2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Anfang SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll
MehrDHBW 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
MehrEinführung DIP & AVR EVK1100
Einführung DIP & AVR EVK1100 Umfang: ca. 2-4 Zeitstunden Display und Buttons (DIP) DIP (Treiber, Code) Aufgaben Emqopter GmbH 2 Display: DIP204 20 Spalten x 4 Zeilen (80 Zeichen) Anzeige von Informationen
Mehr16-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
MehrTimm M. Steinbeck und Arne Wiebalck Lehrstuhl für Technische Informatik Universität Heidelberg. Prozess-Monitoring auf CPU-Takt Ebene
Timm M. Steinbeck und Arne Wiebalck Lehrstuhl für Technische Informatik Universität Heidelberg Prozess-Monitoring auf CPU-Takt Ebene Einleitung Unser Arbeitsgebiet: ALICE Teilchenphysik Experiment Cluster
MehrAnwendung und Programmierung von Mikrocontrollern. Anwendung und Programmierung von Mikrocontrollern
Anwendung und Programmierung von Mikrocontrollern Sommersemester 2013 Dr.-Ing. Hubert Zitt Kontakt: hubert.zitt@fh-kl.de www.fh-kl.de/~zitt Dr.-Ing. Hubert Zitt Seite 1 von 24 S65 Shield (von oben) Komponenten
Mehri2c-bus.de IN/OUT - UART Einfache Ein- und Ausgabe über serielle Schnittstelle Interrupt-Betrieb Dokument NR.: AB-001-U-03
DA Dokument NR.: AB-001-U-03 IN/OUT - UART Einfache Ein- und Ausgabe über serielle chnittstelle Interrupt-Betrieb P Bitte denken ie an die Umwelt, bevor ie diese Datei ausdrucken IN/OUT mittels BUF (Interrupt)
MehrEinführung BLACKBURN ATOM 2
BLACKBURN ATOM 1 Einführung Herzlichen Glückwunsch zum Kauf Ihres neuen Blackburn Atom Fahrradcomputers. Blackburn Fahrradcomputer werden ausschließlich aus hochwertigen Materialien, sowie unter höchsten
MehrAlkoholsensor MQ135, Time-Delay, Mailbox und LCD
Projektaufgaben für Teil 2 Software Aus den gegebenen Aufgaben muss pro Gruppe eine Aufgabe ausgewählt werden. Die Softwareaufgabe kann unabhängig vom Thema der Hardwareaufgabe gewählt werden, allerdings
MehrKurze Einführung in die Programmiersprache C++ und in Root
Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung
MehrLED Skalenbeleuchtung mit einem Arduino
Projektteil: LED Skalenbeleuchtung mit einem Arduino Aufgaben: - Ein Taster schaltet die LED-Beleuchtung ein - Nach Ablauf einer im Programm hinterlegten Zeit schaltet sich die Beleuchtung von selbst wieder
Mehr2. Aufgabe (3 Punkte) Ergänzen Sie die leeren Zellen derart, dass sich in einer Zeile die selben Zahlenwerte ergeben.
Programmieren bei Dr. Robert Heß TM&M1, IST1 und ET1 Ende SS 2003 Klausur 1. Aufgabe (2 Punkte) Kodieren Sie folgende Dezimalzahlen in Binärzahlen um. Zeigen Sie den Rechenweg, die negative Zahl soll im
MehrLCD-4 Display Fahrradcomputer. Bedienungsanleitung
LCD-4 Display Fahrradcomputer Bedienungsanleitung Inhalt Zusammenfassung 3 Beschreibung 3 Funktionen 4 Betriebsablauf 6 Zusätzliche Funktionen 7 Versteckte Funktionen 9 Seite 2 von 10 Zusammenfassung Das
MehrATmega8. Projekte mit AVR-Mikrocontroller. Ein Digitalvoltmeter Seite 1 von 6. Ein Datenlogger
Ein Digitalvoltmeter Seite 1 von 6 Ein Datenlogger Mit einem Datenlogger oder Speicheroszilloskop können mit Hilfe von geeigneten Sensoren zeitlich veränderliche Größen wie Temperatur, Druck, Luftfeuchtigkeit,...
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrAusgabe:
Aufgabe 2.10: Schreiben Sie ein Programm, das zunächst die Quadratzahlen zu den Zahlen 1-10 mit Hilfe einer While- Schleife und danach die Quadratzahlen zu den Zahlen 3, 6, 9,.., 30 mit Hilfe einer For-Schleife
MehrIR NEC Empfänger mit 4x7 LED Anzeige (ATtiny2313)
// Include C Libriaries #include #define F_CPU 4000000UL #include #include #include #include // Definition der Segmente #define SEG_O
MehrGoTime Kurzanleitung. Über dieses Handbuch
DE GoTime Kurzanleitung Über dieses Handbuch Bitte lesen Sie dieses Handbuch sorgfältig. Wenn Sie die Informationen nicht verstehen oder eine Frage haben, die nicht in diesem Handbuch behandelt wird, wenden
MehrVorlesung Objektorientierte Programmierung Klausur
Prof. Dr. Stefan Brass 16. Februar 2007 Dipl.-Inform. Annett Thüring Institut für Informatik MLU Halle-Wittenberg Vorlesung Objektorientierte Programmierung Klausur Name: Matrikelnummer: Studiengang: Aufgabe
MehrTimer. Funktionsprinzip
Timer Funktionsprinzip 8-Bit-Timer des ATmega28 Beispiel Timer im Polling- und Interrupt-Betrieb Funktionsprinzip Timer ist ein in Hardware realisierter i Zähler ändert seinen Zählerstand mit einer vorgegebenen
MehrEingaben. Themen heute. Taster. Eingaben Zuweisungen Zeitmessung. Programmieren für Ingenieure Sommer Andreas Zeller, Universität des Saarlandes
Eingaben Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Themen heute Eingaben Zuweisungen Zeitmessung Taster Wikipedia Ziel Wenn Taste gedrückt, soll LED leuchten Wir
MehrGrundlagen der Informatik 2. Typen
Grundlagen der Informatik 2. Typen Speicher, Speicherbedarf Ein-/Ausgabe Grundlagen der Informatik (Alex Rempel) 1 Wiederholung // root calculation #include #include using namespace
MehrWas versteht man unter Bewegung?
Bewegungen Was versteht man unter Bewegung? Beobachten: Beschreiben: Ortsveränderung in einer bestimmten Zeit Messen: Objektivierte Darstellung durch Vergleiche mit allgemein gültigen Standards: Längenmaß,
MehrDokumentation Metronom
Beuth Hochschule für Technik Berlin Fachbereich VII Elektrotechnik Mechatronik Optometrie Studiengang Bachelor Elektrotechnik Dokumentation Metronom Projekt im Labor Mikrocomputertechnik Teilnehmer: Benjamin
MehrÜbungsauftrag zur Kinematik - Lösungen
Übungsauftrag zur Kinematik - Lösungen Aufgaben zu Bewegungsdiagrammen 1. Autofahrt Die Bewegung eines Autos lässt sich durch folgendes Diagramm beschreiben: (a) Beschreibe die Bewegung so genau wie möglich
MehrFelder, Zeiger und Adreßrechnung
Felder, Zeiger und Adreßrechnung Felder bestehen aus Variablen eines einzigen Datentyps. Bisher kennen wir eindimensionale Felder. In C sind Felder mit beliebigen Dimensionen möglich. Unsere räumliche
MehrWas versteht man unter Bewegung?
Bewegungen Was versteht man unter Bewegung? Beobachten: Beschreiben: Ortsveränderung in einer bestimmten Zeit Messen: Objektivierte Darstellung durch Vergleiche mit allgemein gültigen Standards: Längenmaß,
MehrStudiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8
Studiengang Maschinenbau, Schwerpunkt Mechatronik (früher: Automatisierungstechnik) Seite 1 von 8 Hochschule München Fakultät 03 Zugelassene Hilfsmittel: alle eigenen, Taschenrechner Viel Erfolg!! Komponenten
MehrVersuch 3: Kamera 1. In diesem Programm sind die grundlegenden Funktionen der Kamera schon implementiert. Diese Funktionen sind:
Versuch 3: Kamera 1 Was ist ein Bild? Ein Bild ist in diesem Versuch ein zweidimensionales Array vom Typ unsigned char. Jedes Element des Arrays entspricht einem Pixel des Bildes, dessen Wertebereich zwischen
MehrThe amforth Cookbook angefangen
The amforth Cookbook Author: Datum: Erich Wälde 2009-02-22 angefangen 2 Inhaltsverzeichnis 1 Projekt mit ATMEGA 32 5 1.1 Board................................ 5 1.2 Beispiel Applikation........................
MehrBewegung. Ich kenne den Zusammenhang zwischen Geschwindigkeit und Weg. 19
2 Bewegung Kreuze an jetzt / nach Abschluss des Kapitels 2.1 Geschwindigkeit Ich kann verschiedene Geschwindigkeiten abschätzen. Lernziele Seite Einschätzung Ich kenne den Zusammenhang zwischen Geschwindigkeit
MehrForumslader App für Android Kurzbeschreibung
Forumslader App für Android Kurzbeschreibung Für den Forumslader ab Firmware xx281112 steht ein spezielles Bluetoothmodul mit integriertem Fahrradcomputer als Zusatzkomponente zur Verfügung. Dieses sammelt,
MehrFH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz
FH München, FB 03 FA WS 06/07 Ingenieurinformatik Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz Zulassung geprüft vom Aufgabensteller: Teil I Aufg. 2 Aufg. 3 Aufg. 4 Aufg. 5 Summe Note Aufgabensteller:
MehrEinlesen eines Ports, Interrupt Routinen
µc Anwendungsprogrammierung in C Modul 2 / Seite 1 MODUL 2 Einlesen eines Ports, Interrupt Routinen Version 1.1 Dipl.-Ing. Dr. Josef Humer 1997 µc Anwendungsprogrammierung in C Modul 2 / Seite 2 Inhalt
Mehrb) Was bewirken folgende Programmanweisungen? uint8_t x = 42; x ^= x;
Aufgabe 1: (25 % der Klausurnote) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine
MehrSchülerexperiment: Bestimmung der Geschwindigkeit eines Körpers
Schülerexperiment: Bestimmung der Geschwindigkeit eines Körpers Stand: 26.08.2015 Jahrgangsstufen 7 Fach/Fächer Benötigtes Material Natur und Technik/ Schwerpunkt Physik Maßbänder, Stoppuhren, Taschenrechner,
MehrLesen Sie alle Aufgabenstellungen sorgfältig durch, bevor Sie mit der Bearbeitung der ersten Aufgabe beginnen.
INE1 Musteraufgaben für die Semesterendprüfung Hilfsmittel Vier Seiten selbst verfasste Zusammenfassung keine weiteren Hilfsmittel keine elektronischen Hilfsmittel Abgabe Füllen Sie das erste Aufgabenblatt
MehrZusammenfassung des Handzettels für Programmieren in C
Zusammenfassung des Handzettels für Programmieren in C In der handschriftlichen Kopie werden mehr Abkürzungen verwendet. Alles Grün markierte dient zum lernen und wird nicht auf den Handzettel übertragen.
MehrÜbung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil
MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches
MehrZum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE
Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach
MehrProbeklausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 12. April 2007, Uhr Bearbeitungszeit: 105 Minuten
Probeklausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 12. April 2007, 13.00-14.45 Uhr Bearbeitungszeit: 105 Minuten Schalten Sie ihr Mobiltelefon aus. Bei der Klausur ist als einziges
MehrProjektdokumentation: DCF 77 Funkuhr
Projektdokumentation: DCF 77 Funkuhr Seite 1 von 8 DCF-77 Signalanalyse Die DCF-77 Signale werden von einem Sender in Mainflingen (ca. 25 km südöstlich von Frankfurt am Main) von der Physikalisch-Technischen
MehrBetriebsanleitung Kat.Nr
Betriebsanleitung Kat.Nr. 42.5003 Tachometer - Kilometerzähler Tagesstrecke - Kilometerzähler Gesamtstrecke - Automatischer Fahrzeitmesser/Stoppuhr - 24-Stunden Uhr - Mittlere Geschwindigkeit - Maximale
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 6 Besprechung: 27.11. 1.12.2017 (KW 48) Vorbereitende
MehrAVR UART. ELV Modul: http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=28776&flv=1&berei ch=&marke=
AVR UART 1. Einleitung In dieser Anleitung soll beispielhaft gezeigt werden, wie die serielle Kommunikation zwischen einem AVR Mikroprozessor und dem PC aufgebaut wird. Hierbei wird erst der einfache Fall
MehrEingebettete Systeme 2. Übungsblatt Lösungsvorschlag
Institut für Informatik Lehrstuhl für Eingebettete Systeme Prof. Dr. Uwe Brinkschulte Mathias Pacher Eingebettete Systeme 2. Übungsblatt Lösungsvorschlag 1. Aufgabe (Mikrocontroller) Ein Mikrocontroller
MehrKlausur PHMJ02 SS2012. Mikrocontroller und Robotik. Mittwoch GUTEN ERFOLG!!!
Universität Koblenz Landau Name: Musterlösung Institut Naturwissenschaften Vorname:... Abteilung Physik Matr. Nr.:... Studiengang:... Klausur PHMJ02 SS2012 Mikrocontroller und Robotik Mittwoch 15.8.2012
Mehr4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C
Einfache Programmstrukturen in C 4-1 Welche einfache Programmstrukturen sind zu unterscheiden? Arithmetische und logische Ausdrücke und Zuweisungen Verzweigungen Unvollständige bedingte Anweisungen Vollständige
MehrEin- und Ausgabe von Daten
Ein- und Ausgabe von Daten Datenausgabe Dateneingabe Datenformatierung Seite 1 -Anweisungen Beispiel printf ("SelectionSort sortiert maximal 50 Zahlen!\n"); printf ("Wie viele Zahlen sollen sortiert werden?
MehrMicrocontroller Kurs Programmieren. 09.10.11 Microcontroller Kurs/Johannes Fuchs 1
Microcontroller Kurs Programmieren 9.1.11 Microcontroller Kurs/Johannes Fuchs 1 General Purpose Input Output (GPIO) Jeder der Pins der vier I/O Ports kann als Eingabe- oder Ausgabe-leitung benutzt werden.
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrInterrupt-Programmierung
Interrupt-Programmierung Am Beispiel des ATMEGA16 Microcontrollers Beispiel: Messung der Betriebszeit Die Betriebszeit zeigt an, wie lange der Rechner seit dem Booten läuft Hier: Aktualisierung der Betriebszeit
MehrVariablen. Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes
Variablen Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes v ist Stück im Speicher, der 4 Bytes lang ist Speicherzugriff? Über Adressen!
MehrUART und Interrupts. Versuch Nr. 7
Universität Koblenz Landau Name:..... Institut für Physik Vorname:..... Hardwarepraktikum für Informatiker Matr. Nr.:..... UART und Interrupts Versuch Nr. 7 Vorkenntnisse: Aufbau und Arbeitsweise einer
MehrRichtung durch Taster während des Ablaufs umschaltbar
U16 Aufgabe 5 U16 Aufgabe 5 Besprechung Aufgabe 3 Notation AVR-Timer Umgang mit mehreren Interruptquellen Arbeiten mit einer diskreten Zeitbasis U16.1 Alle LEDs einschalten, dann in gleicher Reihenfolge
MehrM-AX-16/C1 (Typ 37) Inhaltsverzeichnis 18-1 18. M-AX-16/C1
MAX6/C (Typ 37) Inhaltsverzeichnis 8 8. MAX6/C Zählermodul mit 3 Zählkanälen à 2Bit und integriertem InterruptController, Betriebsartenumschaltung per Software Funktionsbeschreibung 82 Blockschaltbild...
Mehr4 Formelsammlung C/C++
4 Formelsammlung C/C++ 4.1 Datentypen Datentyp stdint.h type Bits Sign Wertebereich (unsigned) char uint8_t 8 Unsigned 0.. 255 signed char int8_t 8 Signed -128.. 127 unsigned short uint16_t 16 Unsigned
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2016/17. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2016/17 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Alexander Lochmann Übungsblatt
MehrNachname:... Vorname:... MatrNr.:... Klausur PR2. Erstellen Sie eine Struktur für eine Komplexe Zahl mit den Elementen real und imag vom Typ double.
Nachname:... Vorname:... MatrNr.:... Klausur PR2 HAW-Hamburg, Fakultät Technik und Informatik, Department Informations- und Elektrotechnik Dr. Robert Heß, 4.7.2008 Bearbeitungsdauer: 90 min Hilfsmittel:
MehrMikrocomputertechnik. Thema: Serielle Schnittstelle / UART
Mikrocomputertechnik Thema: Serielle Schnittstelle / UART Parallele vs. serielle Datenübertragung Parallele Datenübertragung Mehrere Bits eines Datums werden zeitgleich mittels mehrerer Datenleitungen
MehrMini- Mikroprozessor-Experimentier-System. Version 1.0b vom :21. mit einem 8051-Mikrocontroller
Mini- Mikroprozessor-Experimentier-System mit einem 8051-Mikrocontroller Version 1.0b vom 04.10.2004 14:21 Inhalt 1 Einleitung...3 2 Hardware...4 2.1 Übersicht...4 2.2 Mikrocontroller AT89C51RB2...5 2.3
MehrI2C-Echtzeituhr am Atmel AVR
Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik und Datenbanken Praktikum Mikrocontroller und DSP (EMD) Prof.Dr.-Ing. E. Coersmeier I2C-Echtzeituhr am Atmel AVR Name, Vorname
MehrInformatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692
Informatik Repetitorium SS 2009 Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Operatoren und Datentypen Beispiel: Anweisungen Variable int a float b int c a= a % (int) (++b-1/4) Vorher 36 3.5 c=b
Mehr8.3 Taster am µcontroller
8.3 Taster am µcontroller AVR-KOMPENDIUM Nachdem im vorigen Beispiel das Port als Ausgang verwendet wurde erweitern wir dieses Beispiel um einen Taster - um auch das Einlesen von digitalen Signalen zu
MehrMODUL 3 Bedienung der seriellen Schnittstelle und der LCD-Anzeige
µc Anwendungsprogrammierung in C Modul 3 / Seite 1 MODUL 3 Bedienung der seriellen Schnittstelle und der LCD-Anzeige V 1.1 J. Humer 1997 µc Anwendungsprogrammierung in C Modul 3 / Seite 2 Inhalt INHALTSVERZEICHNIS
MehrLösung II Veröffentlicht:
1 Momentane Bewegung I Die Position eines Teilchens auf der x-achse, ist gegeben durch x = 3m 30(m/s)t + 2(m/s 3 )t 3, wobei x in Metern und t in Sekunden angeben wird (a) Die Position des Teilchens bei
Mehr