26
Eclipse für die kleinen Dinge des (modernen) Lebens

Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge

des (modernen) Lebens

Page 2: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Agenda

• Vorstellung

• Zielsysteme

• Software

• Modellierung

• Übertragung zum Gerät

Page 3: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Vorstellung

www.mda4e.org

Page 4: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Projektpartner mda4e

• itemis GmbH & Co. KGSpezialist für MDSD Beratung

• FH Dortmund, FB Informations- und ElektrotechnikProf. Dr. Burkhard Igel

• Ingenieurbüro Dr. KahlertHersteller für Entwicklungswerkzeuge für eingebettete Systeme

Page 5: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Agenda

• Vorstellung

• Zielsysteme• AVR Butterfly• D071• STK500• Minimalsysteme

• Software

• Modellierung

• Übertragung zum Gerät

Page 6: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Worum es nicht geht

Page 7: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

AVR Butterfly• Prozessor: ATMega169

• 16 kB FLASH-ROM

• 512 Byte RAM

• LCD, Lichtsensor, Temp.-

Sensor, Joystick, Pieper,

RS232

Page 8: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Display 3000 D071

• Prozessor: ATMega128

• 128 kB FLASH-ROM

• 4kB RAM

• 2,1'' TFT-Farbdisplay

• Taster

• herausgeführte I/O-Leitungen

• 2x RS-232

• Optional: CAN-Bus

Page 9: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

STK 500

• Evaluationsboard

für AVR-

Mikrocontroller

Page 10: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Minimalsysteme• 1 kB FLASH-ROM• kein RAM (außer 32 Bytes Register)• 8 Anschlüsse, max. 6 Pins I/O

Page 11: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Agenda

• Vorstellung

• Zielsysteme

• Software

• Modellierung

• Übertragung zum Gerät

Page 12: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Software: Compiler und Zusatztools

• AVR-GCC Crosscompiler / Assembler

• AVR-LIBC: optimierte Libraries

• diverse Tools für Binärformat

• Simulavr – Simulator

• avr-gdb – Debugger

• AVRDude zum flashen

• Ferner: Echtzeit-Multitaskingbetriebssysteme (z.B. FreeRTOS, AvrX)

Page 13: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

• CDT

• AVRDude

Page 14: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

AVRDude

• Programmierung der

Controller über den AVR-

Button

• Einstellung der

Parameter über

Preferences

Page 15: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Agenda

• Vorstellung

• Zielsysteme

• Software

• Modellierung

• Übertragung zum Gerät

Page 16: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Beispiel: Blockschaltsysteme (“Boris”)

Quelle: WinFACT/BORIS

Page 17: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Statemachine mit TopCaseD-UML-Editor

• •

Page 18: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Generierung von Java und C mit oAW

Page 19: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Simulation (Java)

Page 20: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Agenda

• Vorstellung

• Zielsysteme

• Software

• Modellierung

• Übertragung zum Gerät• Simulation

Page 21: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

AVR Studio mit Display-Simulation

Page 22: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Debugging unter Eclipse CDT / gdb

Page 23: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Übertragung zum Gerät

Verschiedene Möglichkeiten:

• ISP (In-System-Programmierung)

• Parallele Programmierung / High-Voltage

• JTAG (In-System-Programmierung, Debugging)

• Bootloader über beliebige Schnittstellen (seriell, parallel, USB,

Netzwerk, CAN, Infrarot, ...)

Page 24: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Bootloader

Vorteil Bootloader:

• Software-Update liegt in der Hand des Programmierers

• Kein Programmiergerät notwendig

• “gefährliche” Änderungen (Fuses, Lock Bits) können unterbunden

werden

• Updates sind im Feld (beim Anwender) möglich

Page 25: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Fazit

• Eclipse bietet ein leistungsfähiges Framework auch für Embedded-

Entwicklung

• Gute Integrierbarkeit externer Anwendungen über Plugins (Beispiel:

AVRDude)

• Tools für “große” Anwendungen können auch für Mikrocontroller als

Ziel eingesetzt werden (CDT, gdb, Modellierungstools, oAW, ...)

Page 26: Eclipse für die kleinen Dinge des (modernen) Lebens · 2007-11-30 · • AVR-GCC Crosscompiler / Assembler • AVR-LIBC: optimierte Libraries • diverse Tools für Binärformat

Eclipse für die kleinen Dinge des Lebens

Copyright 2007 itemis AG Marc Habiger

Danke für Ihre Aufmerksamkeit