Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmierung NGW100 Dipl.-Inf. Swen Habenberger 2. Februar 2009.

Ähnliche Präsentationen


Präsentation zum Thema: "Programmierung NGW100 Dipl.-Inf. Swen Habenberger 2. Februar 2009."—  Präsentation transkript:

1 Programmierung NGW100 Dipl.-Inf. Swen Habenberger 2. Februar 2009

2 Dipl.-Inf. Swen Habenberger - Microkontroller Überblick Projektentwicklung Basics Kommunikation mit NGW100 Konfiguration NGW100 Linux Wiederholung Hello World auf NGW100

3 Dipl.-Inf. Swen Habenberger - Microkontroller Gemeinsames Projekt bis Ende der Vorlesungszeit Steuerung eines Motors / mehrerer Motoren über TCP/IP Inklusive Fehlerprotokollierung auf SD- Karte Und Fernabfrage wie Web-Interface Als Linuxanwendung

4 Dipl.-Inf. Swen Habenberger - Microkontroller Projekt Milestones 1. Hello World auf dem NGW100 als Linuxanwendung 2. Kommunikation von PC mit NGW100 über TCP/IP 3. Fehlerprotokollierung 4. Fernabfrage 5. Motorenbeschaffung 6. Ansteuern der Motoren

5 Dipl.-Inf. Swen Habenberger - Microkontroller Kommunikation mit NGW Arten der Kommunikation mit NGW100 TCP/IP Serielle Schnittstelle 3 Arten der Datenübermittlung TCP/IP SD-Karte JTAG-Interface

6 Dipl.-Inf. Swen Habenberger - Microkontroller Kommunikation mit NGW100 Die Kommunikation über die Serielle Schnittstelle ist gegenüber Kommunikation mit TCP/IP bevorzugt Es kann bereits im Boot-Prozess mit U-Boot interagiert werden. IP-Konfiguration erfolgt erst später

7 Dipl.-Inf. Swen Habenberger - Microkontroller Kommunikation über TCP/IP Telnet FTP Tftp RCP SSH Scp, sftp HTTP https

8 Dipl.-Inf. Swen Habenberger - Microkontroller Telnet Übertragung ist unverschlüsselt Nur bedingt im Produktivsystem einsetzbar Für Entwicklunsgumgebungen einfach, da nur geringer Overhead Ist bei Windows und Linux-Betriebssystem standardmässig vorinstalliert Virtuelle Konsole auf dem Zielrechner Keine Dateiübertragung zum Zielrechner

9 Dipl.-Inf. Swen Habenberger - Microkontroller FTP Ermöglicht die Übertragung von Dateien zwischen 2 PC Unverschlüsselt, aber User/Passwort Kombination erforderlich Manchmal reicht anonymous-Zugang Auf NGW100: ProFTP

10 Dipl.-Inf. Swen Habenberger - Microkontroller TFTP: Trivial FTP: UDP anstelle von TCP Keine Verzeichnisanzeige Keine Authentifizierung und Verschlüsselung

11 Dipl.-Inf. Swen Habenberger - Microkontroller Remote Copie RCP kopiert Dateien über ein Netzwerk Einfacher als FTP Keine eigenen Befehle Reine Kopierfunktion Baut auf der Remote Shell auf Unsicher da nicht verschlüsselt

12 Dipl.-Inf. Swen Habenberger - Microkontroller Secure Shell (SSH) SecureShell übermittelt die Daten verschlüsselt Sichervariante von ftp: sftp rcp: scp telnet: ssh Auf NGW100: Dropbear Unter Windows: putty

13 Dipl.-Inf. Swen Habenberger - Microkontroller Dienstkonfiguration Alle diese Dienste haben eine Konfigurationsdatei /etc/ Alle diese Dienste haben ein Start und Stop-Skript /etc/init.d Dienst nicht starten: Datei mit S am Anfang umbennen

14 Dipl.-Inf. Swen Habenberger - Microkontroller Konfiguration IP-Adresse Die IP-Adress lässt sich unter /etc/network/interfaces konfigurieren Die Netzwerknamen lassen sich unter /etc/host* einstellen

15 Dipl.-Inf. Swen Habenberger - Microkontroller Busybox Enthält die wichtigsten Programme der GNU-fileutils und GNU-shellutils in einer abgespeckten Version Besteht aus einem Kernel, ein paar Einstellungen in etc und ein Paar Devices in /dev

16 Dipl.-Inf. Swen Habenberger - Microkontroller Wichtiges Hilfsprogramm VI: Der Texteditor :w schreiben :q verlassen A anfügen I einfügen ESC aktuellen Modus abbrechen X Zeichen löschen DD Zeilen löschen

17 Dipl.-Inf. Swen Habenberger - Microkontroller Wichtige Befehle ls / ls –l Ps Top Rm / rmdir /mkdir Cp / mv Cat Tail echo

18 Dipl.-Inf. Swen Habenberger - Microkontroller Weitere wichtige Dinge Shellskripte Ersparen Zeit bei häufigeren aufrufen der selben Befehle Ermöglichen das Starten/Stoppen von diensten Makefiles Erleichtern das Übersetzen/Installieren/Deinstallieren von Programmen beim Programmieren

19 Dipl.-Inf. Swen Habenberger - Microkontroller Kommunikation über Serielle Schnittstelle Hyperterminal MinCom Einstellungen BAUD 8N1 Und dann ist man schon auf der Konsole

20 Dipl.-Inf. Swen Habenberger - Microkontroller Einbinden der SD-Karte #mount –t vfat /dev/mmcblk0p1 /media Oder als Alternative Durchreichen: #Umount /dev/mmcblk0p1 #Modprobe g_file_storage file=/dev/mmcblk0 removable=1 benutzen #Rmmod g_file_storage

21 Dipl.-Inf. Swen Habenberger - Microkontroller Fragen?

22 Dipl.-Inf. Swen Habenberger - Microkontroller Programmieren Für eine Linuxanwendung muss als Ausgangssystem ein Linux vorhanden sein Cygwin würde theoretisch genügen, aber in der Praxis funktioniert es nicht Vmware-Image von Atmel benutzen (Ubuntu) mit avr32 als Benutzername und Passwort Linux installieren Eigenes Image-erstellen

23 Dipl.-Inf. Swen Habenberger - Microkontroller AVR32Studio Nettes Tool zum entwickeln der Software Baut auf Eclipse auf Benötigt Java zum laufen Benötigt AVR-GNU-Toolchain

24 Dipl.-Inf. Swen Habenberger - Microkontroller KDevelop u.ä. Als Alternative bietet sich noch KDevelop oder ähnliches an Hängt von der Umgebung ab. Meist ist es sinnvoll, sich seine eigenen Makefiles zu basteln und diese in ein Shellskript zu integrieren

25 Dipl.-Inf. Swen Habenberger - Microkontroller Hello World #include int main(int argc, char** argv){ fprintf(stdin, Hallo Welt\n); return 0; }

26 Dipl.-Inf. Swen Habenberger - Microkontroller Compiler Avr32-linux-gcc für Linuxanwendungen AVR32-gcc für Standaloneanwendungen #Avr32-linux-gcc –o HalloWelt.exe hallowelt.c

27 Dipl.-Inf. Swen Habenberger - Microkontroller Programmtest Kopieren auf SD-Karte Ausführen

28 Dipl.-Inf. Swen Habenberger - Microkontroller Warum fprintf und nicht printf? Stdin, stderr und stdout sind die Standardausgaben Printf(text); arbeitet intern wie fprintf(stdout, text); Eingabeumlenkung in Datei zu Protokollzwecken


Herunterladen ppt "Programmierung NGW100 Dipl.-Inf. Swen Habenberger 2. Februar 2009."

Ähnliche Präsentationen


Google-Anzeigen