Herunterladen Inhalt Inhalt Diese Seite drucken

Werbung

HCS12 T-Board
Hardware Version 1.00
Benutzerhandbuch
9. Juni 2008

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für elmicro HCS12 T-Board

  • Seite 1 HCS12 T-Board Hardware Version 1.00 Benutzerhandbuch 9. Juni 2008...
  • Seite 2 Email: leipzig@elmicro.com Web: http://elmicro.com Dieses Handbuch wurde sorgfältig erstellt und geprüft. Trotzdem können Fehler und Irrtümer nicht ausgeschlossen werden. ELMICRO übernimmt keinerlei juristische Verantwortung für die uneingeschränkte Richtigkeit und Anwendbarkeit des Handbuchs und des beschriebenen Produktes. Die Eignung des Produktes für einen spezifischen Verwen- dungszweck wird nicht zugesichert.
  • Seite 3: Inhaltsverzeichnis

    Benutzerhandbuch Inhalt 1. Überblick ......... .
  • Seite 4 HCS12 T-Board 7. Anwendungshinweise .............
  • Seite 5: Überblick

    Benutzerhandbuch 1. Überblick Das HCS12 T-Board ist ein vielseitiges Evaluationboard auf Basis der 16-Bit Mikrocontrollerfamilie HCS12 von Motorola. Es erleichtert die Inbetriebnahme von HCS12 Anwendungen und ist hervorragend geeignet zur Einarbeitung in die Programmierung der HCS12 Mikro- controller. Auf dem HCS12 T-Board kommt eine leistungsstarke MCU vom Typ MC9S12DP512 zum Einsatz.
  • Seite 6: Technische Daten

    HCS12 T-Board Technische Daten w MCU MC9S12DP512 im LQFP112 Package (SMD) w HCS12 16-Bit CPU, Programmiermodell/Befehlssatz wie HC12 w 16 MHz Quarztakt, bis zu 25 MHz Bustakt über PLL w Speicher: 512KB Flash, 4KB EEPROM, 14KB RAM w 2x SCI - asynch. serielles Interface w 3x SPI - synch.
  • Seite 7: Lieferumfang

    Lieferumfang w Evaluationboard mit MC9S12DP512 w TwinPEEKs Monitorprogramm (im Flash Speicher der MCU) w RS232 Anschlußkabel (Sub-D9) w Hardwarehandbuch (dieses Dokument) w Schaltpläne w CD-ROM: enthält Assemblersoftware, verschiedene Datenblät- ter, CPU12 Reference Manual, Softwarebeispiele, C-Compiler Demoversion u.v.m. HCS12 T-Board V1.00...
  • Seite 8: Schnellstart

    Spannungsregler IC3. w Nach Anlegen der Versorgungsspannung startet das Monitor- programm und zeigt eine kurze Systemmeldung an - und erwar- tet die Anweisungen des Benutzers (die Monitorbefehle sind weiter hinten beschrieben) . Wir wünschen Ihnen viel Erfolg mit dem HCS12 T-Board!
  • Seite 9: Bestückungsplan

    Benutzerhandbuch 3. Bestückungsplan Lageplan Bestückungsseite...
  • Seite 10: Lötbrücken Auf Der Platinenrückseite

    HCS12 T-Board Lötbrücken auf der Platinenrückseite...
  • Seite 11: Jumper Und Brücken

    Benutzerhandbuch 4. Jumper und Lötbrücken Jumper Die Lage der Jumper kann dem Bestückungsplan (siehe oben) entnommen werden: JP1: PWR 1-2* Spannungsregler IC3 liefert 5V für die Baugruppe, Einspeisung an X1: 6..9V DC Spannungsregler IC3 wird umgangen, Einspeisung an X1: 5V DC (muss stabilisiert sein!) Lötbrücken Die folgenden Lötbrücken befinden sich auf der Unterseite der Platine (vergl.
  • Seite 12 HCS12 T-Board BR4: TX1E offen* Portpin TXD1 (PS3) frei verfügbar geschl. TXD1 mit RS232-Pegelwandler IC4 verbunden BR5: RX1E offen* Portpin RXD1 (PS2) frei verfügbar geschl. RXD1 mit RS232-Pegelwandler IC4 verbunden * = Standardeinstellung...
  • Seite 13: Mechanische Abmessungen

    Benutzerhandbuch 5. Mechanische Abmessungen Die folgende Tabelle gibt die mechanischen Dimensionen des HCS12 T-Boards wieder. Die Angaben dienen als Orientierung beim Entwurf von Zusatzbaugruppen (Achtung: Angaben stets an den gelie- ferten Baugruppen nachprüfen - keine Haftung für Druckfehler!). Die "südwestliche" Ecke der Platine (links/unten) bildet den Koordinatenursprung.
  • Seite 14: Schaltungsbeschreibung

    HCS12 T-Board 6. Schaltungsbeschreibung Bitte beachten Sie: Dieses Hardwarehandbuch kann nur einige spezifische Hinweise geben. Die Behandlung allgemeiner Techniken zur Programmierung des Controllers in Assembler bzw. Hochsprachen würden Umfang und Ziel dieses Handbuchs sprengen. Die meisten Antworten finden Sie beim (unerläßlichen) Studium der Datenblätter und Referenzhandbüchern der Halbleiterhersteller.
  • Seite 15: Reseterzeugung

    Benutzerhandbuch je ein 100nF-Keramikkondensator (C17, C18, C13), dem zusätzlich ein 10µF Elektrolytkondensator parallel geschaltet wird (C15, C16, C14). Besonderes Augenmerk muß auf die Entkopplung des VDDA-Pfades gelegt werden, da der interne Spannungsregler aus dieser Spannung seinen Referenzwert (VDDA/2) ableitet. Die interne 2,5-Volt-Corespannung wird an mehreren Stellen nach außen geführt, um sie dort ebenfalls entkoppeln zu können.
  • Seite 16: Takterzeugung Und Pll

    Ground. Der Hauptvorteil dieser Oszillatorschaltung ist eine sehr geringe Leistungsaufnahme, dafür ist die Komponentenwahl um einiges kritischer. Der HCS12 T-Board verwendet einen Automotive-Quartz von NDK, mit zwei Lastkapazitäten von lediglich 3,9pF. Darüber hinaus wurde beim Design besonders auf die Minimierung von...
  • Seite 17 Benutzerhandbuch parasitären Kapazitäten geachtet, die sich nachteilig auf die Signale EXTAL und XTAL auswirken könnten. Mit einem OSCCLK von 16 MHz ergibt sich ein Default-Bustakt (ECLK) von 8 MHz. Zur Erreichung höherer Taktfrequenzen bedient man sich der PLL-Schaltung des HCS12. Der MC9S12DP512 kann intern mit bis zu 25MHz Bustakt arbeiten, wobei die meisten Designs eine Frequenz von 24MHz nutzen, denn dies möglicht eine besonders flexible Festlegung der SCI-Baudraten.
  • Seite 18: Alternativ Zur Takterzeugung Mit Q1 Kann Über Den Extal-Pin

    //============================================================================= Alternativ zur Takterzeugung mit Q1 kann über den EXTAL-Pin des MC9S12DP512 ein externer Takt eingespeist werden. Hierzu kann auf dem HCS12 T-Board optional ein Oszillatorbaustein nachgerüstet werden (IC6 und die umgebenden Komponenten sind im Lieferzustand nicht bestückt). Zur Aktivierung dieser Variante muß zunächst die Brücke BR3 geschlossen werden (Nullohmwiderstand in 1206-Bauform auf der Platinenunterseite).
  • Seite 19: Betriebsarten, Bdm-Unterstützung

    Der MC9S12DP512 verfügt über zwei integrierte Analog/Digital- Wandler Module mit einer Auflösung von max. 10 Bit. Beide Module (ATD0, ATD1) haben jeweils acht gemultiplexte Eingänge. Die Referenzspannung VRH legt die obere Grenze der Eingangs- spannung aller A/D-Kanäle fest, sie ist auf dem HCS12 T-Board ab...
  • Seite 20 HCS12 T-Board Werk über BR1 mit VDDA (5V) verbunden. Durch Öffnen der Lötbrücke BR1 ist es möglich, über H3/28 eine externe Referenzspan- nung einzuspeisen. VRH darf jedoch unter keinen Umständen VDDA übersteigen. Das folgende Beispielprogramm zeigt die Initialisierungssequenz für das A/D-Wandler Modul ATD0 und eine Routine zum Erfassen des Spannungswertes eines einzelnen Eingangskanals.
  • Seite 21: Integriertes Eeprom

    Das folgende Beispiel beläßt den EEPROM auf der Defaultposi- tion, in der Initialisierungsroutine wird lediglich der EEPROM Clock Devider entsprechend der Quarzfrequenz des HCS12 T-Board einge- stellt. Die Schreibfunktion wrSectEETS() kopiert zwei Worte (4 Byte) von einer beliebigen Quelladresse src auf eine EEPROM-Adresse dest, letztere muß...
  • Seite 22 HCS12 T-Board //============================================================================= // File: S12_EETS.C - V1.00 //============================================================================= //-- Includes ----------------------------------------------------------------- #include "datatypes.h" #include <mc9s12dp512.h> #include "s12_eets.h" //-- Code --------------------------------------------------------------------- void initEETS(void) { ECLKDIV = EETS_ECLKDIV; // set EEPROM Clock Divider Register //----------------------------------------------------------------------------- INT8 wrSectEETS(UINT16 *dest, UINT16 *src) { // check addr: must be aligned 32 bit if((UINT16)dest &...
  • Seite 23: Indikator-Leds

    Benutzerhandbuch Indikator-LEDs Die LED-Zeile D4 besteht aus zehn Einzel-LEDs. Die ersten 8 LEDs werden über PB[0..7] des Mikrocontrollers angesteuert. Die neunte LED leuchtet, wenn der Kontakt TP1 auf der Platine mit Masse verbunden wird (man verfügt somit über einen einfachen Pegelprüfer). Die zehnte LED leuchtet stets, sobald die Betriebsspannung eingeschal- tet wird.
  • Seite 24: Akustischer Signalgeber

    HCS12 T-Board Akustischer Signalgeber Der Signalgeber SP1 wird von der MCU über den Portpin PT2 angesteuert. PT2 ist mit einem der acht Timerkanäle der MCU verbun- den. Dies ermöglicht die Frequenzerzeugung mit Hilfe der Output-Com- pare Funktion des Timersystems. Das folgende Beispielmodul demonstriert anhand weniger Zeilen,...
  • Seite 25: Eingabeelemente

    (RXDx, TXDx). Handshakeleitungen sind nicht Bestandteil der SCI-Module des Controllers, sie sind durch Einbeziehung zusätzlicher I/O-Ports zu realisieren. SCI0 dient auf dem HCS12 T-Board als RS232-Interface. Die Portsignale PS2 (=RXD1) und PS3 (=TXD1) lassen sich bei Bedarf als Handshakesignale für SCI0 einbeziehen, vorausgesetzt SCI1 wird nicht...
  • Seite 26: Das Codebeispiel Zeigt Die Ansteuerung Von Sci0 Mittels Polling

    (ohne Pegelwandler) zur Verfügung, um externe IF-Module anzusteuern. IF-Module sind anschlußkompatible, serielle Interfacemo- dule, die für verschiedene physikalische Schnittstellenvarianten zur Verfügung stehen, z.B. RS232, RS485, Strombauchinterface oder LIN. Der Anschluß von IF-Modulen an das HCS12 T-Board (X3) erfolgt über ein 10-poliges Flachbandkabel.
  • Seite 27: Dem Sci1-Modul Sind Als Handshakeleitungen Die Controllersi

    Leitungen MISO, MOSI, SCK und /SS, das sind die MCU-Portleitungen PS4 bis PS7. Sie werden in der Schaltung des HCS12 T-Board selbst nicht benutzt, diese Signale werden lediglich an die seitlichen Stiftleisten geführt. Das folgende Listing zeigt die Basisfunktionen (Initialisierung, 8-Bit Datentransfer) für den SPI-Port SPI0:...
  • Seite 28: Iic-Bus

    Emulation durch Software erübrigt sich somit. Soll das IIC-Businterface genutzt werden, sind an den beiden Bussignalen (SDA, SCL) Pull-Up Widerstände vorzusehen (auf dem HCS12 T-Board nicht vorhanden). Das folgende Listing zeigt eine vereinfachte Master-Mode Imple- mentierung, welche auf die Nutzung von Interrupts verzichtet: //============================================================================= // File: S12_IIC.C - V1.00...
  • Seite 29 Benutzerhandbuch // Func: Issue IIC Restart Condition // Args: - // Retn: - void restartIIC(void) { IBCR |= BM_RSTA; // issue RESTART condition //----------------------------------------------------------------------------- // Func: Issue IIC Stop Condition // Args: - // Retn: - void stopIIC(void) { IBCR = BM_IBEN; // back to slave mode (issue STOP cond.) //----------------------------------------------------------------------------- // Func: Transmit byte via IIC...
  • Seite 30: Can-Interface

    CAN-Interface Chip (IC5), welcher das physische Businter- face bildet. Die CAN-Bussignale CANH und CANL stehen an X4 zur Verfügung. Wenn das HCS12 T-Board der letzte Knoten am CAN-Bus ist, wird eine Terminierung erforderlich. Sie kann durch Verbinden der Kontakte X4/1 und X4/2 aktiviert werden.
  • Seite 31 Benutzerhandbuch // we are going to use four 16-bit acceptance filters: CAN0IDAC = 0x10; // set up acceptance filter and mask register #1: // ------------------------------------------------------------------ // ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 | ID2 ID1 ID0 RTR IDE xxx xxx xxx // ------------------------------------------------------------------ // we are going to detect data frames with standard identifier (11 bits) // only, so bits RTR (bit4) and IDE (bit3) have to be clear...
  • Seite 32: Anwendungshinweise

    (weitere Erläuterungen: siehe Monitorbeschreibung). Startup-Code Jede Controllerfirmware beginnt mit einer Reihe von Anweisungen zur Initialisierung der Hardware. Im Fall des HCS12 T-Board beschrän- ken sich die unbedingt notwendigen Initialisierungen auf das Setzen des Stackpointers. Die Abschaltung (bzw. ggf. die geeignete Initialisierung) des Watchdogs war bei früheren HC12-Derivaten zwingend notwendig.
  • Seite 33: Monitorprogramm Twinpeeks

    Benutzerhandbuch 8. Monitorprogramm TwinPEEKs Software Version 2.3 Serielle Kommunikation TwinPEEKs kommuniziert über die erste RS232 Schnittstelle ("SER0", X3) mit 19200 Baud. Weitere Einstellungen: 8N1, kein Hardware- oder Softwarehandshake, kein Protokoll. Autostart Funktion Der TwinPEEKs Monitor überprüft nach Reset, ob die Port Pins PE5 (MODA) und PE6 (MODB) miteinander verbunden sind (X6B Pins 1+2).
  • Seite 34: Redirected Interrupt Vectors

    HCS12 T-Board TwinPEEKs ergänzt in dieser Situation ein $FF-Byte und kann nun das Datenwort programmieren. Setzt sich der Datenstrom in der folgenden S-Record Zeile mit dem zuvor fehlenden Byte fort, müsste der Monitor an der fraglichen Wortadresse einen erneuten Schreibzugriff vornehmen, was jedoch nicht zulässig ist.
  • Seite 35 Benutzerhandbuch Der folgende Ausschnitt aus dem Assemblerlisting des Monitorpro- gramms dokumentiert die Adressen der umgeleiteten Interruptvektoren (erste Spalte von links: ursprüngliche Vektoradresse, zweite Spalte: Adresse im RAM): FF80 : 3F43 dc.w TP_RAMTOP-189 ; reserved FF82 : 3F46 dc.w TP_RAMTOP-186 ; reserved FF84 : 3F49 dc.w TP_RAMTOP-183...
  • Seite 36: Benutzungshinweise

    HCS12 T-Board Benutzungshinweise Ein Monitorkommando besteht aus einem einzelnen Buchstaben, ggf. gefolgt von einer Liste von Argumenten. Alle Zahlenangaben erfol- gen hexadezimal ohne weitere Vor- oder Nachsätze. Groß- und Klein- schreibung ist gleichermaßen zulässig. Der für die CPU sichtbare Adreßraum umfaßt 64KB, die Adreßar- gumente sind demzufolge maximal vierstellig.
  • Seite 37 Benutzerhandbuch Edit Memory Syntax: E [addr {byte}] Speicher editieren. Nach der Startadresse addr können bis zu vier Datenytes {byte} angegeben werden (ermöglicht Word- und Double- word-Writes). Die Daten werden unmittelbar geschrieben, danach kehrt die Funktion zur Eingabeaufforderung zurück. Sind keine Daten {byte} in der Eingabezeile angegeben, wird der interaktive Modus gestartet.
  • Seite 38: System Info

    HCS12 T-Board System Info Syntax: I Zeigt die Start- und Endadressen von Registerblock, RAM, EEPROM und Flash der MCU an und gibt die Prozessorkennung (PARTID) aus. Load Syntax: L Lädt eine S-Record Datei in den Speicher. Es werden Daten-Re- cords vom Typ S1 (16-Bit MCU-Adressen) und S2 (lineare 24-Bit Adressen) verarbeitet.
  • Seite 39 Benutzerhandbuch Select PPAGE Syntax: P [page] Selektiert eine Program Page (PPAGE). Diese Page wird daraufhin im 16KB-Page-Window von $8000 bis $BFFF sichtbar. Erase Flash Syntax: X [page] Löscht die angegebene Page (16KB) des Flashspeichers. Ohne Angabe von page löscht der Befehl den gesamten Flash, abgesehen vom Monitorcode (zum Überschreiben des Monitors ist ein BDM-Tool wie ComPOD12/StarProg erforderlich).
  • Seite 40: Memory Map

    HCS12 T-Board 9. Memory Map Die Memory Map des Controllers wird von TwinPEEKs wie folgt initialisiert (Achtung - z.T. abweichend von den Reset-Defaults!): HCS12TB.DP512 Start Ende Belegung $0000 $03FF Steuerregister 1KB (von 4KB) EEPROM $0400 $07FF (die unteren 1024 Bytes sind durch die Steuerregister...
  • Seite 41: Anhang

    Benutzerhandbuch Anhang Literatur [1] Kreidl, Kupris, Thamm: Mikrocontroller-Design Hardware- und Software-Entwicklung mit dem 68HC12/HCS12; Carl Hanser Verlag; 2003 S-Record Format Das von Motorola publizierte S-Record Format ist ein Dateiformat zur Definition von Objektdateien (Maschinencode, Executables) unter Verwendung einer textuellen (ASCII-) Notation, die es erlaubt, diese Objektdateien mit jedem beliebigen Texteditor zu betrachten oder zu ändern.
  • Seite 42 HCS12 T-Board Im Feld CS ist eine Prüfsumme enthalten. Sie wird gebildet aus den Werten der Zeichenpaare der Felder LEN, ADDR und DATA. CS ist das (niederwertigste Byte des) Einerkomplement der Summe aller vorgenannten Werte. EOL schließlich steht symbolisch für den durch CR, LF ($0D, $0A) gebildeten Zeilenvorschub.
  • Seite 43: Emv Hinweise

    Benutzerhandbuch EMV Hinweise Die Baugruppe entspricht den EMV-Vorschriften. Zur Stromver- sorgung ist sie an einer Batteriespannungsquelle mit 5,0 Volt (Einhal- tung der Spannungsgrenzwerte beachten!) oder an ein Netzteil mit CE-Kennzeichnung anzuschließen. Der Einsatz einer Mikrocontroller- platine geht stets einher mit einer mehr oder minder umfangreichen Modifikation der Baugruppe (spezielle Firmware, angeschlossene Peripheriebauteile).
  • Seite 44 HCS12 T-Board...

Inhaltsverzeichnis