0% fanden dieses Dokument nützlich (0 Abstimmungen)
5 Ansichten38 Seiten

TP Mikrocontroller

Dieses Dokument beschreibt die Entwicklung von Anwendungen auf Basis des Mikrocontrollers PIC16F628A, insbesondere die Verwaltung von Ein- und Ausgängen. Es präsentiert die Entwicklung eines Programms zur Steuerung einer Leuchtdiode gemäß einem gegebenen Zeitdiagramm, unter Verwendung von MikroC für die Programmierung, Proteus für die Simulation und IC-Prog für den Transfer zum Mikrocontroller.

Übersetzt von

ScribdTranslations
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
5 Ansichten38 Seiten

TP Mikrocontroller

Dieses Dokument beschreibt die Entwicklung von Anwendungen auf Basis des Mikrocontrollers PIC16F628A, insbesondere die Verwaltung von Ein- und Ausgängen. Es präsentiert die Entwicklung eines Programms zur Steuerung einer Leuchtdiode gemäß einem gegebenen Zeitdiagramm, unter Verwendung von MikroC für die Programmierung, Proteus für die Simulation und IC-Prog für den Transfer zum Mikrocontroller.

Übersetzt von

ScribdTranslations
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

AOUINA NOURALLAH Technologe am ISET von BIZERTE

Hochschule für Technologische Studien Bizerte


Departement GE (A.U : 2014– 2015)

ATELIER FÜR DIGITALE ELEKTRONIK

PRAKTISCHE ARBEITEN

TPN°1 Entwicklung von anwendungsbasiertenAnwendungen


Mikrocontroller (Eingangs-/Ausgangsverwaltung)

Date :----------------------------- Classe :--------------------Durée : 3h

Nom & Prénom : AB/PR BB/AS Mot/Teil TP N° Total

1 -------------------------- /4 /6 /10 /20

2 ---------------------------- /4 /6 /10 /20

3 ----------------------------- /4 /6 /10 /20

4 ---------------------------- /4 /6 /10 /20

Ziele des Praktikums:

V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

Bedingungen für die Durchführung und Mittel:

V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

V----------------------------------------------------------------------------------------------------------------

TP ELEKTRONIK NUMERISCH 1
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Objectifs :
‹ Sich mit der Entwicklungsumgebung von MikroC vertrautmachen
‹ Durchführung der Eingangs- und Ausgangsverwaltung mit einem PIC 16F628A.
‹ Einen Mikrocontroller PIC 16F628A programmieren.
‹ Simulieren und testen Sie das Programm auf der Hardware.

Ich- Einführung :
Ein Mikrocontroller ist ein integrierter Schaltkreis, der die wesentlichen Elemente eines Computers vereint:
Prozessor, Speicher (Nichtflüchtiger Speicher für das Programm, Arbeitspeicher für die Daten), Einheiten
Peripheriegeräte und Ein- und Ausgabeschnittstellen. Mikrocontroller zeichnen sich durch eine höhere aus.
Integrationsgrad, ein geringerer Stromverbrauch (einige Milliwatt in
Betriebsweise, einige Nanowatt im Standby), eine niedrigere Betriebs Geschwindigkeit (einige
Megahertz) und Kosten im Vergleich zu den vielseitigen Mikroprozessoren, die in den verwendet werden
Personalcomputer.
Im Vergleich zu elektronischen Systemen auf Basis von Mikroprozessoren und anderen separaten Komponenten
(wie zum Beispiel Computer oder Automaten) ermöglichen Mikrocontroller eine Verringerung
die Größe, den Stromverbrauch und die Kosten der Produkte. Sie haben somit dazu beigetragen, zu demokratisieren
die Nutzung von Informatik in einer Vielzahl von Produkten und Prozessen.

Mikrocontroller werden häufig in eingebetteten Systemen verwendet, wie z. B.


Steuergeräte für Automotoren, Fernbedienungen, Bürogeräte, Haushaltsgeräte,
die Spielzeuge, die Mobiltelefonie, usw.
Der zu verwendende Mikrocontroller ist der PIC 16F628A« Peripherie
Interface Controller » ist ein 18-poliger Mikrocontroller
hergestellt von der amerikanischen Gesellschaft MICROCHIP Technology
Inc. - Arizona – USA

Es enthält 2 KB Flash-Speicher, 224 MB Speicher von


Daten, 128 EEPROM-Daten von 16
Eintritt/Ausgang.

Die Entwicklungstools für PIC-basierte Anwendungen sind:

VMIKROC zur Erstellung von Programmen


VISISde Proteus für die Simulation
VICPROG für PICKIT2 zur Programmierung

TP ELEKTRONIK DIGITAL 2
AOUINA NOURALLAH Technologe an der ISET von Bizerte

II- Entwicklung von Anwendungen auf Basis von PIC

Aktivität 1: Blinkdiode
ÿ Schritt 1: Pflichtenheft
Wir möchten eine Leuchtdiode "LED" gemäß dem folgenden Zeitplan bestellen:

Wahl des Mikrocontrollers: PIC 16F628A


Wahl der PIN für die Steuerung der Diode „LED“: PIN6 (RB0)

ÿ Schritt 2: Programmierung in mikroC

Starten Sie die Software mikroC und erstellen Sie ein neues Projekt (Projekt --> Neues Projekt)

TP ELEKTRONIK DIGITALE 3
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Das neue Projekt heißt (Project Name) Diode_LED im Verzeichnis (Project folder)
C:\Atelier_Labo_I06\Diode_LED\, wir wählen den pic16F628A (Gerätename) und einen Quarz von 4MHz
(Geräteuhr).

TP ELEKTRONIK NUMERISCH 4
AOUINA NOURALLAH Technologe am ISET von BIZERTE

TP ELEKTRONIK DIGITAL 5
AOUINA NOURALLAH Technologe am ISET von Bizerte

Geben Sie das folgende Programm ein.

voidmain() {
TRISB= 0b11111110 ; // b7 b6 b5 b4b3 b2 b1b0
// 1 1 1 1 1 1 10
// Entrées Ausgang
while(1) // endlose Schleife
{
PORTB = 0b1111111 ; Die LED-Diode ist eingeschaltet
verzögerung_ms(1000); // Verzögerung von einer Sekunde
PORTB = 0b11111110 ;//die LED-Diode ist ausgeschaltet
verzögerung_ms(1000); //Zeitverzögerung von einer Sekunde
} //Ende der Endlosschleife
} //Fin de programme
Hinweis:
Um einen einzigen Pin des PORTB zu programmieren, kann man die folgende Syntax verwenden: RB0_bit oder
PORTB.F0
Kompilieren Sie das Programm

Um Ihr Programm zu kompilieren, gehen Sie zum Tab Build.‰Bauen Sie das Symbol aus , oder aber
Strg+F9.

Nach der Kompilierung, wenn es nicht gibt


Fehler, le Datei
Diode_LED.hexest erstellt

TP ELEKTRONIK NUMERISCH 6
AOUINA NOURALLAH Technologe am ISET von BIZERTE

ÿ Etape3 : Simulation en utilisant le logiciel ISIS

F Erstellen Sie die nebenstehende Schaltung mit der Software ISIS.

Sur ISIS, en mode composant, cliquer sur P,


Ein Dialogfeld erscheint, das das ermöglicht
Auswahl der Komponente aus der Bibliothek
verfügbar

Auswahl der Komponente in der verfügbaren Bibliothek

Geben Sie in Keywords pic16F628A ein


Doppelklick auf das Element
wählen, um ihn in die Liste der
Komponenten verfahren auf die gleiche Weise
Weg, um den Quarz auszuwählen
(KRISTALL), der Widerstand (WID), die
capacité (CAP) , potentiomètre
(POT_LIN), LED , Afficheur 7
Segment (7seg) ...

TP ELEKTRONIK NUMERISCH 7
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Auswahl der Ladepunkte

Klicken Sie auf das Terminal-Symbol, die Liste der verfügbaren Terminals erscheint.

EINGANG Geboren für eingehendes Signal

OUTPUT Born für Ausgangssignal


BIDIR bidirektionales Signal
Macht Magnetanschluss
BODEN die Masse
BUS Bus mit mehreren Signalen

Anordnung der verschiedenen Komponenten

Die verschiedenen Komponenten anbringen


sowie die Stromanschlüsse.
Verbinden Sie sie, um den Kreis von
Basis.
Remarque : on n’a pas besoin
den Gipfel zu speisen. Isis macht es
automatisch.
Den VCC-Label doppelt bearbeiten
Durch Klicken auf die Stromquelle
Leistung (man ändert die Werte eines)
Komponente durch Bearbeiten ihrer Eigenschaften
durch einen Doppelklick mit der linken Maustaste)

F Klicken Sie auf PIC16F628A (rechte Maustaste, dann linke Maustaste und fügen Sie die Datei diode_LED.hex hinzu)

im Programmordner und die Uhr auf 4 MHz einstellen)

TP ELEKTRONIK DIGITAL 8
AOUINA NOURALLAH Technologe am ISET von BIZERTE

FStarten Sie die Simulation des Schaltkreises (klicken Sie auf die Wiedergabetaste im Steuerpanel der Animation unten)

links)

ÿ Schritt 4: Übertragung der ausführbaren Datei

F Übertragen Sie die ausführbare Datei diode_LED.hex in den Programmspeicher des


Mikrocontroller PIC16F628A

TP ELEKTRONIK DIGITALE 9
AOUINA NOURALLAH Technologe am ISET in BIZERTE

Setzen Sie den PIC16F628A in die Programmierkarte (Programmer) ein

F Verbinden Sie den Programmierer über das serielle Verbindungskabel mit dem PC.

F Verwenden Sie die Software Ic-Prog, um Ihre Datei diode_LED.hex auf den PIC zu übertragen
Starten Sie die Software IC-Prog und wählen Sie PIC16F628A aus.

TP ELEKTRONIK DIGITAL 10
AOUINA NOURALLAH Technologe am ISET von Bizerte

Öffnen Sie Ihre Datei mit dem Namen Diode_LED.hex

TP ELEKTRONIK NUMERIK 11
AOUINA NOURALLAH Technologe am ISET von Bizerte

Um den PIC16F628A zu programmieren, klicken Sie auf Alles programmieren

F Setzen Sie das elektronische Schema auf die Testplatine und testen Sie dessen Funktion.

Interne Struktur einer Prüfflatte

TP ELEKTRONIK NUMERISCH 12
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Beispiel für Verdrahtung auf einem Steckbrett

Um mehr zu erfahren!
Die Kompilierung eines Codes ermöglicht es, nur Syntaxfehler zu erkennen, hingegen ein
Korrekte Syntax bedeutet nicht, dass ein Programm korrekt ist.

Falls der Code gut geschrieben ist, aber die Anwendung nicht den Anforderungen entspricht, ISIS
bietet uns die Möglichkeit, das Programm im Schrittmodus (Debug-Modus) auszuführen, um
Bestimmen Sie die Programmierfehler.
Um diesen Modus zu verwenden, muss zuerst eine Datei erstellt werden, die der *.hex-Datei ähnelt, aber die
enthält mehr Informationen zur Verwendung des Debug-Modus, ist die Datei .COFF
Um diese Datei zu generieren, gehen Sie in MikroC auf die Registerkarte Werkzeuge.‰ Optionen‰ Ausgabeeinstellungen
dann das Kästchen „COFF-Datei generieren“ ankreuzen

TP ELEKTRONIK DIGITALE 13
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Laden Sie diese Datei in den PIC statt der .hex-Datei in ISIS und starten Sie dann den Debug-Modus.

Im diesem Modus kann man die Ausführung sehen.


du code zeilenweise, den Inhalt der
Register, der Inhalt des Speichers
RAM usw.
Durch die Verfolgung der Programm-Ausführung und
Kohärenz des Ergebnisses, man kann
bestimmen die Fehler de
Nicht erkannte Programmierung
Compiler.

TP ELEKTRONIK DIGITAL 14
AOUINA NOURALLAH Technologe am ISET von Bizerte

Aktivität 2: Abblendlicht

Abbildung Nr. 1: Elektronisches Schema des Abblendlichters

Lastenheft
Wir möchten die Steuerung einer Kreuzung Lichtern automatisieren, die den Verkehr regelt.
Kreuzung mit zwei Fahrbahnen. Das Lastenheft sieht die Möglichkeit vor, die Zeitgeber zu ändern.
durch den Betreiber in Abhängigkeit von der Verkehrsdichte. Die Studie wird auf eine einzige Ampel beschränkt sein. Der
Der normale Betrieb wird durch das folgende Zeitdiagramm beschrieben:

Schritte V O R Dauer der Phase 1: 10s


1 0 0 1 Dauer der Etappe 2: 2s

2 0 1 0 Dauer der Stufe 3: 10s

3 1 0 0 Dauer der Phase 4: 2s

4 0 1 0
1- Schreiben und Kompilieren eines Programms, das dem obigen Zeitplan entspricht mit
MiKroC.
2- Erfassen und simulieren Sie das obenstehende elektronische Schema unter ISIS.

3- Implementieren Sie das Programm im Speicher des PIC: Übertragen Sie die [Link] in die
mémoire programme du PIC à l'aide du programmateur.
4- Den PIC in seine endgültige Montage einsetzen und die Simulationsergebnisse in der Praxis validieren

TP ELEKTRONIK NUMERISCH 15
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Aktivität 3: Modulo 10 Zähler:

Abbildung Nr. 2: Elektronisches Schema eines Modulo-10-Zählers

Abbildung Nr. 3: Die verschiedenen Ziffern, die vom Sieben-Segment-Anzeiger erstellt werden

Un afficheur sept segments est constitué de sept segments(a, b, c, d, e, f, g), chaque segment
enthält eine LED-Diode, die ein- oder ausgeschaltet wird, um eine Zahl zu bilden, Abbildung Nr. 3. Beispiel
Si(a=b=c=1)et(g=d=e=f=0)le chiffre créé est sept.
RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 Code ein Code HEX in
- g f e d c b a Hexadezimal miKroC

0 0 0 0 0 1 1 1 07 0x07

Um den Code jeder Ziffer zu finden, sei es in


hexadezimal oder dezimal, lancermiKroC, klicken auf
Werkzeuge klicken Sie auf Seven Segment Editor, die
Das nächste Fenster wird sich öffnen:

TP ELEKTRONIK NUMERISCH 16
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Klicken Sie auf die Segmente (a, b, c, d, e, g), um die gewünschte Zahl zu erstellen, in unserer Anwendung
nimmt den Code der Ziffer für einen gemeinsamen Kathoden-7-Segment-Anzeiger (Beispiel: das
Die erzeugte Ziffer ist 7, ihr Code in HEX ist 0x07.

1- Schreiben Sie dann ein Programm, das die Funktionsweise eines Modulo-10-Zählers beschreibt und kompilieren Sie es.
wer zählt von 0 bis 9 mit mikroC.
2- Erfassen und simulieren Sie das obenstehende elektronische Schaltbild unter ISIS.

3- Implementieren Sie das Programm im Speicher des PIC: Übertragen Sie die [Link] die
Speicherprogramm des PIC mit Hilfe des Programmiergeräts.

4- Den PIC in seine endgültige Montage einsetzen und die Simulationsergebnisse in der Praxis validieren.

Um einen Zähler/Abzähler zu erstellen, fügen wir zwei Schalter (Switch) an die Anschlüsse hinzu.
RA0, RA1du PORTA
SiRA0=0‰Der Montage funktioniert im Zähler/Stellen
SiRA0=1‰Rücksetzung (RAZ)
SiRA1=0‰ Zählen von 0 bis 9
SiRA1=1‰ Abzählen von 9 bis 0
Es wird gebeten, die Fragen 1 bis 4 zu verweisen.

TP ELEKTRONIK DIGITAL 17
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Aktivität 4: Schrittmotor mit 2 Rotationsrichtungen:


Die folgende Abbildung beschreibt die Verkabelung eines Schrittmotors, der vom PIC 16F628A gesteuert wird. Der
Der ULN2803A-Schaltkreis ist ein Anpassungsschaltkreis zwischen der Steuerebene und der Leistungsebene.
In ISIS findet man den PAP-Motor unter dem Namen 'STEPPER'. Geben Sie die Versorgungsspannung des
Motor und den Drehwinkel angeben.

Um den Schrittmotor zu steuern, genügt es, die angegebenen Schaltsequenzen zu befolgen.


nächste Tabelle:

Um die Drehrichtung umzukehren, reicht es aus, die Schaltsequenzen umzukehren.


Durch die Kombination der Modi 1 und 2 erhält man einen Betrieb im Halbschritt. Um die Geschwindigkeit festzulegen
Die Drehung des Motors, man muss nur die Umschaltzeit zwischen den Sequenzen festlegen.
1- Schreiben Sie ein Programm, das die Funktionsweise des Schrittmotors (PAP) beschreibt, und kompilieren Sie es.
mikroC.
2- Erstellen und simulieren Sie das oben stehende elektronische Schema unter ISIS.
3- Implementieren Sie das Programm im Speicher des PIC: Übertragen Sie die Datei .hex in die
Speicherprogramm des PIC mit Hilfe des Programmiergeräts.
4- Den PIC in seine endgültige Montage einfügen und die Simulationsergebnisse in der Praxis validieren.
5- Um die zweite Drehrichtung hinzuzufügen, fügen Sie einen Schalter am Pin RA0 hinzu, um zwischen
der Sinn vorwärts und der Sinn rückwärts :
Wenn RA0 = 0Ï Drehung im Uhrzeigersinn
Wenn R10 = 1Ï Drehung im Rückwärtsgang

TP ELEKTRONIK DIGITAL 18
AOUINA NOURALLAH Technologe am ISET in BIZERTE

Institut Supérieur des Etudes Technologiques de Bizerte


Departement GE (A.U : 2014– 2015)

ATELIER D’ELECTRONIQUE NUMERIQUE

PRAXISARBEITEN

TPN°2 Entwicklung von anwendungsbasierten


Mikrocontroller(Steuerung des LCD-Displays)

Date :----------------------------- Classe :--------------------Durée : 3h

Nom & Prénom : AB/PR BB/AS Mot/Teil TP N° Total

1 -------------------------- /4 /6 /10 /20

2 ---------------------------- /4 /6 /10 /20

3 ----------------------------- /4 /6 /10 /20

4 ---------------------------- /4 /6 /10 /20

Ziele des Praktikums:

V-------------------------------- --------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

Durchführungsbedingungen und Mittel:


V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

V----------------------------------------------------------------------------------------------------------------

TP ELEKTRONIK DIGITAL 19
AOUINA NOURALLAH Technologe am ISET von Bizerte

Ziele:
Implementierung eines LCD-Displays, das von einem PIC 16F628A, 16F877A gesteuert wird.

I- Prinzip :

Abbildung 1 : Schnittstelle 4 Bit

Das Display LM016L verfügt über:

• 3 Stromanschlüsse (genannt VSS, VDD und VEE)


• 3 Kontrollvariablen (namens RS, RWetE)
• 8 Dateneinträge (genannt D0, D1, D2, D3, D4, D5, D6 und D7)

Hier ist die Rolle jeder der 3 Stromversorgungen des Displays LM016L:

• VSS muss mit dem Minuspol einer 5-V-Stromversorgung verbunden sein.


• VDD muss mit dem Pluspol einer 5V-Stromversorgung verbunden werden.
• VEE ermöglicht es, die Helligkeit und den Kontrast des Displays zu ändern.

Man kann eine Brosche gewinnen, indem man R/W mit Masse verbindet (R/W = 0 : Schreibmodus)

Die folgende Tabelle beschreibt die Funktion jeder Pin.

Brosche Name Funktion


1 Vss Masse
2 Vdd Positive Versorgung +5V
Diese Spannung ermöglicht es, sie zwischen 0 und +5V zu variieren,
3 VEE
die Einstellung des Kontrasts des Displays.
zwischen einem Befehl und einer Daten. Ein niedriges Niveau
Geben Sie einen Befehl an, und ein hohes Niveau zeigt an, dass eine
4 RS
Daten (Anzeige).
Lesen oder Schreiben
5 R/W 0 : Schreiben

TP ELEKTRONIK NUMERISCH 20
AOUINA NOURALLAH Technologe am ISET von BIZERTE

1 : Lecture (le contrôleur nous offre la possibilité de lire


bestimmte Parameter intern im Display.)

Es ist die Uhr des Displays, sie wird takten und validieren.
alle den Austausch (Übertragung von Anweisungen oder für
6 E
die Anzeige eines Zeichens).
D0 à Daten im ASCII-Code (D0 bis D4 haben zusätzlich
7 bis 14
D7 andere Funktionen)
15 A Anode Hintergrundbeleuchtung (+5V)

16 K Kathoden-Hintergrundbeleuchtung (Masse)

Die folgende Tabelle zeigt die verschiedenen Zeichen, die von LCD angezeigt werden können.
ASCII-Code.

TP ELEKTRONIK NUMERISCH 21
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Abbildung 2: Brochage LCD

Die verschiedenen PINs des LCD werden vom Mikrocontroller gesteuert. Jede Variable muss sein
einem Pin des µC zugewiesen.
Beispiel:
Register-Wahlleitung. sbitLCD_RSatRB4_bit;

Der Steuerpin ist gegeben durch:


sbitLCD_RS_Richtung
Register Select direction pin
TRISB4_bit;

Ebenso für die anderen Variablen und ihre Befehle:


Linie aktivieren sbitLCD_EN…

Daten 7 Zeile sbitLCD_D7…

……… ……….

Die Grundfunktionen:

Prototyp Description

void Lcd_Init(); Initialisiert das Lcd-Modul.

Prints text on Lcd starting from specified position. Both


string variables and literals can be passed as a text.
void Lcd_Out (char zeile, char
Parameters :
Spalte, char *text);
• row: starting position row number
• Spalte: Startposition Spaltennummer
• Text, der geschrieben werden soll
Druckt Text auf LCD an der aktuellen Cursorposition. Beide Zeichenfolgen
Variablen und Literale können als Text übergeben werden.
voidLcd_Out_Cp (char*text);
Parameters :

• Text, der geschrieben werden soll

TP ELEKTRONIK NUMERISCH 22
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Druckt Zeichen auf dem LCD an der angegebenen Position. Beide Variablen
und Literale können als Zeichen übergeben werden.
void Lcd_Chr (char zeile, char
Parameters :
column, char out_char);
• Reihe: Schreibposition Reihenfolge
• Spalte: Schreibposition Spaltennummer
• out_char: character to be written
Druckt das Zeichen an der aktuellen Cursorposition auf dem LCD. Beide

void Lcd_Chr_Cp (char Variablen und Literale können als Zeichen übergeben werden.
out_char);
Parameters :

• out_char: character to be written


Sendet Befehl an das Lcd.
void Lcd_Cmd (char out_char);
Parameters :

• out_char: command to be sent

Die Befehle :

LCD-Befehl Zweck

_LCD_FIRST_ROW Bewege den Cursor zur ersten Zeile

_LCD_SECOND_ROW Bewege den Cursor zur 2. Reihe

_LCD_THIRD_ROW Bewege den Cursor zur 3. Zeile

_LCD_FOURTH_ROW Bewege den Cursor zur vierten Reihe

_LCD_CLEAR Klarer Bildschirm

_LCD_STARTSEITE Setzen Sie den Cursor in die Heimatposition zurück, bringt eine verschobene Anzeige zurück zu

its original position. Display data RAM is unaffected.

_LCD_CURSORS_AUS Cursor ausschalten

_LCD_UNTERSTRICH_AN Unterstrichener Cursor auf

_LCD_BLINK_CURSOR_ON Blink-Cursor aktivieren

Bewege den Cursor nach links, ohne die Anzeigedaten im RAM zu ändern
_LCD_CURSOR_NACH_LINKS_BEWEGEN

_LCD_MOVE_CURSOR_RIGHT Cursor nach rechts bewegen, ohne die Display-Daten-RAM zu ändern

_LCD_EINSCHALTEN LCD-Display einschalten

_LCD_TURN_OFF LCD-Display ausschalten

TP ELEKTRONIK DIGITAL 23
AOUINA NOURALLAH Technologe am ISET von BIZERTE

_LCD_SHIFT_LEFT Verschieben Sie das Display nach links, ohne den Display-Daten-RAM zu ändern.

_LCD_SHIFT_RECHTS Verschiebe das Display nach rechts, ohne den RAM der Anzeige-Daten zu ändern

1. Angeforderte Arbeit:

On propose de réaliser un programme à l’aide d’un pic 16F628A qui permet de gérer un afficheur
alphanumerisch aus 2 Zeilen mit 16 Zeichen im 4-Bit-Modus, um die folgenden Texte zu schreiben:

Vtxt1[] = "ISETB de Bizerte";


Vtxt2[] = "Atelier_Labo_I06";
V txt3[] = "Microcontrôleur";
Vtxt4[] = "PIC16F628A";

- RB4/RB7 sont connectées à D4/D7 de l’afficheur


- RB3 steuert den Pin „E“ des Displays
- RB2 steuert den Pin „RS“ des Displays

Das folgende Schaltbild zeigt ein von PIC16F628A gesteuertes LCD-Display.

Abb. 3: LCD-Anzeige, gesteuert von PIC16F628A


1- Schreiben Sie das folgende Programm und kompilieren Sie es mit MikroC.

// Verbindungen des LCD-Moduls


sbit LCD_RS bei RB2_bit;
sbit LCD_EN bei RB3_bit;
sbit LCD_D4 an RB4_bit;
sbit LCD_D5 an RB5_bit;
sbit LCD_D6 bei RB6_bit;
sbit LCD_D7 bei RB7_bit;

TP ELEKTRONIK DIGITAL 24
AOUINA NOURALLAH Technologe am ISET von BIZERTE

sbit LCD_RS_Direction bei TRISB2_bit;


sbit LCD_EN_Richtung bei TRISB3_bit;
sbit LCD_D4_Direction an TRISB4_bit;
sbit LCD_D5_Direction an TRISB5_bit;
sbit LCD_D6_Direction an TRISB6_bit;
sbit LCD_D7_Direction bei TRISB7_bit;
// Beenden Sie die Verbindungen des LCD-Moduls

// Erklärung der anzuzeigenden Texte


ISETB de Bizerte
Atelier_Labo_I06
Mikrocontroller
PIC16F628A

void main(){

Lcd_Initialisieren(); // Initialisieren LCD


Lcd_Cmd(_LCD_CLEAR); // Anzeige löschen
Lcd_Cmd(_LCD_CURSOR_OFF);// Cursor aus

while(1) { // unendliche Schleife

Lcd_Out(1,1,txt1);// schreibe den Text ab Zeile 1 und Spalte 1


Lcd_Out(2,1,txt2);// den Text ab Zeile 2 und Spalte 1 schreiben
Delay_ms(2000);//Zwei Sekunden Verzögerung

Lcd_Cmd(_LCD_CLEAR); // Anzeige löschen


Lcd_Out(1,2,txt3);// schreibe den Text ab Zeile 1 und Spalte 2
Lcd_Out(2,4,txt4);// schreibe den Text ab Zeile 2 und Spalte 4
Delay_ms(2000);
}
}

2- Erfassen und Simulieren des elektronischen Schaltplans in Abbildung 3 unter ISIS.

Programmieren Sie Ihren PIC16F877A-Mikrocontroller mit der Software IcProg und der Karte von
Programmierung wie in Abbildung 4b angegeben
4- Führen Sie die Montage auf der Testplatte durch (und/oder) verkabeln Sie sie auf einem didaktischen Modell.
de PIC und die geplante Funktionsweise überprüfen.

TP ELEKTRONIK DIGITAL 25
AOUINA NOURALLAH Technologe am ISET von Bizerte

(a) (b)
Figure 4 : a- Résultat pratique, b- Programmation du PIC

Figure 5 : exemple de câblage sur plaque d’essai

TP ELEKTRONIK DIGITAL 26
AOUINA NOURALLAH Technologe am ISET von Bizerte

Hochschule für Technologische Studien von Bizerte


Abteilung GE (A.U : 2014– 2015)

ATELIER FÜR DIGITALE ELEKTRONIK

PRAXISARBEITEN

TPN°3 Gestion du temps et du signal PWM

Date :----------------------------- Classe :--------------------Durée : 3h

Nom & Prénom : AB/PR BB/AS Mot/Part TP N° Total

1 -------------------------- /4 /6 /10 /20

2 ---------------------------- /4 /6 /10 /20

3 ----------------------------- /4 /6 /10 /20

4 ---------------------------- /4 /6 /10 /20

Ziele des Praktikums:

V----------------------------------------------------------------------------------------------------------------
V --------------------------------- -------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

Bedingungen für die Durchführung und Mittel:

V ----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

V----------------------------------------------------------------------------------------------------------------

TP ELEKTRONIK NUMERISCH 27
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Objectifs :

VDie Zeitverwaltung in einem PIC 16F628A beherrschen.


VTimer im Interrupt programmieren.
VEin Pulsbreitenmodulationssignal (PWM) erzeugen.

1- Zeitmanagement :

1-1- Prinzip :

Der Timer0 ist ein Zähler, der zwei Funktionen übernimmt:

- Zählen Sie die empfangenen Impulse an der Pin RA4/T0CKI. In diesem Fall sagen wir, dass wir sind
im Moduszähler.

- die Taktzyklen des PIC selbst zählen. In diesem Fall, da der Takt fest ist, wir
Wir werden also tatsächlich die Zeit zählen. Also werden wir im "Timer"-Modus sein.

Die mit Timer0 verbundenen Register:

Das Register INTCON: Interruptsteuerregister


GIE PEIE T0IE INTE RBIE T0IF INTF RBIF
bit7 bit0
Name Funktionen oder Zustände
bit7 GIE: Globales Interrupt-Erlaubnis-Bit Alle Unterbrechungen erlauben
0 : bloquer toutes les interruptions
bit5 T0IE: TMR0 Überlauf Interrupt 1: Die Unterbrechung für den Timer0 zulassen
Bit aktivieren 0: Unterbrechung auf Timer0 blockieren
bit2 T0IF: TMR0 Überlaufunterbrechung 1 : débordement du TMR0 (doit être
Flagge auf Werkseinstellungen zurückgesetzt von Software)

0 : pas de débordement

Le registreOPTION_REG : Option Register:


RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0
bit7 bit0

TP ELEKTRONIK NUMERISCH 28
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Name Funktionen oder Zustände


bit5 T0CS: TMR0 Clock Source Select 1 : Übergang zu RA4/T0CKI/CMP2 Pin
Bit 0 : clock interne
bit4 T0SE: TMR0 Source Edge Select 1: Inkrementierung auf Frontbetrag auf
Bit RA4-Pin
0: incrémentation sur front descendant sur
RA4-Pin
bit3 PSA: Vorzählerzuweisungsbit 1 : Prescaler dem Watchdog zugewiesen
0 : Prescaler zu Timer0 zugewiesen
bit2-1-0PS<2 :0>: Prescaler Rate Select
bits:
Prädivisor: ein Teiler
Ereignisse, die VOR dem Eintritt liegen
de comptage du timer0. Nous
könnten entscheiden zu haben
Inkrementierung von TMR0 alle 2
Ereignisse zum Beispiel, oder auch
alle 64 Ereignisse.

1-2- Angeforderte Arbeit :

Wir schlagen vor, ein Programm auf Basis eines PIC 16F628A zu erstellen, das es ermöglicht, den Zustand zu ändern.
Die Diode, die an Bit 0 von PORTA angeschlossen ist, nach einer Zeit von 3 ms.

1-Werte zur Programmierung in jedem Register geben, um den Timer 0 zu konfigurieren.


2-Geben Sie das Organigramm der Funktionsweise dieser Anwendung an.
3- Schreibe das entsprechende Programm in MicroC.
4-Compiler le programme et le simuler sur ISIS.
5-Setzen Sie den PIC in seine endgültige Montage und validieren Sie die Simulationsergebnisse in der Praxis.

TP ELEKTRONIK DIGITAL 29
AOUINA NOURALLAH Technologe am ISET von BIZERTE

2- Signal PWM :

2-1- Prinzip :

Ein MLI-Signal (PWM) hat eine feste Periode, aber eine variable Impulsbreite. Das Verhältnis
zwischen der Breite des Impulses (tan) und die Periode (T) ist das Hauptmerkmal eines Signals
PWM. Es ist das Tastverhältnis (Duty Cycle). Diese Technik wird hauptsächlich verwendet für
Motoren mit variabler Geschwindigkeit bestellen.

2-1-1- Konfiguration :

Das PWM-Signal wird mithilfe des Timer2 (8 Bit) erzeugt und auf dem Pin CCP1 (RC2) abgerufen, dafür,
Dieser Pin muss als Ausgang konfiguriert werden.
Die Hauptdaten, die bereitgestellt werden müssen, sind die Signalperiode (oder deren Frequenz) und das Verhältnis.
zyklisch

a. Die Periodendauer des Signals wird im Register PR2 gespeichert, sie wird durch die Formel berechnet
nächste :

PWM-Zeitraum = [(PR2) + 1] • 4 • TOSC(TMR2-Vorskalierungswert)

TOSCTaktfrequenz des PIC


TMR2 Prescaler-Wert (siehe Timer 2 Konfiguration)
Wenn TMR2 gleich PR2 ist, beginnt der TMR2 die Berechnung wieder bei null, der CCP1 (RC2) ist
gleich 1, und der Wert des Zyklusverhältnisses wird von CCPR1H kopiert.

b. Der zyklische Bericht ist eine 10-Bit-Auflösung, daher wird er in zwei Registern geschrieben:
CCPR1L et les bits 5 et 4 du CCP1CON.

Arbeitzyklus
Bit9 Bit2 Bit0
CCP1CON<5:4>
CCPR1L (MSB)
(LSB)

PWM-Arbeitszyklus = (CCPR1L:CCP1CON<5:4>) • TOSC(TMR2-Vorskalierungswert)


Der Wert des zyklischen Berichts kann jederzeit geändert werden, aber diese Änderung wird nicht
da dieser Wert im Register CCPR1H geschrieben wird, das heißt, wenn PR2=TMR2.

TP ELEKTRONIK NUMERISCH 30
AOUINA NOURALLAH Technologe am ISET von Bizerte

2-1-2- Die Register, die mit dem PWM-Modul verbunden sind:

Le registreCCPxCON:CCP CONtrol Register (x : 1 ou 2)


-- -- CCPxX CCPxY CCPxM3 CCPxM2 CCPxM1 CCPxM0
bit7 bit0
Nom Funktionen oder Zustände
bit7-6 Nicht verwendet
bit5-4 CCPxX:CCPxY: PWM Am wenigsten
Bedeutende Bits
Bit3-0 CCPxM3:CCPxM0: CCPx 11xx: PWM-Modus
Mode-Auswahlbits Die anderen Kombinationen für die
andere Betriebsarten

Das Register TMR2: Timer2-Modulregister (8-Bit-Register)

Le registrePR2: Timer2 Module’s Period Register (Registre 8 bits)

Le registreT2CON:
-- TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0
bit7 bit0
Name Funktionen oder Zustände
bit7 Non utilisé
bit6-3 TOUTPS3:TOUTPS0: Timer2 Konfiguration des Postscalers:
Postscale-Auswahlbits 0000= 1:1
0001= 1:2
0010= 1:3
…….
1111= 1:16
bit2 TMR2ON: Timer2 On bit Timer2 ist aktiviert
Timer2 ist deaktiviert
bit1-0 T2CKPS1:T2CKPS0: Timer2 00: Prescaler ist 1
Takt-Präskalerauswahlbits 01: Vorteiler ist 4
1x: Teiler ist 16

2-2- Geforderte Arbeit:

Wir schlagen vor, ein Programm auf Basis eines PIC16F877A zu erstellen, das ein Signal erzeugt.
PWM mit einer Frequenz von 2 kHz und variablem Tastverhältnis über zwei Drucktaster.

TP ELEKTRONIK NUMERISCH 31
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Abbildung 1
1- Geben Sie die Werte an, die in jedes Register programmiert werden sollen, um das PWM-Modul zu konfigurieren.
2- Schreiben Sie das entsprechende Programm in MiKroC.
3- Kompilieren Sie das Programm und simulieren Sie es auf ISIS.
4- Führen Sie die Montage auf einer Prüfplatte durch (und/oder) verdrahten Sie sie auf einem didaktischen Modell.
de PIC und die geplante Funktionsweise überprüfen und Ihre Ergebnisse validieren.

Abbildung 2

TP NUMERISCHE ELEKTRONIK 32
AOUINA NOURALLAH Technologe am ISET von BIZERTE

TP ELEKTRONIK NUMERIK 33
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Hochschule für Technologische Studien von Bizerte


Abteilung GE (A.U : 2014– 2015)

ATELIER FÜR DIGITALE ELEKTRONIK

PRAXISARBEITEN

TPN°4Analogisch-Digitalumwandlung

Date :----------------------------- Classe :--------------------Durée : 3h

Nom & Prénom : AB/PR BB/AS Mot/Part TP N° Total

1 -------------------------- /4 /6 /10 /20

2 ---------------------------- /4 /6 /10 /20

3 ----------------------------- /4 /6 /10 /20

4 ---------------------------- /4 /6 /10 /20

Ziele des Praktikums:

V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

Bedingungen für die Durchführung und Mittel :

V----------------------------------------------------------------------------------------------------------------
V----------------------------------------------------------------------------------------------------------------

V----------------------------------------------------------------------------------------------------------------

TP ELEKTRONIK NUMERISCH 34
AOUINA NOURALLAH Technologe an der ISET von Bizerte

Ziele :

VEine analoge Spannung auf dem A/D-Modul des Mikrocontrollers 16F877 lesen
VZeigen Sie das Bild des Wertes einer analog umgewandelten Spannung auf einem LCD-Display an.
V Die Geschwindigkeit eines Gleichstrommotors entsprechend dem Wert der analogen Spannung steuern.
1- Principe :

Das Modul des Analog-Digital-Wandlers ermöglicht die Umwandlung eines analogen Signals in
ein numerischer Wert. Der PIC 16F877A arbeitet mit einem ADC, der eine Abtastung ermöglicht.
auf 10 Bit. Daher kann das digitale Signal 2 annehmen10(1024) mögliche Werte.

1-1- Configuration :

Abbildung 1
Der analoge Eingang kann an einen der externen analogen Eingänge angeschlossen werden. Man kann verwenden
bis zu 8 Eingänge, aber zu einem bestimmten Zeitpunkt ist nur ein Kanal mit dem ADC verbunden. Also die Auswahl
Die Umwandlung muss zwingend vor jeder Konversion stattfinden.

Kanalnummer Brosche
0 RA0/AN0
1 RA1/AN1
2 RA2/AN2/VREF-
3 RA3/AN3/VREF+
4 RA5/AN4
5 RE0/AN5
6 RE1/AN5
7 RE2/AN5

TP ELEKTRONIK DIGITAL 35
AOUINA NOURALLAH Technologe am ISET von BIZERTE

Die Referenzspannungen, die die Dynamik des Wandlers festlegen. Sie können sein
wählen Sie aus Vdd, Vss, Vr+ oder Vr-.
Um einen Eingang als analogen Eingang zu verwenden, muss der entsprechende Port im Modus konfiguriert werden
analoge.
Das ADC-Modul enthält vier Konfigurationsregister:

° A/D Result High Register (ADRESH)


° A/D Ergebnis Niedrigregister (ADRESL)
° A/D-Steuerregister0 (ADCON0)
° A/D-Steuerregister 1 (ADCON1)

1-2- Die mit der ADC verbundenen Register:

Le registreADCON0:A/D CONtrol Register


ADCS1 ADCS0 CHS2 CHS1 CHS0 GEH/FERTIG -- ADON
bit7 bit0
Nom Funktionen oder Zustände
bit7-6 ADCS1:ADCS0: A/D 00: Fosc/2
Konvertierungs-Uhr Auswahlbits
01: Fosc/8
10: Fosc/32
11: interner RC-Oszillator
bit5-3 CHS2:CHS0: Analoger Kanal Auswahl der analogen Eingänge:
Wählen Sie Bits 000: Kette 0 (AN0)
001: chaine 1
010: Kette 2
011: Kette 3
100: Kette 4
101: Kette 5
110: Kette 6
111: Kette 7
bit2 GO/ERLEDIGT: A/D-Wandlung SiADON= 1 :
Statusbit 1: die Umwandlung starten
0: auf Werkseinstellungen zurückgesetzt, wenn die
Die Umwandlung ist abgeschlossen

bit1 Nicht verwendet


bit0 ADON : A/D Ein-Bit 1: Konverter aktiviert
0: Konverter deaktiviert

Der Register ADCON1:


ADFM -- -- -- PCFG3 PCFG2 PCFG1 PCFG0
bit7 bit0
Name Funktionen oder Zustände

TP ELEKTRONIK DIGITAL 36
AOUINA NOURALLAH Technologe am ISET von BIZERTE

bit5 ADFM: A/D Result Format Select 1 : Rechtfertigung nach rechts


Bit 000000XX XXXXXXXX
0 : Justification à gauche
XXXXXXXX XX000000
(siehe Format des Ergebnisses)
bit4 Non utilisé
bit3 PCGG3:PCFG0: A/D-Port Konfiguration der E/A und der Spannungen von
Configuration bits références (Voirtableau 1)
Tabelle 1

1-3- Format de résultat :

Der Konverter gibt ein Ergebnis auf 10 Bit, daher muss dieses Ergebnis zwingend sein
in zwei Registern gespeichert. Diese Register sind die Register ADRESSE und ADRESH.
Das Ergebnis kann entweder links oder rechts ausgerichtet sein.
Die Rechtsbündigung vervollständigt den linken Teil des Ergebnisses mit "0". Das Ergebnis wird daher sein
die folgende Form :
ADRESH ADRESL
0 0 0 0 0 0 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0
Die linksbündige Ausrichtung erfolgt selbstverständlich nach der umgekehrten Methode:

ADRESH ADRESL
b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 0 0 0 0 0 0

Die Rechtsbündigung wird hauptsächlich verwendet, wenn wir die vollständigen 10 Bit benötigen.
Das Ergebnis, während die linksbündige Justierung sehr praktisch ist, wenn 8 Bits ausreichend sind.

TP ELEKTRONIK NUMERISCH 37
AOUINA NOURALLAH Technologe am ISET von BIZERTE

2- Angeforderte Arbeit :

2-1- Aktivität Nr. 1 :

Wir schlagen vor, ein Programm auf Basis eines PIC 16F877A zu erstellen, siehe Abbildung 1, das es ermöglicht, ...
Ein analoges Signal in einen digitalen Wert umwandeln und auf einem LCD anzeigen (siehe TP4).
1-Die Werte angeben, die in jedes Register programmiert werden sollen, um den ADC zu konfigurieren.

2-Schreiben Sie das entsprechende Programm in MikroC.


3-Compiler das Programm und es auf ISIS simulieren.
4-Den PIC in sein endgültiges Layout einfügen und die Simulationsergebnisse in der Praxis validieren.

2-2- Aktivität Nr. 2 :

Man gibt die Abbildung 2 an, ein Programm zu schreiben, das die Geschwindigkeit eines Motors erhöht
in Gleichstrom gemäß dem analogen Wert, der aus dem Potentiometer stammt, das einen Sensor simuliert
thermisch.

TP ELEKTRONIK NUMERISCH 38

Das könnte Ihnen auch gefallen