Vollständigen Artikel als PDF herunterladen - All
Transcrição
Vollständigen Artikel als PDF herunterladen - All
Software-Development-Kit für den Embedded-Systems-Entwickler Mit COP8.COM fit für`s Internet Noel Baisa Mit dem COP8.COM Software-Development-Kit (SDK) von National Semiconductor können Entwickler ihre Applikationen schnell und einfach internetfähig machen. Die Anbindung an das WWW verleiht diesen Anwendungen eine Reihe neuer Möglichkeiten. Die denkbaren Einsatzbereiche reichen vom Privathaushalt über kommunale oder staatliche Einrichtungen bis hin zur Industrie. E ine Anwendungsmöglickeit ist zum Beispiel die Wartung und Ferndiagnose bei Systemstörungen von Haushaltsgeräten, Produktionsmaschinen oder Geräten der Medizintechnik über das Internet. Servicetechniker können sich auf diese Weise bereits vorab über die Art und den Umfang eines eventuellen Defekts informieren und sich mit den nötigen Ersatzteilen eindecken. Kosten und Zeit für Wartungs- und Kundendienstbesuche können so auf ein Minimum reduziert werden. Des weiteren können Zählerstandsabfragen für Wasser oder Strom und Software-Updates schnell, elektronik industrie 4-2000 einfach und kostengünstig über das Internet durchgeführt werden. Nachfolgend wird die Hard- und Software vorgestellt, mit der der Entwickler seine Applikation internetfähig machen kann. Das SDK-Board Zum Ausstattungsumfang des COP8. COM-Kits gehört ein SDK-Board, das mit einem COP8SGR Mikrocontroller bestückt ist. Auf der Unterseite der Leiterplatte befinden sich Lötflächen für ei- nen optionalen 44-poligen PLCC-Sockel, in den ein Emulator-Pod eingesteckt werden kann. Darüber hinaus befinden sich auf dem Board weitere Bauelemente von National Semiconductor: LP29865.0, LM77, DS14C232 und DS485 (Bild 1). Der LP2986-5.0 ist ein MicropowerSpannungsregler mit äusserst geringem Spannungsverlust und einem Eingangsspannungsbereich von 6 bis 16 V. Die SDK-Platine nimmt etwa 10 mA auf, kurzzeitig bei voller Belastung bis zu 70 mA. Der im SOIC-8-Gehäuse gelieferte Spannungsregler ist für einen Ausgangsstrom von 200 mA ausgelegt, so dass E 59 BAUELEMENTE PROZESSOREN, CONTROLLER BAUELEMENTE PROZESSOREN, CONTROLLER heitssysteme eingesetzt werden. Mit ihm lassen sich beispielsweise das (gewaltsame) Öffnen von Computern und anderen Systemen oder von Fenstern und Türen überwachen, um eventuell sofort entsprechende Gegenmassnahmen einleiten zu können. I/O-Verfügbarkeit Bild 1: Das COP8.COM-SDK-Board ist mit einer Reihe aktiver Bauelemente bestückt, die zum Teil von National Semiconductor hergestellt werden 130 mA für individuelle Schaltungen des Anwenders verfügbar sind. Für ergänzende Schaltungen, die unempfindlich gegen Spannungsschwankungen sind (Lampen, Motoren usw.), gibt es ferner einen ungeregelten Ausgang. Bild 2: Die emPackage-Utility dient zur Identifikation der Variablen, die vom Kernel exportiert werden sollen Der LM77 ist ein digitaler Temperatursensor mit einer Auflösung von 9 bit plus Vorzeichen. Er dient z.B. der Temperaturerfassung, -kontrolle und -steuerung in internetfähigen Lüftungs-/Klima-/Heizungssystemen. Der Baustein enthält einen Temperaturfenster-Komparator, der die Umgebungstemperatur mit Grenzwerten vergleicht, die in internen Registern gespeichert sind. Verlässt die Temperatur das vorgegebene Temperaturfenster, werden die Open-DrainAusgänge TCR bzw. INT aktiviert. Diese Ausgänge sind mit den Pins L6 und L7 des Mikrocontrollers verbunden, die als Eingänge mit schwacher Pull-up-Charakteristik konfiguriert sind. Die einzel- 60 Der Controller COP8SGR ist in einem 44poligen Gehäuse untergebracht. Obwohl er mit vielen Bauelementen auf dem SDK-Board verbunden ist, stehen noch I / O-Pins für kundenspezifische Anwendungen zur Verfügung. Am Expansion-Bus und am I / O-Header (Steckverbinder mit 2 mm Pin-Raster) sind insgesamt 14 Leitungen herausgeführt. Die Microwire-Leitungen (SI, SO, SK) und der externe Interrupt (INT) gehören übrigens zu den nicht belegten Leitungen. Verfügbar sind auch die Pins RXD und TXD, wenn der Entwickler die Implementierung einer Physical-Layer-Lösung vorzieht, die von den eingebauten Lösungen des SDK-Boards abweicht. nen Pins von Port L können ebenfalls als Multi-Input Wake-Up-Pins definiert werden. Diese Option bietet sich für Entwickler an, die den COP8SGR mit einem vom LM77 festgestellten Temperatur-Ereignis aus dem Halt- oder Idle-Status holen wollen. Das COP8.COM-SDK-Board unterstützt Die Software sowohl RS-232- als auch RS-485-Kommunikation. Für die RS-232-Kommuni- Der Quellcode für das komplette interkation ist der leistungssparende RS-232- netfähige Mikrocontroller-System COP8. Treiber/Empfänger-Chip DS14C232 COM besteht aus der Applikation (bei(Versorgungsspannung 5 V) vorhanden. spielsweise für die Bereiche Heizungs-, Er enthält Ladungspumpen und Pegel- Klima- und Lüftungstechnik, Sicherheitsumsetzer-Schaltungen für die Kommu- technik oder Bewässerung), die mit nikation mit konventionellen RS-232- einem Kommunikations-Kernel koexistiert. Der Kernel bedient sich eines LNP Einheiten. Für die RS-485-Kommunikation im Voll- (Lightweight Network Protocol) auf der duplex-Modus sorgen zwei Bausteine Basis der Embedded Internet Working des Typs DS485. Die RS-485-Technik un- Technology (EMIT) von emWare zur terstützt bis zu 32 Einheiten in einer Dai- Kommunikation mit einem Gatewaysy-Chain-Konfiguration. Das SDK-Board Server. Gateways dienen in Netzwerken ist mit Abschlusswiderständen für den generell dazu, die Datenbandbreite auf Fall versehen, dass die Platine als letzte ein beherrschbares Niveau zu skalieren. Einheit in einer DaisyChain-Kette eingesetzt wird. Ein serielles EEPROM vom Typ 24LC256 mit 32 KByte Speicherkapazität und ein unipolarer Hallsensor des Typs HAL114 runden die Ausstattung des SDKBoards ab. Das serielle EEPROM dient als nichtflüchtiger Speicher für Datenerfassungs-Applikationen und wird ebenfalls als nichtflüchtiges Dateisystem verwendet. Der Hallsensor kann für Applikationen Bild 3: Die Projektdatei Hello.prj demonstriert die Miim Bereich der Sicher- nimalanforderungen von Kernel und Applikation elektronik industrie 4-2000 Im vorliegenden Fall kommuniziert das SDK-Board über eine komprimierte TCP / IPTechnik, die als emNet bezeichnet wird. An einer geeigneten Stelle wird dieses Lightweight Network Protocol auf das standardisierte TCP / IP-Format erweitert. Hierzu dient das besagte Gateway, das über ausreichende Rechenleistung verfügt. Die Packager-Utility dere EMIT-basierte Implementierungen eignen. Die Dateien app.c und app.h werden von einer Packaging-Utility generiert, mit deren Hilfe der Entwickler angibt, welche Variablen der Applikation über das Internet zugänglich sein sollen. In der Datei emsdk.c schliesslich sind die Variablen enthalten, die von der emMicro-Routine exportiert werden sollen. Der emMicro-Kernel sendet diese Variablen alle 100 ms an emGateway (Bild 4). Das Entwicklungskit wird mit der emPackage ausgeliefert. Mit ihr wird spezifiziert, wel- Bild 4: Die COP8.COM-Applikation interagiert mit diesen Vache Variablen per Internet zu- riablen, die von emMicro an emGateway exportiert werden, gänglich sein sollen. Aufgeru- um die Anbindung zu vereinfachen. Damit der emMicro-Kernel fen wird der Packager aus ordnungsgemäss arbeitet, müssen die Dateien app.c und Zusammendem Start-Menü von Windo- app.h vorhanden sein. Beide Dateien werden mit emPackage fassung ws durch [Start], [Program- generiert (siehe Bild 5) Embedded-Internet-Apme], [emWare], [emPackage]. Über eine INI-Datei wie z.B. EMSDK.INI besteht, einen Byte-String (StrHello) an plikationen können so einfach sein wie oder HELLO.INI lädt und speichert die ein Netzwerkgerät wie etwa einen Bro- das Hello-World-Programm oder nach den Vorstellungen des Entwicklers belieUtility Variablenlisten. Die Packager-Uti- wser auszugeben (Bild 3). big ausgearbeitet werden. Das SDK-Bolity generiert in dem angegebenen Verard von National Semiconductor bietet zeichnis eine Quelldatei (app.c) und eine mit seinen verschiedenen BauelemenHeader-Datei (app.h). Die Dateien app.c COP8.COM-Quellcode ten und Optionen die nötigen Vorausund app.h werden gemeinsam mit weiterem EMIT Kernel- und Applikations- Der Quellcode für das COP8 .COM-Sy- setzungen zur Entwicklung neuer oder stem ist im IAR C-Compiler geschrieben. verbesserter Applikationen, mit denen Quellcode kompiliert (Bild 2). Die Hello World-Projektdatei im em- Der CommCOP8.c Quellcode bietet Un- sich Produkte durch Schaffung einer Interstützung für die Kommuni- ternet-Anbindung intelligenter machen kation per USART bzw. lassen. Mit den geeigneten Hilfsmitteln RS232/RS485. Der emi2c.c (z.B. dem IAR C-Compiler und dem DeQuellcode stellt softwaremäs- bug-Modul Metalink SG-DM4) sowie sige I2C-Unterstützung für tra- dem COP8.COM-Reference Kit werden ditionelle und erweiterte I2C Applikationen mit geringem ZeitaufDevice-IDs zur Verfügung. Bei wand internetfähig. dem mit emMicro.c bezeichneten Quellcode handelt es Weitere Informationen über das sich um den eigentlichen Ker- COP8.COM-SDK gibt es im emStore unnel, der während der im Hinter- ter www.emstore.com/national/national. grund laufenden Operationen html. aufgerufen werden muss. Der Das COP8.COM-Reference-ApplicationemSerial.c Quellcode verarbei- Kit kann im Online-Store von National tet das Lightweight Network Semiconductor unter store.national. Protocol. Um generell arbeiten com/natsemi/cop8refcom1.html. bezu können, benötigt der Kernel stellt werden. nicht unbedingt alle bisher beschriebenen Quellcodes. Für Literatur eine Basis-Implementierung National Semiconductor COP8.COM Refebeispielsweise sind nur die rence Board Manual,COP8.COM CD,1999. National Semiconductor emMicro-Quelldateien Comm- EmMicro COP8.c, emMicro.c und emSe- COP8SGR Developer's Guide, COP8.COM Bild 5: Durch Öffnen der Datei emSDK. ini mit rial.c. erforderlich. Sie reichen CD,1999. emPackage wird angezeigt, welche Variablen aus, um einen Zugang über das in emsdk.c über das Netzwerk zugänglich sein Internet zu realisieren. werden Der mit sdkcop8.c bezeichnete 480 N A T I O N A L S E M I C O N D U C T O R Quellcode ist für Details der Micro-Verzeichnis stellt die grundle- Demo-Applikation zuständig, die spezigendste Art der Geräteanbindung dar. ell auf den COP8-Mikrocontroller zuge- Noel Baisa ist Senior Applications EnAnspruchsvollere Applikationen lassen schnitten sind. Dagegen bezieht sich gineer in der Analog Products Group bei sich auf der Basis dieser Vorlage ent- der Quellcode emsdk.c auf Details der National Semiconductor, Santa Clara, USA wickeln, deren einzige Funktion darin Demo-Applikation, die sich auch für an- (e-Mail: [email protected]) elektronik industrie 4-2000 61 BAUELEMENTE PROZESSOREN, CONTROLLER