- No category
advertisement
Mikrocontroller-Entwicklungsumgebung SiSy Seite : 15/34
4 Mikrocontroller-Entwicklungsumgebung SiSy
Schauen wir uns als nächstes kurz in der Entwicklungsumgebung SiSy um. Für die
Entwicklung von Mikrocontrollerlösungen bietet sich die einfache Programmierung an.
4.1 Voraussetzungen
Für die Bearbeitung der folgenden Aufgaben benötigen Sie die aufgeführte Software und Hardware.
Software:
•
SiSy ab Version 2.16
•
SiSy-Ausgabe Developer, Professional oder BS und das installierte Add-On AVR
Hardware:
•
Ein bestücktes myAVR-Board
•
LPT-Verlängerungskabel
•
9 V Batterie bei Bedarf (z.B.: autonomer Einsatz)
•
Nullmodemkabel für die COM Schnittstelle
•
Patchkabel
4.2 Zielstellung
Der Schnelleinstieg zur Mikrocontroller-Programmierung soll Ihnen helfen, SiSy AVR kennen zu lernen und erste Schritte in der hardwarenahen Programmierung mit SiSy zu gehen.
Zielstellung für das erste Beispielprogramm: Die drei LED’s auf dem myAVR-Board sollen nacheinander aufleuchten und damit ein „Lauflicht“ erzeugen.
4.3 Vorgehen
Ein neues Projekt anlegen
Starten Sie SiSy, wählen Sie Assistent öffnen und bestätigen Sie mit OK. Wählen Sie den Menüpunkt Neues Projekt anlegen, vergeben Sie den Projektnamen „Lauflicht“.
Wählen Sie das Vorgehensmodell „Programmierung“. Wählen Sie aus dem Dialog der
Diagrammvorlagen „keine Vorlage verwenden“ oder brechen Sie den Dialog ab.
Hinweis:
In SiSy legen Sie stets ein Projekt an. In dieses Projekt integrieren Sie Ihr Programm bzw. mehrere Programme. Unabhängig vom Programmnamen benötigt jedes Projekt einen Namen.
SiSy AVR Stand: 28.06.05
Seite: 16/34 Mikrocontroller-Entwicklungsumgebung SiSy
Kleines Assembler-Programm anlegen
Erstellen Sie ein Programm für den AVR-Mikrocontroller, indem Sie per Drag & Drop aus der Objektbibliothek ein „kleines Programm“ in das Diagrammfenster ziehen.
Markieren Sie das Objekt und wählen Sie aus dem Kontextmenü (rechte Maustaste)
Definieren.
Auf der Registerkarte „Definition“ tragen Sie den Programmnamen ein (im Beispiel
„Lauflicht“) und wählen die Programmiersprache aus, hier „AVR Assembler“ siehe
Abbildung 3.
Abbildung 3:
Abbildung 4
Kontrollieren Sie auf den Registerkarte „Extras (AVR)“ den ausgewählten Controler, siehe Abbildung 4
Über die Registerkarte „Programmgerüst“ können Sie das folgende Grundgerüst für ein
AVR Assemblerprogramm laden; in der Registerkarte „Quellcode“ können Sie den
Quellcode eigenständig eintragen.
Hinweis: Den Quellcode können Sie auch im Beschreibungsfenster/Editorfenster der
SiSy-Benutzeroberfläche eintragen bzw. korrigieren.
Laden Sie die Vorlage für das Programmgerüst oder erstellen Sie den folgenden
Quellcode.
;-----------------------------------------------------------------
;* Titel
;* Prozessor
;* Schaltung
;* Datum
:Programmvorlage für myAVR-Board
:ATmega8 mit 3,6864 MHz
:...
:15.03.2004
;* Autor :Dipl. Ing. Päd. Alexander Huwaldt
;-----------------------------------------------------------------
.include "avr.h"
;-----------------------------------------------------------------
; Reset and Interruptvectoren ; VNr. Beschreibung begin: rjmp main reti reti reti reti
; 1 POWER ON RESET
; 2
; 3
; 4
; 5
Int0-Interrupt
Int1-Interrupt
TC2 Overflow
TC2 Compare Match
Stand: 28.06.05 SiSy AVR
Mikrocontroller-Entwicklungsumgebung SiSy
reti reti reti reti reti reti reti reti reti reti reti reti reti reti
; 6
; 7
; 8 TC1 Compare Match B
; 9
;------------------------------------------------------------------
; Start, Power ON, Reset main: ldi r16 , lo8( RAMEND ) out SPL , r16
TC1 Capture
TC1 Compare Match A
TC1 Overflow
; 10 TC0 Overflow
; 11 SPI, STC Serial Transfer Complete
; 12 UART Rx Complete
; 13 UART Data Register Empty
; 14 UART Tx complete
; 15 ADC Conversion Complete
; 16 EEPROM Ready
; 17 Analog Comparator
; 18 TWI (I²C) Serial Interface
; 19 Store Program Memory Redy ldi r16 , hi8( RAMEND ) out SPH , r16
; Hier den Init-Code eintragen
; Init Stackpointer LO
;------------------------------------------------------------------- mainloop: wdr
; Hier den Quellcode eintragen rjmp mainloop
;-------------------------------------------------------------------
Abbildung 5: Grundgerüst AVR-Assembler Programm
Seite : 17/34
Quellcode in Assembler erstellen
Das Lauflicht soll über die Ausgabegeräte LED angezeigt und von dem Prozessorport D gesteuert werden. Die Realisierung erfolgt über je ein Bit im Register R18. Dieses wird mit dem Befehl Bit-Rotation nach rechts verschoben und an PORT D des Prozessors ausgegeben. Auf Grund der Prozessorgeschwindigkeit muss die Ausgabe des
Lauflichtes für unser Auge verzögert werden. Geben Sie folgenden Quellcode ein bzw. ergänzen Sie die Programmvorlage!
;--------------------------------------------------------------------------------
;* Titel
;* Prozessor
;* Schaltung
;* Datum
:Lauflicht für myAVR-Board
:ATmega8 mit 3,6864 MHz
:PORT D.2 bis PORT D.4 an LED 1 bis 3
:15.03.2004
;* Autor :Dipl. Ing. Päd. Alexander Huwaldt
;--------------------------------------------------------------------------------
.include "avr.h"
;--------------------------------------------------------------------------------
; Reset and Interruptvectoren ; VNr. Beschreibung begin: rjmp main reti reti reti reti reti reti reti reti reti reti reti reti reti reti reti reti reti reti
; 1 POWER ON RESET
; 2 Int0-Interrupt
; 3 Int1-Interrupt
; 4 TC2 Compare Match
; 5 TC2 Overflow
; 6 TC1 Capture
; 7 TC1 Compare Match A
; 8 TC1 Compare Match B
; 9 TC1 Overflow
; 10 TC0 Overflow
; 11 SPI, STC Serial Transfer Complete
; 12 UART Rx Complete
; 13 UART Data Register Empty
; 14 UART Tx complete
; 15 ADC Conversion Complete
; 16 EEPROM Ready
; 17 Analog Comparator
; 18 TWI (I²C) Serial Interface
; 19 Store Program Memory Redy
SiSy AVR Stand: 28.06.05
Seite: 18/34 Mikrocontroller-Entwicklungsumgebung SiSy
;--------------------------------------------------------------------------------
; Start, Power ON, Reset main:
; Alle Bits auf LOW out PORTD , r16 ldi r17 , 0b00000000 ldi r18 , 0b00000001 ; 1 Lauflicht-Bit
;-------------------------------------------------------------------------------- mainloop: skip: ldi r16 , lo8( RAMEND ) out SPL , r16 ldi r16 , hi8( RAMEND ) out SPH , r16 ldi r16 , 0b11111111 out DDRD , r16 ldi r16 , 0b00000000 wdr inc r16 brne skip inc r17
; Init Stackpointer LO
; Init Stackpointer HI
; PORT D auf Ausgang
; Wait
; Wait brne skip rcall up1 ; Lauflicht rjmp mainloop
;--------------------------------------------------------------------------------
; Bit-Rotation up1: rol r18 out PORTD , r18 ret
;--------------------------------------------------------------------------------
Compilieren und Linken
Der eingegebene Quellcode muss nun in Maschinencode für den AVR-Prozessor
übersetzt werden. Wählen Sie dazu die Schaltflächen „Compilieren“ und „Linken“. Bei fehlerfreier Übersetzung liegt das Programm als „Lauflicht.hex“ vor und kann auf den
FLASH-Programmspeicher des Prozessors gebrannt werden.
Hardware anschließen und brennen
Das myAVR-Board verfügt über eine ISP (In System Programming) Schnittstelle. Der
Prozessor muss also nicht für die Programmierung aus dem System entfernt werden, um ihn in einem gesonderten Programmiergerät zu brennen, sondern kann im myAVR-
Board direkt programmiert werden. Dazu schließen Sie das Programmierkabel an den
LPT-Port Ihres Rechners.
Stand: 28.06.05 SiSy AVR
Mikrocontroller-Entwicklungsumgebung SiSy Seite : 19/34
Zum Brennen wählen Sie die Schaltfläche „Brennen“. Bei erfolgreichem Brennvorgang erhalten Sie im Ausgabefenster folgende Meldung:
Abbildung 6: Ausgabefenster
Mikrocontrollerlösung testen
Um das Programm zu testen ist es nötig, den
Port D mit den Ausgabegeräten LED zu verbinden.
•
Wenn vorhanden ziehen Sie die
Batterie/das Netzteil und das
Programmierkabel ab.
•
Verbinden Sie die LEDs mit dem
Prozessorport D entsprechend dem folgenden Schema.
Nutzen Sie Patchkabel!
•
Prüfen Sie die Verbindungen und schließen Sie die Batterie/das Netzteil oder das Programmierkabel wieder an und nehmen die Mikrocontrollerlösung in Betrieb.
•
Es ist jetzt an den LED’s ein Lauflicht zu sehen.
•
Gratulation!
Abbildung 7
Das ist Ihre erste Mikrocontrollerlösung mit dem myAVR-Board.
Beim Kompilieren, Linken und Brennen des Schnellstart-Beispiels öffnete sich ein
Ausgabefenster und zeigte Protokollausgaben der Aktionen an. Wenn die Hardware ordnungsgemäß angeschlossen, von der Software erkannt wurde und das Programm erfolgreich auf den Programmspeicher des Mikrocontrollers übertragen wurde, muss die letzte Ausschrift folgenden Inhalt haben:
avrdude: xxx bytes of flash written
… avrdude: verifying … avrdude: xxx bytes of flash verified avrdude done: Thank you
Ende.
Abbildung 8: Ausgabefenster mit "Brenn"-Protokoll
SiSy AVR Stand: 28.06.05
Seite: 20/34 Mikrocontroller-Entwicklungsumgebung SiSy
Die Inbetriebnahme, Test und Datenkommunikation mit der Mikrocontrollerlösung erfolgen über das SiSy-AVR-Controlcenter. Dabei wird über die Schaltfläche „Start“ das
Testboard mit der nötigen Betriebsspannung versorgt und der Controller gestartet. Der
Datenaustausch mit dem myAVR-Board ist möglich, wenn das Null-Modemkabel an
Rechner und Testboard angeschlossen ist, sowie die Mikrocontrollerlösung dafür vorgesehen ist. Es können Texte und Bytes (vorzeichenlose ganzzahlige Werte bis 255) an das Board gesendet und Text empfangen werden. Die empfangenen Daten werden im Protokollfenster angezeigt.
Abbildung 9: SiSy AVR-Controllcenter
Nutzen Sie die zahlreichen Hilfen und Vorlagen, die SiSy dem Entwickler bietet!
Abbildung 10: SiSy AVR-Assembler --> Dictionary und Hilfe
Stand: 28.06.05 SiSy AVR
advertisement
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Related manuals
advertisement
Table of contents
- 7 Einleitung
- 8 Vorbereitung
- 8 Beschaffung und Installation der Software
- 8 Voraussetzungen
- 8 Setup von der SiSy-CD
- 10 Beschaffen bzw. Herstellen der Hardware
- 11 Arbeiten mit der Entwicklungsumgebung von SiSy
- 11 Projektarbeit
- 11 Was ist ein Projekt?
- 11 Neues Projekt erstellen
- 11 Vorhandenes Projekt öffnen
- 11 Projekt archivieren
- 12 Projektarchiv einlesen
- 12 Die Modellierungselemente von SiSy
- 13 Die Fenster für die Modellierung
- 15 Mikrocontroller-Entwicklungsumgebung SiSy
- 15 Voraussetzungen
- 15 Zielstellung
- 15 Vorgehen
- 21 Entwicklung eines Programmablaufplans mit SiSy
- 21 Einleitung
- 21 Vorbereitung
- 23 Aufgabenstellung
- 23 Grundstruktur laden
- 23 Logik entwerfen
- 25 Befehle eingeben
- 28 Übersetzen, brennen und Test
- 30 Dokumentengenerierung „QuickDok
- 30 Zweck
- 30 Einstellungen in Word
- 30 Die Benutzung von QuickDok
- 31 Anhang: Tastaturbelegung
- 33 Anhang: Mausoperationen