Bsp1_TA - Udo Matthias Munz

Transcrição

Bsp1_TA - Udo Matthias Munz
Entwicklung eines neuen Microcontrollerboards
für den Unterricht an der Elektronikschule
Hubert Weber
Technikerarbeit
Hubert Weber
Seite 1 von 77
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit 2005/06
Automatisierungstechnik / Mechatronik
Thema der Technikerarbeit
Entwicklung eines neuen Microcontrollerboards
für den Unterricht an der Elektronikschule
Verfasser:
Hubert Weber
Betreuer:
Gunthard Kraus,
Oberstudienrat an der
Elektronikschule Tettnang
Elektronikschule • Oberhofer Straße 25 • 88069
Tettnang
Technikerarbeit
Hubert Weber
Seite 2 von 77
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit 2005/06
Datum
Technikerarbeit
Hubert Weber
Unterschrift
Seite 3 von 77
ELEKTRONIKSCHULE TETTNANG
Ich versichere, dass die Technikerarbeit von mir selbstständig
angefertigt und nur die angegebenen Hilfsmittel benutzt wurden.
Alle Stellen, die dem Wortlaut oder dem Sinne nach anderen
Werken entnommen sind, habe ich durch Angabe der Quellen
kenntlich gemacht.
Danke allen, die mich bei der Durchführung meiner Technikerarbeit unterstützt haben:
Durch ihr Verständnis, durch aufmunternde Worte oder fachliche Ratschläge.
Besonderen Dank gilt dem Betreuer meiner Technikerarbeit, Herr Gunthard Kraus,
der mich mit seiner Begeisterung für das Thema Microcontroller angesteckt hat und
Herr Martin Merkel, der mir ganz selbstverständlich die benötigten Platinen in
hervorragender Qualität geätzt hat. Und zu guter letzt meinen netten Nachbarn, die
mich mit Eis, Kaffee und kühlen Getränken bei Laune gehalten haben.
Technikerarbeit
Hubert Weber
Seite 4 von 77
ELEKTRONIKSCHULE TETTNANG
Danksagung
Inhaltsverzeichnis
Projektentwicklung
1.1
Ausgangslage
1.1.1
1.1.2
1.1.3
1.1.4
1.1.5
1.1.6
1.1.7
1.1.8
1.1.9
1.1.10
1.1.11
1.1.12
1.1.13
1.1.14
1.1.15
1.1.16
1.1.17
1.1.18
Thema der Technikerarbeit
Meine Vorerfahrungen
Meine Motivation
Gliederung der Technikerarbeit
Auftraggeber der Technikerarbeit
Aufgabenstellung und die Betreuung des Projekts
Vorstellung Auftraggeber
Zweck des Microcontrollerboards
Anwendung im Unterricht
Ideale Vorraussetzungen für den Unterricht
Aufgabenstellung Herr Kraus
Ergänzende mündliche Vereinbarungen
Eigene Vorstellungen
Besonderheiten im Schulbetrieb
Beschreibung des alten Boards
Beschreibung der Zusatzplatinen
Beschreibung der Keil Entwicklungsumgebung
Entwicklungen bei den Mikrocontrollern in den letzten 15 Jahren
1.2
Entwicklung
1.2.1 Auswahl des Controllertyps
1.2.2 Vorschlag Atmel-Controller
1.2.3 Vorschlag Renesas-Controller
1.2.4 Entscheidung
1.2.5 Grobstruktur der Lösung
1.2.6 Entwicklung der Platine
1.2.7 Inbetriebnahme
1.2.8 Erfahrungen im Umgang mit dem Controller
und der Entwicklungsumgebung
1.2.9 Anfängerproblem
1.2.10 Erfahrungen
1.2.11 Zeitlicher Ablauf
1.2.12 Entstandene Kosten
Technikerarbeit
Hubert Weber
Seite 5 von 77
8
8
8
8
9
9
9
9
11
11
11
12
12
13
14
14
15
17
19
19
20
21
21
22
23
23
24
ELEKTRONIKSCHULE TETTNANG
1
Fertigungsunterlagen
2.1
Fertigungsunterlagen Alternativcarrier
2.1.1
2.1.2
2.1.3
2.1.4
2.2.
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
2.2.8
2.2.9
2.2.10
2.2.11
2.2.12
Beschreibung Alternativcarrier
Bestückungsplan Altenativcarrier
Schaltplan Alternativcarrier
Stückliste Alternativcarrier
Fertigungsunterlagen Microcontrollerboard
Konzept
Spannungsversorgung:
Kurzschlussschutz:
Funktionsgruppen der Schaltung
Bestückung
Schaltplan
Funktionsbeschreibung der Schaltung
Bestückungsplan
Bohrplan
Stückliste
Aufbau
Inbetriebnahme
3
Anleitung zum Arbeiten mit dem R8C/13
Microcontrollerboard
26
27
28
29
30
31
32
32
33
33
35
36
39
40
41
43
43
3.1 Übertragen des Programms vom PC (Host) in den FlashSpeicher des Microcontrollers (Target)
49
3.2
Anleitung für das Renesas-Mikrocontrollerboard
3.2.1
3.2.2
3.2.3
3.2.4
3.2.5
3.2.6
3.2.7
3.2.8
3.2.9
3.2.10
3.2.11
3.2.12
3.2.13
Vorstellung des ELEKTOR- Projekts
Komponenten, die man zum Arbeiten benötigt
Installationsreihenfolge
Vorstellung des R8C/13 Microcontrollerboards
Vorstellung des Renesas-Controllers
Blockschaltbild
Leistungsdaten
Speicheraufteilung
Ein-Ausgangsports
Taktgenerator
Erstellen eigener Projekte
Inhalte der CD-Technikerarbeit
Quellenangaben
Technikerarbeit
Hubert Weber
Seite 6 von 77
58
58
60
62
63
64
65
66
66
69
70
76
77
ELEKTRONIKSCHULE TETTNANG
2
Projektentwicklung
Entwicklung eines neuen
Microcontrollerboards für den
Unterricht an der Elektronikschule
Tettnang
Technikerarbeit
Hubert Weber
Seite 7 von 77
ELEKTRONIKSCHULE TETTNANG
1
1.1 Ausgangslage
Thema der Technikerarbeit
Entwicklung eines neuen Mikrocontrollerboards für den Unterricht an der
Elektronikschule Tettnang.
1.1.2
Meine Vorerfahrungen
Als Industrieelektroniker war ich einige Jahre in der Entwicklung einer
mittelständischen Firma beschäftigt, die Steuerungen für Haushaltsgeräte entwickelt
und gefertigt hat. In dieser Zeit (1992-1995) haben Mikrocontroller nach und nach die
Aufgaben von analogen Schaltungskreisen und mechanischen Schaltwerken
übernommen. Mein Aufgabengebiet war damals Aufbau und Messungen der
externen Beschaltungen von mikrocontrollerbasierten Steuerungen. Ich konnte mir in
dieser Zeit einige Erfahrungen im Bereich Hardwareentwicklung aneignen. In dem
Bereich Softwareentwicklung und Programmierung hatte ich zu diesem Zeitpunkt
noch keinen Zugang, da dies zu meiner Ausbildungszeit noch keine allzu große Rolle
gespielt hat. Programmierkenntisse in C habe ich mir in den letzten beiden Jahren bei
der Weiterbildung zum staatlich geprüften Techniker angeeignet.
1.1.3
Meine Motivation
Als Elektroniker habe ich für mich den Anspruch, selbst elektronische Steuerungen
entwickeln zu können. Ich kann mir auch sehr gut vorstellen, als Techniker im Bereich
Hardwareentwicklung zu arbeiten. Es gibt heute kaum noch elektronische
Schaltungen in denen kein Mikrocontroller eingesetzt wird. Die Erfahrungen im
Bereich Hardwaredesign mit Mikrocontrollern und entsprechender Programmierung
bieten mir sowohl beruflich als auch privat viele Möglichkeiten.
1.1.4
Gliederung der Technikerarbeit
Der Inhalt dieser Technikerarbeit besteht aus drei wesentlichen Teilen:
•
Beschreibung der Projektentwicklung
•
Bereitstellung der erforderlichen Informationen zum Nachbau des
Mikrocontrollerboards
•
Anleitung zum Arbeiten mit dem Mikrocontrollerboard
Ich habe versucht, diese drei Teile inhaltlich zu trennen, damit sowohl die
Fertigungsunterlagen als auch die Anleitung zum Arbeiten mit dem Board separat
ausgedruckt, bzw. für den Unterricht oder für Projektarbeit verwendet werden können.
Technikerarbeit
Hubert Weber
Seite 8 von 77
ELEKTRONIKSCHULE TETTNANG
1.1.1
1.1.5
Auftraggeber der Technikerarbeit
Tel: 07542/9372-0
Fax: 07542/9372-40
E-Mail: [email protected]
1.1.6
Aufgabenstellung und die Betreuung des Projekts :
Herr Gunthard Kraus
Oberstudienrat an der Elektronikschule Tettnang
1.1.7
Vorstellung Auftraggeber
Die Elektronikschule Tettnang ist eine öffentliche berufliche Schule.
Die Schule bietet folgende Aus- und Weiterbildungsmöglichkeiten an:
Berufsfachschule:
Elektrotechnik, Informationselektronik
Berufsschule:
Informationselektronik, Kommunikationselektronik, Prozeßleitelektronik
IT-System-Elektroniker/in, IT-System-Kaufmann/frau, Fachinformatiker/in
Informatikkaufmann/frau
Berufskolleg 1 jährig:
Technik und Medien, Technische Kommunikation
Berufskolleg 2 jährig:
Elektrotechnik / Automatisierungstechnik, Informations- und Kommunikationstechnik,
Industrietechnologie
Fachschule:
Automatisierungstechnik/Mechatronik, Elektrotechnik, Informationstechnik
1.1.8
Zweck des Microcontrollerboards
Verschiedene Klassen der Elektronikschule Tettnang müssen im Fach Informatik die
Programmierung in den Programmiersprachen C bzw. Assembler lernen. Bei der
hardwarenahen Programmierung ist es sinnvoll die Programme mit einem realen
Controller auszutesten, aber auch Kenntnisse vom Hardwareaufbau einer
mikrocontrollerbasierten Steuerung zu vermitteln.
Des weiteren könnte das Mikrocontrollerboard als Plattform für eine
Steuerungsaufgabe als Technikerarbeit verwendet werden.
Technikerarbeit
Hubert Weber
Seite 9 von 77
ELEKTRONIKSCHULE TETTNANG
Elektronikschule Tettnang
Oberhofer Straße 25
88069 Tettnang
1.1.9
Anwendung im Unterricht
1.1.10 Ideale Vorraussetzungen für den Unterricht
Idealerweise hat jeder Schüler sowohl eine Entwicklungsumgebung und ein
Zielsystem (Microcontrollerboard) zur Verfügung. Das Übertragen des Programms in
das Zielsystem sollte ohne großen Zeitaufwand möglich sein, wenn möglich ohne
Programmieradapter.
1.1.11 Aufgabenstellung Herr Kraus
Technikerarbeit von H. Weber / FTA04:
Neues Mikrocontrollerboard für die EST
Problem:
Das in unserer Schule eingesetzte und hier auch als Bausatz erhältliche
„Compuboard 80C535“ ist in Zwischenzeit vom Konzept her 15 Jahre alt. In dieser
Zeit gab es viele Technische Weiterentwicklungen und deshalb soll ein neues Board
als Nachfolger entwickelt werden.
Folgende Anforderungen werden gestellt:
•
8 Bit-Controller mit genügend Ports, einem integrierten A-D-Wandler und
einer seriellen Schnittstelle.
•
Die Programmierung (speziell in C) sollte weiterhin mit der KEILSoftware möglich sein.
•
Der Controller sollte ein Flash -EPROM enthalten, das über eine
passende Schnittstelle vom PC aus mit dem aktuellen Programm
geladen werden kann
•
Das Board sollte wieder preisgünstig zu fertigen sein und vom Schüler
selber bestückt bzw. repariert werden können. Falls für den Controller
eine SMD -Version eingesetzt wird, sollte er auf eine getrennte kleine
Leiterplatte ( z.B. mit einer IC-Fassung als Steckverbinder ) aufgelötet
sein. So kann er im Schadensfall ausgetauscht werden, ohne gleich die
komplette Platine wegwerfen zu müssen.
Technikerarbeit
Hubert Weber
Seite 10 von 77
ELEKTRONIKSCHULE TETTNANG
Der Unterricht besteht in der Regel aus einem Theorieteil in dem einzelne Funktionen
erklärt werden und einem Praxisteil in dem die Programme erstellt werden und in den
Controller geladen werden. Am Controller kann dann die Funktion getestet werden
und gegebenenfalls Messungen mit dem Multimeter bzw. dem Oszilloskop gemacht
werden. Oft werden die Programme dann noch erweitert und abgeändert, um die
verschiedenen Möglichkeiten der einzelnen Funktionen genauer kennen zu lernen. Im
Verlauf einer Unterrichtsstunde werden somit oft 5-10 verschiedene
Programmvarianten getestet.
Umfang der Arbeit:
Auswahl des passenden Controllers
•
Entwicklung der Schaltung und einer lauffähigen Musterplatine
•
Entwurf der passenden Platinenkonfiguration zum leichten Wechsel des
Controllers und zur einfachen Flash-Möglichkeit. ( siehe Oben)
•
Erstellung der Unterlagen für die Serienfertigung der Platine (Schaltbild,
Layout, Lageplan, Stückliste…)
•
Erstellen einer Anleitung zum Umgang mit dem Controller.
1.1.12 Ergänzende mündliche Vereinbarungen
•
Platine sollte die gleichen Abmessungen haben wie das alte
Compuboard (113mm x 69mm)
•
Board soll Pinkompatibel zu den bereits bestehenden Zusatzplatinen
Sein
•
Wenn möglich keine Jumper verwenden ( gehen gerne verloren)
1.1.13 Eigene Vorstellungen
Wenn möglich sollte die Platine einseitig sein, damit sie auch in der Schule geätzt
werden kann. Dies reduziert die Entwicklungs- und die Herstellungskosten enorm.
Viele Desktops und Notebooks haben keine RS232-Schnittstelle mehr. Das Board
sollte auch über einen USB- Anschluss geflasht werden können.
1.1.14 Besonderheiten im Schulbetrieb
Programmieradapter
Um allen Schülern ein effizientes Arbeiten zu ermöglichen ist es notwendig, dass
ausreichend Mikrocontrollerboards zur Verfügung stehen und die Programme auch
dann in den Controller geladen werden können, wenn die Programmerstellung
abgeschlossen wurde. Oftmals ist es notwendig ein Programm mehrmals zu
verändern bis es die gewünschte Funktion zeigt.
Bei viele Mikrocontrollerfamilien sind spezielle Programmieradapter erforderlich, die
das übertragen des Programms vom PC in den Speicher des Controllers erst möglich
machen. Im industriellen Entwicklungsbereich stellt dies kein so großes Problem dar,
da die Kosten für ein Programmieradapter gemessen an den sonstigen Kosten nicht
ins Gewicht fallen. Die Frage des Programmieradapters ist daher für die Industrie kein
Auswahlkriterium für einen Mikrocontroller. Für den Schulalltag ist es aber sehr wohl
ein Auswahlkriterium, da ein kompletter Satz an entsprechenden
Technikerarbeit
Hubert Weber
Seite 11 von 77
ELEKTRONIKSCHULE TETTNANG
•
Programmieradaptern zur Verfügung gestellt werden müsste bzw. die entsprechende
Hardware mit auf dem Board integriert werden müsste.
Im industriellen Umfeld steht dem Entwickler in der Regel Support durch den
Halbleiterhersteller oder durch eine Vertriebsfirma zur Verfügung, mit denen spezielle
technische Probleme geklärt werden können. Im schulischen Umfeld steht dieser
Support nicht oder nur sehr eingeschränkt zur Verfügung, da nicht der entsprechende
Absatz zu erwarten ist. Es ist deshalb empfehlenswert, einen Controller auszuwählen,
der eine entsprechend große Fangemeinde hat, so dass man sich in den
entsprechenden Internetforen Unterstützung und Ratschläge oder auch
Programmbeispiele holen kann. Dies ist vor allem auch eine sehr große Hilfe für
diejenigen, die mit englischen Datenblättern nicht zurechtkommen bzw. so
grundsätzliche Fragen haben, die in diesen Datenblättern gar nicht beantwortet
werden. Für die Schule ist es sicher auch wünschenswert, dass diejenigen, die
besonderen Spaß an dem Thema Mikrocontrollerprogrammierung haben, dies
zuhause weiterverfolgen können und sich die entsprechenden Informationen aus den
Foren selber holen.
1.1.15 Beschreibung des alten Boards
Das alte Mikrocontrollerboard der Elektronikschule besteht aus dem Mikrocontroller
80C535 der Firma Infineon, einem externen EPROM und einem externen RAM. Es
besitzt außerdem eine RS232 Schnittstelle mit einem Max232 Schnittstellenwandler
über die das Programm direkt von der RS232- Schnittstelle vom Hostrechner aus in
den Speicher des Controllerboards geladen werden kann.
Der verwendete Controller hat einen 8051 Kern. Der 8 Bit Datenbus hat 8 Bit, der
Adressbus 16 Bit Breite. Port 1, 5 und 4 sind als 8 Bit Ports voll verfügbar, bei Port 3
stehen nur 4 Bits zur freien Verfügung. Der Controller verfügt außerdem über 8
Analogeingänge mit 8 Bit Wandler.
1.1.16 Beschreibung der Zusatzplatinen
Folgende Zusatzplatinen sind derzeit im Umlauf:
•
LED und Tastenplatine
•
Digital- Analog- Wandlerplatine
•
Triac -Phasenanschnitts-Steuerung
•
LCD-Display Zusatzplatine
•
Relaisplatine (neu)
Technikerarbeit
Hubert Weber
Seite 12 von 77
ELEKTRONIKSCHULE TETTNANG
Technischer Support
Gemeinsame Standards der Zusatzplatinen
Außenmasse:
113,4 mm x 69 mm
Befestigungsbohrungen:
4 x 4 mm von Ecke entfernt
Bohrungsdurchmesser:
3,5 mm
Stecker für Verbindung zu den Ports:
Pfostenwanne 2 x 5 polig
z.B. Reichelt WSL 10G
20,5 x 9 mm
2,54 mm
Abmessungen außen:
Raster der Stifte:
Steckerwanne von oben betrachtet
elektrische Daten:
Pegel:
TTL
(< 0,8 V = low, 2,0 V-5V = high)
Pinbelegung:
Pin 1:
Pin 2:
Pin 3:
Pin 4:
Pin 5:
Pin 6:
Pin 7:
Pin 8:
Pin 9:
Pin10:
+5V
Masse
Controllerport
Controllerport
Controllerport
Controllerport
Controllerport
Controllerport
Controllerport
Controllerport
x.0
x.1
x.2
x.3
x.4
x.5
x.6
x.7
1.1.17 Beschreibung der Keil Entwicklungsumgebung
Die Keil Entwicklungsumgebung ist eine in der Industrie weit verbreitete
Entwicklungsumgebung. Die in der Schule benützte Version unterstützt alle Controller
mit 8051- Kern. Das Laden des Programms in den Controller kann direkt von der
Entwicklungsumgebung aus erfolgen. Die Entwicklungsumgebung zeichnet sich
durch verlässliche Funktion und gute Bedienbarkeit aus.
Technikerarbeit
Hubert Weber
Seite 13 von 77
ELEKTRONIKSCHULE TETTNANG
mechanische Daten:
1.1.18 Entwicklungen bei den Mikrocontrollern in den letzten 15 Jahren
Vor 15 Jahren gab es noch keine Flashspeicher auf Microcontroller. Die
permanente Speicherung erfolgte entweder auf EPROMs, die über UV –
Licht löschbar waren oder über maskenprogrammierbares ROM. Zur
Programmentwicklung gab es von einigen Microcontrollern auch
Varianten mit integriertem EPROM auf der Chipfläche. Mittlerweile
besitzen viele Microcontroller integrierte Flash-Speicher in die das
Programm geladen wird. Flash– Speicher von 1 MB auf dem
Controllerchip sind nicht ungewöhnlich.
•
Die Auswahl an verschiedenen Controller – Schnittstellen hat sich stark
vergrößert. Es gibt mittlerweile Controller mit allen erdenklichen
Schnittstellen: Ethernet, CAN, USB, I2C, ISP, Jtag usw.
•
Es gibt eine Riesenauswahl an Spezial – Controllern, die für bestimmte
Aufgaben entwickelt wurden, z.B. für Tastaturen oder zur
Ansteuerung von LCD-Displays.
•
Die Controller sind viel sparsamer im Umgang mit der Energie bzw.
haben sehr komfortable Stromsparmodi.
•
Die meisten Controller sind nur noch in SMD -Version verfügbar
•
Während vor 15 Jahren Controller mit einem Datenbus mit 8 Bit schon
recht komfortabel waren, sind mittlerweile 32 Bit -Controller keine
Seltenheit mehr und in entsprechenden Stückzahlen auch schon sehr
günstig.
•
Die Anzahl der Microcontroller pro Person ist drastisch gestiegen, es gibt
kaum einen Haushalt in dem weniger als 10 Microcontroller ihre Dienste
verrichten. In den meisten Haushalten sind es weit mehr.
•
Es gibt kaum noch Steuerungen im Konsumerbereich, die nicht mit
einem Microcontroller realisiert wurden.
1.2
Entwicklung
1.2.1
Auswahl des Controllertyps
Die Auswahl an verschiedenen Microcontroller ist schier unerschöpflich; die Suche
nach vergleichenden Tabellen, die eine Übersicht ermöglichen, aussichtslos.
Der Betreuer meiner Technikerarbeit, Herr Kraus hat von Anfang an Controller der
Firma Atmel favorisiert, da viele dieser Controller mit der Keil-Entwicklungsumgebung
programmiert werden können. Ein weiterer Vorteil der Atmel– Controller ist der
Beliebtheitsgrad unter den Hobby - Programmierern. Es gibt zahlreiche Links und
Diskussionsforen zu verschiedenen Controllern von Atmel.
Der Hersteller Atmel bietet außerdem noch recht viele Controller in bedrahteter
Ausführung an, was das Austauschen defekter Controller erheblich erleichtert.
Ein großer Nachteil vieler Atmel- Controller ist die Notwendigkeit von speziellen
Programmieradaptern, ohne die das Programmieren des Flash-Speichers nicht
möglich ist.
Technikerarbeit
Hubert Weber
Seite 14 von 77
ELEKTRONIKSCHULE TETTNANG
•
1.2.2
Vorschlag Atmel-Controller
AT89C5131
8-bit Flash Microcontroller
with Full Speed USB Device
Features
• 80C52X2 Core (6 Clocks per Instruction)
– Maximum Core Frequency 48 MHz in X1 Mode, 24MHz in X2 Mode
– Dual Data Pointer
– Full-duplex Enhanced UART (EUART)
– Three 16-bit Timer/Counters: T0, T1 and T2
– 256 Bytes of Scratchpad RAM
• 32-Kbyte On-chip Flash In-System Programming through USB or UART
• 4-Kbyte EEPROM for Boot (3-Kbyte) and Data (1-Kbyte)
• On-chip Expanded RAM (ERAM): 1024 Bytes
• USB 1.1 and 2.0 Full Speed Compliant Module with Interrupt on Transfer
Completion
– Endpoint 0 for Control Transfers: 32-byte FIFO
– 6 Programmable Endpoints with In or Out Directions and with Bulk, Interrupt or
Isochronous Transfers
• Endpoint 1, 2, 3: 32-byte FIFO
• Endpoint 4, 5: 2 x 64-byte FIFO with Double Buffering (Ping-pong Mode)
• Endpoint 6: 2 x 512-byte FIFO with Double Buffering (Ping-pong Mode)
– Suspend/Resume Interrupts
– Power-on Reset and USB Bus Reset
– 48 MHz DPLL for Full-speed Bus Operation
– USB Bus Disconnection on Microcontroller Request
• 5 Channels Programmable Counter Array (PCA) with 16-bit Counter, High-speed
Output, Compare/Capture, PWM and Watchdog Timer Capabilities
• Programmable Hardware Watchdog Timer (One-time Enabled with Reset-out): 50
ms to
6s at 4 MHz
• Keyboard Interrupt Interface on Port P1 (8 Bits)
• TWI (Two Wire Interface) 400Kbit/s
• SPI Interface (Master/Slave Mode)
• 34 I/O Pins
• 4 Direct-drive LED Outputs with Programmable Current Sources: 2-6-10 mA Typical
• 4-level Priority Interrupt System (11 sources)
• Idle and Power-down Modes
• 0 to 32 MHz On-chip Oscillator with Analog PLL for 48 MHz Synthesis
• Low Power Voltage Range
– 3.0V to 3.6V
– 30 mA Max Operating Current (at 40 MHz)
– 100 µA Max Power-down Current
• Industrial Temperature Range
• Packages: PLCC52, VQFP64, MLF48, SO28
Technikerarbeit
Hubert Weber
Seite 15 von 77
ELEKTRONIKSCHULE TETTNANG
Folgender Atmel –Controller schien mir für unsere Anwendungen geeignet:
Der Controller ist sehr leistungsfähig, kann über USB direkt geflasht
werden
•
Er kann in einen Sockel gesteckt werden
•
Preis ca. 10,-€ bei Reichelt
•
Er hat einen 8051-Kern und ist mit der Keil µ-vision
Entwicklungsumgebung programmierbar
•
Er benötigt keinen Programmieradapter, kann über USB oder über
RS232 programmiert werden
•
Er hat ausreichend Ein- und Ausgänge
Blockschaltbild des AT89C5131
Technikerarbeit
Hubert Weber
Seite 16 von 77
ELEKTRONIKSCHULE TETTNANG
•
1.2.3
Vorschlag Renesas- Controller
Der Microcontroller ist auf einem Carrierboard aufgelötet. Mit 2 Stiftleisten kann das
Board auf einen DIL 32 Sockel gesteckt werden. Das Board stellt eine 1:1 Verbindung
zwischen dem Controller im TQFP32 Gehäuse und den Pins in DIL-Anordnung her.
Außerdem sind noch einige Bauteile zur Takterzeugung und Entstörung aufgelötet,
die möglichst nahe am Controller sein sollten.
Auf der beiliegenden CD wurde die komplette Software mitgeliefert:
•
Editor, Compiler, Debugger, Flash-Programm
•
Datenblätter, Anwendungsbeispiele
•
Headerdateien
Der Microcontroller stammt von dem Hersteller Renesas
Renesas Technology Corporation entstand am 1. April 2003 durch die
Ausgliederung und Fusion der Halbleiterbereiche von Hitachi und Mitsubishi Electric.
Der Name Renesas steht für Renaissance Semiconductor for Advanced Solutions.
Renesas ist ein weltweit agierender Halbleiterkonzern der Entwicklung, Produktion
und Vertrieb in sich vereint. Renesas gehört zu den größten Halbleiterherstellern
weltweit (Rang 4 im Jahr 2004). Das Produktspektrum umfasst Mikrocontroller, Logikund Analog- ICs, diskrete Halbleiter, sowie Flash- und SRAM -Speicher.
Die Muttergesellschaft Renesas Technology Corporation hat ihren Hauptsitz in Tokio
und ist durch Tochtergesellschaften mit zahlreichen Niederlassungen in Europa
präsent. Die deutsche Vertretung Renesas Technology Europe GmbH mit Hauptsitz
in Ratingen ist eine 100%ige Tochtergesellschaft der Renesas Technology Europe
Ltd. mit Sitz in Bourne End/England.
1) entnommen aus : http://de.wikipedia.org
Technikerarbeit
Hubert Weber
Seite 17 von 77
ELEKTRONIKSCHULE TETTNANG
Die Elektronikzeitschrift Elektor hat in Zusammenarbeit mit dem Halbleiterdistributor
GLYN im Dezember 2005 ein 16 Bit- Microcontroller samt Entwicklungsumgebung als
Beigabe zur Zeitschrift herausgegeben. Die Ausgabe enthielt außer ein paar wenigen
externen Standardbauteilen, die zum Anschließen der Schnittstelle notwendig sind
praktisch alles, um sofort mit dem Programmieren beginnen zu können.
Beschreibung des Controllers:
Merkmale:
•
20 MHz Taktfrequenz
•
16kByte Flash-ROM
•
16 Bit ALU+ Register
•
22 Ein- Ausgänge
•
12 10 Bit A/D-Wandler
•
2 Ringoszillatoren
•
2 serielle Schnittstellen
•
3 8-BitTtimer, 1 16-Bit Timer
•
15-bit Watchdogtimer
Blockschaltbild der R8C/13 Controllerfamilie
Technikerarbeit
Hubert Weber
Seite 18 von 77
ELEKTRONIKSCHULE TETTNANG
Der Controller hat die genaue Bezeichnung R5F21134FP#U0 und gehört zur Familie
R8C
Vorteile des R8C/13 Controllers:
sehr günstig
•
kostenlose Entwicklungsumgebung
•
Programmierung über RS232 Schnittstelle möglich
•
Schnelle Verarbeitung auch von Float –Zahlen durch 16 Bit
Rechenleistung
•
interessante deutschsprachige Foren im Internet seit Werbeaktion im
Elektor mit vielen Programmbeispielen und Tipps.
Entscheidung
Wir haben uns für den Einsatz des Renesas- Controllers R8C/13 entschieden.
Ob er sich als Controller für den Schulunterricht tatsächlich eignet, muss sich noch
herausstellen. Es ist in jeder Hinsicht ein interessantes Projekt:
1.2.5
Grobstruktur der Lösung
In der Elektorausgabe Januar 2006 wurde für das kleine R8C/13 Board noch eine
Applikationsplatine vorgestellt. Sie enthält neben einer Netzteilschaltung eine USB Schnittstelle und einen Pegelwandler für die RS232-Schnittstelle. Sicher ist ein
großer Teil der Schaltung damit schon vorgegeben, dies macht die Schaltungstechnik
jedoch nicht weniger interessant:
Während die Netzteilschaltung und die Pegelwandlung mit dem Max232 quasi
Standardschaltungen sind, stellt der USB doch eine einfache Lösung dar, alte
Schnittstellen an neue anzupassen. Die Technologie der USB- Schnittstellen
unterscheidet sich schon sehr stark von den herkömmlichen seriellen Schnittstellen.
Während das Elektor- Applikationsboard vor allem eine Testmöglichkeit für
Programmierer bietet, soll das selber entwickelte Board der Modulbauweise des
alten 80535Compuboards mit seiner Standardschnittstelle entsprechen. Damit ergibt
sich die Möglichkeit, mit den entsprechenden Zusatzplatinen komplette
Steuerungsaufgaben zu realisieren.
Technikerarbeit
Hubert Weber
Seite 19 von 77
ELEKTRONIKSCHULE TETTNANG
1.2.4
•
ELEKTRONIKSCHULE TETTNANG
Die Schaltung des Elektor-Applikationboards
1.2.6
Entwicklung der Platine
Die Schaltung wurde so abgeändert, dass sie zu den Zusatzplatinen kompatibel ist.
Das Display, die LED`s und das Potentiometer für den Analogeingang werden nicht
benötigt, da diese Funktionen alle auf den Zusatzplatinen verfügbar sind. Sämtliche
Ports außer Port 4.6 und 4.7 wurden auf Pfostenwannen geführt. Die Jumper wurden
durch Schiebeschalter ersetzt. Der Jumper für die Spannungsversorgung wurde
durch 2 Schottkydioden ersetzt.
Die Entwicklung des Schaltplanes und des Layouts erfolgte mit Target, einem
Programm, das speziell für Leiterplattendesign konzipiert ist. Nach Einarbeitung durch
kleinere Projekte erfolgte erst das Zeichnen des Schaltplans und danach das
Erstellen des Layouts. Ich habe am Anfang nicht geglaubt, dass ich diese Schaltung
auf einer einseitigen Leiterplatte unterbringen kann, doch beim zweiten Entwurf ist es
Technikerarbeit
Hubert Weber
Seite 20 von 77
mir gelungen, die Schaltung auf eine einseitige Leiterplatte mit nur einer Drahtbrücke
unterzubringen.
Inbetriebnahme
Bei meiner Arbeit in einer Hardwareentwicklungsabteilung habe ich die Vorzüge einer
schrittweisen Inbetriebnahme kennen gelernt. Ich habe die einzelnen Komponenten,
wie unter Kapitel Fertigungsunterlagen /Inbetriebnahme beschrieben, geprüft. Bei den
einzelnen Schaltungsgruppen sind, bis auf eine fehlende Leiterbahn und eine
Lötbrücke, keine Probleme aufgetreten.
Beim Versuch ein Programm in den Controller zu laden, gab es am Anfang
Schwierigkeiten:
Zuerst konnte das Flashprogramm keine Verbindung zum Controller herstellen.
Ursache:
Die COM - Schnittstelle war nicht richtig ausgewählt. Nachdem ich herausgefunden
hatte, wo man in der Systemsteuerung die Nummer der COM- Schnittstelle einsehen
kann, konnte ich dort auch schon sehen, dass der USB –Wandler auf dem
Controllerboard vom PC erkannt wurde.
Nachdem das Flashprogramm keinen Verbindungsfehler mehr angezeigt hat, kam die
Fehlermeldung:
Error Nr. 16194: ID Code Check failure
Nach langem herumstöbern in den Foren habe ich den passenden Beitrag gefunden.
Nach Eingabe von FFFFFFFFFF als ID hat es dann endlich funktioniert. Das Flash
wurde programmiert.
Ich habe das Beispielprogramm Port Toggle von den NC30 Samples in den Controller
geladen. Das Programm bringt die ersten 4 Bits von Port 1 zum Blinken. Ich habe die
Tasterplatine angeschlossen und mit Erstaunen festgestellt, dass die Bits 4-7
ebenfalls mitblinken. Ich habe vermutet, dass es an fehlenden Pull -Up-Widerständen
liegt.
Bei näherem Betrachten des Programms fiel mir auf, dass nur die ersten 4 Bits des
Ports im Spezialfunktionsregister für die Portrichtung als Ausgänge gesetzt waren.
Nachdem ich einen anderen Wert in das Register für die Port-Richtung geschrieben
habe, war das Flackern weg.
1.2.8
Erfahrungen im Umgang mit dem Controller und der Entwicklungsumgebung:
•
Die Entwicklungsumgebung ist schwieriger zu bedienen als die KeilEntwicklungsumgebung. Vor allem für Anfänger hat sie einige Tücken
parat, z.B. in der Dateiverwaltung: Sind die entsprechenden
Administratorenrechte nicht vorhanden, kann der Compiler die
temporären Dateien nicht anlegen und erzeugt auch keine Datei, die in
das Flash übertragen werden kann.
•
störend ist auch der ID-Check-Fehler beim Flashen des Controllers: tritt
dieser Fehler auf, ist keine Programmierung möglich. Der Controller
muss eine Weile Spannungslos sein, damit ein Programmieren wieder
möglich ist.
Technikerarbeit
Hubert Weber
Seite 21 von 77
ELEKTRONIKSCHULE TETTNANG
1.2.7
störend ist auch die relativ lange Zeit, die zum Flashen benötigt wird:
Es dauert ca. 30 s bis der Flashvorgang abgeschlossen ist!
•
es sind wesentlich mehr Einstellungen an den Spezialfunktionsregistern
notwendig als z.B. beim alten 80535 Board notwendig war.
•
für Programmierübungen ist der Controller nicht optimal geeignet. Auch
deshalb, weil der Hersteller nur 1000 Flashzyklen garantiert. Vermutlich
sind weit mehr Flashzyklen möglich, der Flashvorgang benötigt dann
aber immer mehr Zeit.
•
für Projektarbeiten ist der Controller weit besser geeignet:
Der integrierte Flash-Speicher ermöglicht es, mit wenig Aufwand eine
autarke Steuerung zu realisieren ohne ein spezielles Eprom brennen zu
müssen. Hat das übertragen des Programms in den Flash-Speicher des
Controllers einmal richtig funktioniert, gibt es bei weiteren
Flashvorgängen in der Regel keine Probleme, vorausgesetzt, die
Verbindung zum PC ist korrekt und die Schalter auf dem Board sind
richtig eingestellt.
Anfängerproblem
Wir haben im Unterricht die Arbeitsweise mit dem 80535 Controller von Intel gelernt.
Bis zur Durchführung von meiner Technikerarbeit war meine Vorstellung, dass alle
Controller in einer ähnlichen Art und Weise funktionieren, und dass auch Vorgänge
wie das Übertragen des Programms in den Flash Speicher, das Debuggen und
Simulieren und die ganzen Voreinstellungen bei allen Controllern standardisiert und
ähnlich ablaufen. Ich habe nach entsprechender Literatur und nach entsprechenden
Links gesucht, habe aber immer nur controllerspezifische Erläuterungen gefunden,
die dann meist nur in Englisch verfügbar waren.
Meine Hoffnung, die Vorgänge so zu verstehen, dass ich auch bei Problemen
systematisch nach Fehlern und Ursachen suchen kann (dies ist meine Auffassung
von professionellem Arbeiten), habe ich mittlerweile aufgegeben. Recherchiert man in
den Foren, hat man den Eindruck, dass viel nach der Methode Versuch und Irrtum
herausgefunden wird. Die Beiträge in den verschiedenen Foren erzeugen für einen
Anfänger eher das Gefühl, dass es sich bei der Materie um so was wie Alchemie
handelt, und nicht um eine rein naturwissenschaftliche Angelegenheit die auch
Anfängern vermittelbar ist.
Möglicherweise bedarf es einfach einer Menge Ausdauer und Frustrationstoleranz bis
die Zusammenhänge von selber klar werden.
Der Wunsch nach standardisierten und durchschaubaren Strukturen und Vorgängen
wird nicht so schnell in Erfüllung gehen. Schließlich sind die Unterschiede ja auch
Alleinstellungsmerkmale, die entsprechende Wettbewerbsvorteile verschaffen sollen
und zum Teil patentrechtlich geschützt sind.
Microcontroller, wie der hier verwendete R8C/13, werden nicht für den
Hobbyentwickler entwickelt und hergestellt, sondern für einen Massenmarkt, bei dem
Stückzahlen von hunderttausend bis mehrere Millionen keine Seltenheit sind. Da fällt
der Aufwand für die Einarbeitung nicht mehr so ins Gewicht.
Ein Hardwareentwickler hat mir erzählt, dass das Einarbeiten in eine andere
Mikrocontrollerfamilie und das Einrichten der Entwicklungsumgebung und der
Technikerarbeit
Hubert Weber
Seite 22 von 77
ELEKTRONIKSCHULE TETTNANG
1.2.9
•
Programmiertools bis zum ersten lauffähigen Programm auch im professionellen
Bereich immer sehr viel Zeit in Anspruch nimmt.
Umgang mit dem Layoutprogramm Target:
Die ersten Schritte mit dem Layoutprogramm Target waren etwas mühsam, aber es
hat sich gelohnt: Es ermöglicht mir eigene Schaltungsideen umzusetzen. Nachdem
ich mit dem Layoutprogramm vertraut war, habe ich noch einige kleine Nebenprojekte
aus der eigentlichen Technikerarbeit abgeleitet:
•
•
•
USB-RS232 Wandlerplatine
Alternativcarrierboard als Ersatz für das GLYN-R8C/13Board
Relaisplatine für die Ansteuerung durch ein
Mikrocontrollerboard nach dem oben beschriebenen
Standard für Zusatzplatinen
Microcontrollertechnik:
Das Verständnis vom Microcontroller als die wundersame Black-Box hat sich
zerschlagen. Die Einarbeitung in die Eigenheiten eines Controllers wie die
verschiedenen Spezialfunktionsregister war sehr aufschlussreich.
Ich traue mir mittlerweile zu, auch andere Controller in eine Schaltung einzubinden.
Arbeitsweise
Ich habe mich daran gewöhnt, dass umfangreiche Arbeiten auch entsprechende
Ausdauer voraussetzen. Dies zeigt sich vor allem, wenn etwas nicht auf Anhieb
funktioniert. Der Umgang mit Datenblättern, auch in Englisch und die Recherche nach
Informationen in Internetforen oder auf den Webseiten der Hersteller war für diese
Arbeit alltäglich.
Dies scheinen mir wichtige Schlüsselqualifikationen für mein zukünftiges Arbeiten als
Techniker zu sein.
1.2.11 Zeitlicher Ablauf
Bis
Bis
Bis
Bis
Bis
Bis
KW
KW
KW
KW
KW
KW
KW
48/2005
10/2006
14/2006
17/2006
19/2006
23/2006
26/2006
Technikerarbeit
Hubert Weber
Festlegung Thema
Recherche Microcontrollerarten
Festlegung Controllertyp, Einarbeitung in Target
Erstellen von Layout und Schaltplan
Inbetriebnahme der ersten Musterplatine
Änderungen an Schaltplan und Layout
Inbetriebnahme 2 Musterserie, Schreiben der
Dokumentation
Seite 23 von 77
ELEKTRONIKSCHULE TETTNANG
1.2.10 Erfahrungen
1.2.12 Entstandene Kosten
Menge
Teile
Einzelkosten
3 Zeitschrift Elektor
4 Prototypen
Kabel, Adapter, Stecker
Papier und Schreibmaterialien
6,50 €
20,00 €
30,00 €
50,00 €
Summe
Technikerarbeit
Hubert Weber
Seite 24 von 77
Gesamtkosten
19,50 €
60,00 €
30,00 €
50,00 €
159,50 €
ELEKTRONIKSCHULE TETTNANG
Entstandene Kosten für die Technikerarbeit
Fertigungsunterlagen
Für Renesas R8C/13 Carrier und
Microcontrollerboard
Technikerarbeit
Hubert Weber
Seite 25 von 77
ELEKTRONIKSCHULE TETTNANG
2
Fertigungsunterlagen Alternativcarrier
2.1.1
Beschreibung Alternativcarrier
Der Schaltplan des Alternativcarriers ist identisch mit dem Schaltplan des GLYNCarrierboards.
Der Alternativcarrier soll eine kostengünstige Alternative zu GLYN-Carrier darstellen.
Es wurde daher versucht die gleiche Schaltung auf einer einseitigen Leiterplatte
unterzubringen. Da keine Durchkontaktierungen notwendig sind, kann die Platine
auch selber hergestellt werden. Die Isolationsabstände sind allerdings sehr klein, so
dass vor dem Bestücken eine genaue Sichtkontrolle und gegebenenfalls auch das
Nachmessen der Verbindungen bzw. der Isolation erforderlich ist.
Das Auflöten des Controllers erfordert etwas Übung und vor allem eine feine
Lötspitze. Zusätzliches Elektronik-Flußmittel erleichtert die Arbeit.
Die Platine ist PIN-kompatibel und passt genauso in den DIL-32 Sockel. Sie ist
allerdings etwas breiter als das GLYN-Board, da die diskreten Bauteile zum Teil
außerhalb der beiden Stiftreihen angebracht wurden.
Draufsicht Alternativcarrier
Der 20 MHz-Quarz wurde bei dieser Variante auf der Unterseite bestückt, um
Kurzschlüsse mit der Massefläche zu vermeiden. Damit der Carrier dennoch auf das
Board passt, ist es wichtig die kurze Bauform (Gehäuse HC49U) für den Quarz zu
verwenden. Wird der Quarz auf der Oberseite bestückt, ist ein entsprechender
Abstand zur Platine erforderlich.
Die Kondensatoren C3 und C4 können auch als bedrahtete Bauteile an die Stiftleisten
angelötet werden.
Die Bohrungen erfolgen alle mit 0,8 mm
Die Fertigungsunterlagen und die Targetdateien befinden sich auch auf
cd technikerarbeit\Alternativcarrier
Die Inbetriebnahme des Alternativcarriers erfolgt am einfachsten mit einem fertig
bestückten Microcontrollerboard. Der Controller muss sich auf die gleiche Weise
programmieren lassen wie der Controler auf dem GLYN-Board.
Technikerarbeit
Hubert Weber
Seite 26 von 77
ELEKTRONIKSCHULE TETTNANG
2.1
Bestückungsplan Altenativcarrier
Technikerarbeit
Hubert Weber
Seite 27 von 77
ELEKTRONIKSCHULE TETTNANG
2.1.2
2.1.3
Schaltplan Alternativcarrier
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit
Hubert Weber
Seite 28 von 77
2.1.4 Stückliste Alternativcarrier
;
Pos
1
2
3
4
5
6
7
8
9
10
Name
C1
C2
C3
C4
IC1
Q1
R1
R2
R3
STIFTLEISTE0
Technikerarbeit
Hubert Weber
Wert
100n
100n
22p
22p
R8C/13
#
4K7
4K7
4K7
R8C/13
Gehäuse Raster Lieferant
0,1µ
5 mm Reichelt
0,1µ
5 mm Reichelt
0805
Reichelt
0805
Reichelt
TQFP32
GLYN
HC49/U
Reichelt
R3
Reichelt
R4
Reichelt
R3
Reichelt
DIL32
Reichelt
Seite 29 von 77
Bestell-Nr.
Z5U-5 100N
Z5U-5 100N
NPO-G0805 22p
NPO-G0805 22p
20-HC49U-S
1/4W 4,7k
1/4W 4,7k
1/4W 4,7k
AW 122/32
Preis
0,06 €
0,06 €
0,05 €
0,05 €
3,00 €
0,44 €
0,10 €
0,10 €
0,10 €
1,35 €
Summe
5,31 €
R5F21134FP#U0
ELEKTRONIKSCHULE TETTNANG
; Stückliste=E:\atechnikerarbeit\cd
technikerarbeit\Alternativcarrier\R8C13_glyn270606a.T3001
; Datum=29.Juni.2006 11:30
; Variante=<alle>
; Author=
2.2. Fertigungsunterlagen Microcontrollerboard
von oben
von unten
Technikerarbeit
Hubert Weber
Seite 30 von 77
ELEKTRONIKSCHULE TETTNANG
Die Fertigungsunterlagen mit Targetdateien sind auch unter
cd technikerarbeit\Fertigungsunterlagen zu finden.
2.2.1
Konzept
Der Microcontroller ist bereits schon auf einer kleinen Platine (Carrier -Board)
aufgelötet. Dies hat den Vorteil, dass bei einem Defekt des Microcontrollers dieser
entweder komplett mit Carrier - Board ausgetauscht werden kann oder zum Entlöten
aus der Fassung gezogen werden kann. Im Anhang in der Techniker-CD ist noch ein
Layout für ein Alternativcarrierboard, das mit einer einseitigen Leiterplatte auskommt
und somit leicht selber hergestellt werden kann.
Es ist ratsam, einen Sockel für das Carrierboard zu verwenden. Der Carrier ist in DIL
32 ausgeführt. Der 10polige Stecker wird nur benötigt, wenn der von GLYN
erhältliche E8-Emulator eingesetzt wird.
Controller mit Carrier von GLYN
Controller auf Alternativcarrier
Technikerarbeit
Hubert Weber
Seite 31 von 77
ELEKTRONIKSCHULE TETTNANG
Die Platine wurde so entwickelt, dass Sie die gleichen Maße hat wie die
Zusatzplatinen. Für die Leiterplatte wird einseitig beschichtetes Basismaterial mit 35µ
Kupferauflage verwendet. Bis auf den USB- Wandlerchip PL-2303X LF werden alle
Bauteile auf der Oberseite bestückt. Der USB - Chip ist nur in SMD -Version
verfügbar.
2.2.2
Spannungsversorgung:
•
über eine Gleichspannungsquelle 8 – 30 V die an die
Versorgungsklemmen angeschlossen wird. Der Spannungsregler sorgt
für eine stabile Spannung am Controller.
•
Über die USB - Schnittstelle, die 5V bis zu einem Strom von 100 mA zur
Verfügung stellen kann.
Beide Spannungsversorgungen sind mit zwei Schottky - Dioden voneinander
abgekoppelt, um Schaden am USB-Port zu vermeiden.
2.2.3
Kurzschlussschutz:
Der USB Port bzw. die Spannungsstabilisierung sind gegen Überstrom abgesichert.
Als Sicherungselement kann wahlweise eine Feinsicherung 100mA (F1) oder eine
sich selbst rückstellende Sicherung 100mA (F2) eingebaut werden.
Technikerarbeit
Hubert Weber
Seite 32 von 77
ELEKTRONIKSCHULE TETTNANG
Auf dem voll bestückten Board gibt es 2 Möglichkeiten zur Spannungsversorgung:
2.2.4
Funktionsgruppen der Schaltung
ELEKTRONIKSCHULE TETTNANG
Die Schaltung besteht aus folgenden Funktionsgruppen:
Orange:
Gelb:
Rosa:
Grün:
2.2.5
Spannungsstabilisierung
Controller mit externer Beschaltung
Serielle Schnittstellen
USB-Schnittstelle
Bestückung
•
Wird das Board nur für Programmierübungen verwendet, dann ist es
ausreichend, den Controllerteil (gelb)und den USB -Teil zu bestücken.
Der Controller wird dann über die USB -Schnittstelle mit Strom versorgt.
Soll die Programmierung über die RS232-Schnittstelle erfolgen, muss
auch die Spannungsstabilisierung mitbestückt werden, da die Schaltung
über die RS232-Schnittstelle nicht mit Strom versorgt wird.
•
für die Absicherung kann wahlweise eine Feinsicherung oder eine
Polyfuse verwendet werden.
Vorteil Feinsicherung: man merkt auf jedem Fall, dass man einen
Kurzschluss gemacht hat.
Nachteil: Man braucht bei jedem Kurzschluss eine neue Sicherung.
•
•
Technikerarbeit
Hubert Weber
Seite 33 von 77
die USB- Buchse und die RS232 Stecker können auch in gerader
Ausführung gewählt werden, die Bohrungen müssten identisch sein.
•
der Spannungsregler kann auch stehend montiert werden und mit einem
kleinen Kühlkörper versehen werden. Ist die Versorgungsspannung
größer als 15 V und die Ports sind mit Zusatzplatinen belegt ist dies
wegen der Verlustleistung zu empfehlen
•
IC2 und IC3 sollten auf Sockel gesteckt werden
•
bei Dioden, Elkos und IC’s auf Polung achten
Technikerarbeit
Hubert Weber
Seite 34 von 77
ELEKTRONIKSCHULE TETTNANG
•
2.2.6
Schaltplan
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit
Hubert Weber
Seite 35 von 77
2.2.7
Funktionsbeschreibung der Schaltung
Spannungsstabilisierung
D1:
Verpolungsschutz beim Anschließen eines externen Netzteils
C1:
Glättung / Pufferung bei Anschluss nicht geglätteter Spannung
C2/C3:
Verhindern Schwingen des Spannungsreglers
IC5:
Regelt Eingangsspannung von 8-20V auf 5V herunter
C10:
Pufferkondensator, sorgt für ordentlichen Nachschub
D3/D4:
Entkoppeln die beiden Spannungsquellen USB und externe
Spannungsversorgung, somit kann keine Fremdspannung in den USBPort gelangen und diesen zerstören
F1/F2:
Sicherung gegen Kurzschluss und Überlastung, Schutz für externes
Netzteil bzw. USB -Port, wahlweise als Feinsicherung (F1) oder als
Polyfuse (F2)
Gelb:
Controller mit externer Beschaltung
IC2:
R8C/13 Board, entweder Original von GLYN oder Alternativcarrier.
Beide Boards sind schaltungstechnisch identisch, beim GLYN- Board
kann noch ein 10 poliger Stecker für einen Emulator angeschlossen
werden. Beschaltung siehe Schaltplan R8C/13
Das Board stellt die Verbindung vom TQFP32 Gehäuse des
Microcontrollers zum DIL-Sockel her. Die PIN´s sind 1:1
durchverbunden. Zusätzlich sind noch Bauteile für die Takterzeugung
C3/C4/Q1und Entstörkondensatoren C1/C2 auf dem Board, da sie
über möglichst kurze Leiterbahnen mit dem Controller verbunden
werden müssen. R2 und R3 sind Pull-Up Widerstände für Reset und
Mode-Eingang. (Die Bauteilbezeichnungen beziehen sich auf den
Schaltplan R8C/13)
S2:
Reset-Taster, bei Betätigung wird der Programmzähler und die
Register im Controller zurückgesetzt.
bei diesem Layout fungiert der Taster auch noch als Brücke zwischen
Masse und PIN 5 des Controllers, zwei der vier Anschlüsse sind jeweils
durchverbunden. Wird der Reset-Taster herausgeführt, dann muss
eine Brücke eingelötet werden, da der Controller sonst keine Masse
mehr hat !!!
Achtung:
S1:
Achtung:
Mode-Schalter, Schaltet um zwischen Programmiermodus (Flashen)
und Normalbetrieb. Schalter Richtung Ecke: Programmierbetrieb,
Schalter in der Mitte: Normalbetrieb.
Bei Arbeiten mit dem Debugger muss Mode -Schalter im
Programmiermodus bleiben:
Technikerarbeit
Hubert Weber
Seite 36 von 77
ELEKTRONIKSCHULE TETTNANG
Orange:
direkte Verbindung zu den Ports des Microcontrollers.
Port 0 und Port 1 sind komplett angeschlossen, von Port 3 sind nur
P3.0, P3.1, P3.2, P3.3, P3.7 angeschlossen. P4.5 wurde an den
gleichen Stecker wie Port 3 angeschlossen, P4.6 und P4.7 wurden
nicht herausgeführt, da gleichzeitig der Quarz an diese Ports
angeschlossen ist und der Schwingvorgang durch lange Anschlüsse
beeinträchtigt würde.
C8:
Entstörkondensator, Störspannungen am Reset (z.B. über Netzteil
bewirken einen zurücksetzen des Controllers, laufendes Programm
wird abgebrochen.
R7/R11:
Pull-up-Widerstände für die serielle Schnittstelle des Controllers.
Sie müssen auf jeden Fall bestückt werden, da über die serielle
Schnittstelle der Flash-Speicher des Controllers beschrieben wird.
D2:
sorgt für eine schnelle Entladung von C8 bei einem
Spannungseinbruch
Rosa:
Serielle Schnittstellen
IC3:
Schnittstellenwandler, wandelt TTL-Pegel des Controllers auf die für
RS232-Standard übliche Spannung von 3 bis 15V für Low -Pegel
und -3bis -15V für High -Pegel.
Um diese Spannungen zu erreichen hat dieser Schaltkreis eine
Ladungspumpe integriert, die mit den 4 Elkos die beiden Spannungen
+10 und -10 V erzeugt.
C13/C14/
C15/C16:
Zwischenspeicherung der Ladung für die Spannungsverdoppelung.
S3:
Schaltet serielle Schnittstelle 0 des Controllers (TxD und RxD)
entweder auf USB-Wandler oder auf Pegelwandler und K6
S4:
Schaltet serielle Schnittstelle 1 des Controllers (TxD und RxD)
entweder auf USB-Wandler oder auf Pegelwandler und K5
Achtung:
Es dürfen nicht beide Schalter auf USB stehen, wenn beide
Schnittstellen aktiviert sind.
C4:
Entstörkondensator / Pufferung für Schnittstellenwandler
Grün:
USB -Schnittstelle
IC2:
USB zu seriell Schnittstellenwandler
Fullspeed USB1.1, kompatibel zu USB2.0
Der Schnittstellenwandler ist so eine Art Spezial- Microcontroller mit
Taktgenerator, internem Pufferspeicher für die ein und ausgehenden
Daten, I2C- Anbindung zur Erweiterung mit einem seriellen EEPROM .
Der Schnittstellenwandler wird vom USB -Bus des PCs als Slave
betrachtet, d.h. er kann kein anderes USB -Gerät steuern sondern nur
auf Anforderung Daten Senden und Daten Empfangen.
Technikerarbeit
Hubert Weber
Seite 37 von 77
ELEKTRONIKSCHULE TETTNANG
K2/K3/K4:
R3/R4/R5/R6: legen Betriebsmodus des Wandlers fest
R1/R2:
definierte Eingangswiderstände
R10:
signalisiert Gegenstelle, dass es sich um ein Full- Speed- Gerät
handelt.
Q1/C17/C18: Erzeugen interne Taktfrequenz für USB –Wandler
C11/C7:
Entstörung / Pufferung der 5V-Spannung vom USB-Port
C5/C12:
Entstörung / Pufferung der 3,3V-Spannung die im Wandler erzeugt
wird.
Technikerarbeit
Hubert Weber
Seite 38 von 77
ELEKTRONIKSCHULE TETTNANG
Für den Betrieb am PC ist ein spezieller Treiber erforderlich, der auf
der Techniker -CD unter
cd technikerarbeit\Software\USB-Treiber\PL-2303 Driver Installer.exe
zu finden ist. Siehe auch Kapitel Softwareinstallation
2.2.8
Bestückungsplan
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit
Hubert Weber
Seite 39 von 77
Bohrplan
∆
+
x
·
*
0,8mm
1,0mm
1,2mm
3,2mm
2,0mm
ELEKTRONIKSCHULE TETTNANG
2.2.9
Technikerarbeit
Hubert Weber
Seite 40 von 77
2.2.10 Stückliste
Name
Wert
Gehäuse
Lieferant Bestell-Nr.
C1
C2
C3
C4
C5
C7
C8
C10
C11
C12
C13
C14
C15
C16
C17
C18
D1
D2
D3
D4
IC3
IC5
K2
K3
K4
220µ
0,1µ
0,1µ
0,1µ
0,1µ
0,1µ
0,1µ
10µ
10µ
10µ
4,7µ
4,7µ
4,7µ
4,7µ
10pF
10pF
1N4001
1N4148
BAT47
BAT 47
MAX232
7805
K2X5
K2X5
K2X5
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
K5
SUB-D-9
K6
K7
KL1
Q1
R1
R2
R3
R4
R5
R6
R7
R10
R11
SUB-D-9
USB-B
KLEMME
12MHZ
27R
27R
220k
220k
220k
47k
4k7
1k5
4k7
S1
MODE
ELKO5-10.5
C2
C2
C2
C2
C2
C2
ELKO2.5-6
ELKO5-5.5
ELKO5-5.5
ELKO5-5.5
ELKO5-5.5
ELKO5-5.5
ELKO5-5.5
C1-2.5
C1-2.5
D4
D3
DO41
DO41
DIL16
TO-220
HD10-S
HD10-S
HD10-S
SUB-D-9-STIFTST
SUB-D-9-STIFTST
USB-B2
KLEMME 2
HC-18U
R4
R4
R4
R4
R4
R4
R4
R4
R4
SCHALTER
2XUM
Technikerarbeit
Hubert Weber
Preis
RAD 220/35
Z5U-5 100N
Z5U-5 100N
Z5U-5 100N
Z5U-5 100N
Z5U-5 100N
Z5U-5 100N
RAD105 10/63
RAD105 10/63
RAD105 10/63
RAD105 4,7/100
RAD105 4,7/100
RAD105 4,7/100
RAD105 4,7/100
KERKO 10P
KERKO 10P
1N 4001
1N 4148
BAT 47
BAT 47
MAX 232 CPE
µA 7805
WSL 10G
WSL 10G
WSL 10G
0,10 €
0,06 €
0,06 €
0,06 €
0,06 €
0,06 €
0,06 €
0,04 €
0,04 €
0,04 €
0,04 €
0,04 €
0,04 €
0,04 €
0,04 €
0,04 €
0,02 €
0,02 €
0,14 €
0,14 €
0,40 €
0,17 €
0,07 €
0,07 €
0,07 €
Reichelt D-SUB ST 09US
0,31 €
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
Reichelt
0,31 €
0,24 €
0,14 €
0,44 €
0,10 €
0,10 €
0,10 €
0,10 €
0,10 €
0,10 €
0,10 €
0,10 €
0,10 €
D-SUB ST 09US
USB BW
AKL 055-02
12-HC49U-S
1/4W 27
1/4W 27
1/4W 220K
1/4W 220K
1/4W 220K
1/4W 47K
1/4W 4,7K
1/4W 1,5K
1/4W 4,7K
Reichelt T 373
Seite 41 von 77
0,82 €
ELEKTRONIKSCHULE TETTNANG
Vollversion
HUBERT
WEBER
RESET
S3
Umschalter
S4
F1
F2
F1
Umschalter
0,1A
PFRA 010
Sicherungshalter
MC-PCB113,4X69
PL2303
RESETA
SCHALTER
2XUM
SCHALTER
2XUM
0,1A
C2_5X6
5 x 20
MC-PCB113,4X69
PL2303A
R8C/13- BOARD
Sockel
Sockel
DIL32
DIL32
DIL16
GEH1
IC2
IC1
Reichelt TASTER 9302
0,11 €
Reichelt T 373
0,82 €
Reichelt
Reichelt
Reichelt
Reichelt
0,82 €
0,10 €
0,46 €
0,12 €
T 373
FLINK 0,1A
PFRA 010
PL112000
GLYN
PL-2303X LF
EVBR8C/13-CARRIERGLYN
E8
Reichelt GS 32P
Reichelt GS 16P
Summe
Bestelladresse Reichelt:
Reichelt Elektronik e.Kfr. Elektronikring 1 26452 Sande
www.reichelt.de
Bestelladresse Glyn:
GLYN GmbH & Co. KG Am Wörtzgarten 8 D-65510 Idstein
www.glyn.com
Technikerarbeit
Hubert Weber
Seite 42 von 77
3,00 €
10,00
€
0,36 €
0,18 €
21,05
€
ELEKTRONIKSCHULE TETTNANG
S2
2.2.11 Aufbau
2.2.12 Inbetriebnahme
Wichtig: IC’s immer im spannungslosen Zustand in Fassung einstecken bzw. ziehen.
Bei der Inbetriebnahme ist es ratsam, sorgfältig und schrittweise vorzugehen.
Dies hat mehrere Gründe:
•
bei Leiterplatten, die nicht industriell gefertigt wurden, sind haardünne
Kurzschlüsse bzw. Unterbrechungen sehr häufig. Sie sind ohne Lupe oft
nicht erkennbar.
•
funktioniert die Schaltung nicht auf Anhieb wie gewünscht, kann die
Fehlersuche sehr mühsam sein, wenn schon alles bestückt ist. Statt
schnell erhofftem Erfolgserlebnis gibt’s Frust und manchmal auch
Rauchwolken.
Durch Ausschluss von Fehlerquellen kann dies vermieden werden.
•
•
durch Leiterbahnkurzschlüsse können schnell mal empfindliche Bauteile
zerstört werden.
•
bei einem schwerwiegenden Defekt der Schaltung können auch die
Schnittstellen im PC zerstört werden.
Messungen im Spannungslosen Zustand , IC1 und IC3 noch nicht bestückt
•
alle PIN’s der IC’s und der Stecker auf Kurzschlüsse prüfen
•
mit dem Schaltplan prüfen, ob bei IC1die richtigen Pins miteinander
verbunden sind.
Die Bohrung markiert Pin 1
•
die Pins des USB -Steckers auf Kurzschluss prüfen, zwischen den 4 Pins
des Steckers darf kein Widerstand kleiner 1kΩ sein
•
bei Betätigung von Reset-Taste Durchgang von Pin 3 nach Pin 5 von IC1
•
Schiebeschalter S1 Richtung Ecke Durchgang von Pin 28 nach Pin 5
von IC1
Technikerarbeit
Hubert Weber
Seite 43 von 77
ELEKTRONIKSCHULE TETTNANG
Es empfiehlt sich, als erstes den USB- Wandler auf der Unterseite zu bestücken. Vor
dem Einlöten noch mal Leiterbahnen auf Unterbrechungen und Kurzschlüsse
überprüfen, da an manchen Stellen die Leiterbahnen sehr dünn und die Abstände
sehr klein sind.
•
Stromaufnahme messen: Strom muss kleiner 10 mA sein
•
Spannungen messen:
IC3:
IC1:
IC1:
K2 und K4:
C3:
Pin 16-15
Pin 19-21
Pin 19-5
Pin 1-2
5V
5V
5V
5V
5V
±0,2V
±0,3V
±0,3V
±0,3V
±0,3V
Bei Verwendung der Feinsicherung sind die Spannungen überall gleich, bei
Verwendung einer Polyfuse gibt’s einen kleinen Spannungsabfall.
IC3 (Max232) einsetzen, Spannung einschalten
IC3
IC3
PIN15-2
PIN15-6
+9,5V ± 0,5V
-9,5V ± 0,5V
Dies bedeutet, dass die Spannungspumpe des Max 232 richtig arbeitet. Wenn nicht,
C13 bis C16 noch einmal überprüfen.
USB- Wandler: (IC2):
Der USB- Wandler kann nur arbeiten, wenn er Spannung über den USB- Stecker
bekommt.
Wer vorsichtig ist, schließt den USB- Anschluss nicht gleich an den PC sondern
speist ihn über das Netzteil. Dazu ist es notwendig, die Diode D4, die ja eigentlich die
USB -spannungsversorgung vom Netzteil entkoppelt, zu überbrücken.
Die Stromaufnahme sollte kleiner als 20mA sein.
Nach dem Entfernen der Brücke kann der USB-Anschluss an den USB-Port des PC’s
angeschlossen werden.
Ist der Treiber installiert, (Techniker -CD unter: cd technikerarbeit\Software\USBTreiber\PL-2303 Driver Installer.exe ) müsste der PC den USB-Chip erkennen.
Unter:
Start>Systemsteuerung>System>Hardware>Gerätemanager>Anschlüsse
(COM und LPT)
Erscheint dann:
Prolific USB-to-Serial Comm Port (COMxy)
In der Klammer steht dann die Nummer des zugewiesenen Com -ports, diese wird
benötigt zum konfigurieren des Flashprogramms.
Die Nummer des Com -Ports ändert sich, wenn der USB -Port gewechselt wird.
Technikerarbeit
Hubert Weber
Seite 44 von 77
ELEKTRONIKSCHULE TETTNANG
Spannung über Klemme anlegen, IC1 und IC3 noch nicht bestückt
Erkennt der PC den Chip nicht, gibt es folgende Möglichkeiten:
•
falsche Bestückung der externen Widerstände (nachmessen)
•
Lötbrücke (nachmessen)
•
Fehler in der Verbindung zum PC
•
Quarz schwingt nicht:
dies kann man feststellen, indem man ein UKW-Radio auf 96MHz
(8x12MHz) einstellt und die Schaltung ganz nah an die Antenne hält
(<20cm). Schwingt der Quarz, geht das Rauschen weg, da das Radio
durch die Oberwelle ein Signal findet. Schwingt der Quarz nicht, geht
das Rauschen nicht weg.
Dieser Trick kann übrigens auch angewendet werden, wenn das R8C/13 Board nicht
funktioniert. Man muss allerdings eine andere Frequenz am Radio einstellen: 100MHz
(5x20MHz)
Bestückung mit R8C/13 Board:
Spannungsversorgung über Netzteil, USB -Verbindung getrennt:
Stromaufnahme messen:
max. 20 mA
Spannungen Messen:
IC1
K3
Pin7-5
Pin 1-2
5V
5V
± 0,3V
± 0,3V
Um dem Controller Leben einzuhauchen, muss ein Programm in den Flash-Speicher
des Controllers geladen werden.
Mit dem Flash-Programm wird dann ein kleines Testprogramm in den Flash-Speicher
des Controllers geladen, mit dem die Funktion des Controllers und des Boards
überprüft werden kann.
Das Testprogramm befindet sich unter
cd technikerarbeit\Sample_NC30\ Porttoggle\release
Dieses Programm spiegelt ganz einfach die Eingänge von Port 1 auf die Ports 0, 3
und 4
Technikerarbeit
Hubert Weber
Seite 45 von 77
ELEKTRONIKSCHULE TETTNANG
Hat der PC den USB -Chip erkannt, ist dieser betriebsbereit, Takterzeugung und auch
die Erzeugung der internen Spannung von 3,3V (kann an C5 gemessen werden)
funktionieren.
#include "sfr_r813.h"
long t;
void main(void)
{
/*------------------------------------------------- Change on-chip oscillator clock to Main clock -------------------------------------------------*/
prc0 = 1;
cm13 = 1;
cm15 = 1;
cm05 = 0;
cm16 = 0;
cm17 = 0;
cm06 = 0;
asm("nop");
asm("nop");
asm("nop");
asm("nop");
ocd2 = 0;
prc0 = 0;
/* Protect off */
/* Xin Xout */
/* XCIN-XCOUT drive capacity select bit : HIGH */
/* Xin on */
/* Main clock = No division mode */
/* CM16 and CM17 enable */
/* Waiting for stable of oscillation */
/* Main clock change */
/* Protect on */
prc2 = 1;
pd0 = 0xFF;
pd1 = 0xFF;
pd3 = 0x8F;
pd4 = 0x20;
/* Schreibschutz PD0-register aus */
/* Port 0 als Ausgang*/
/* Port 1 als Ausgang*/
/* Port 3.0; 3.1; 3.2; 3.3;3.7; als Ausgang*/
/* Port 4.5 als Ausgang*/
while (1)
/* Schleife */
{
p0 = 0xAA;
p1 = 0xAA;
p3_0 = 0;
p3_1 = 1;
p3_2 = 0;
p3_3 = 1;
p3_7 = 1;
p4_5 = 1;
for (t=0; t<50000; t++);
p0 = 0x55;
Technikerarbeit
Hubert Weber
Seite 46 von 77
ELEKTRONIKSCHULE TETTNANG
/*******************************************************************************************/
/*
*/
/* File:
port_toggle.c
*/
/* Description:
SETZT ABWECHSELND DIE GERADEN UND DIE
*/
/*
UNGERADEN PORTBITS AUF HIGH
*/
/* Date:
15.10.2005
*/
/* Author:
Hubert Weber
*/
/* Change:
(Date) (Author) (Description)
*/
/*
*/
/*******************************************************************************************/
ELEKTRONIKSCHULE TETTNANG
p1 = 0x55;
p3_0 = 1;
p3_1 = 0;
p3_2 = 1;
p3_3 = 0;
p3_7 = 0;
p4_5 = 0;
for (t=0; t<50000; t++);
}
}
Technikerarbeit
Hubert Weber
Seite 47 von 77
Anleitung
zum Arbeiten mit dem
R8C/13 Microcontrollerboard
Technikerarbeit
Hubert Weber
Seite 48 von 77
ELEKTRONIKSCHULE TETTNANG
3
3.1
Folgende Voraussetzungen sind notwendig, um das Programm in den Controller zu
laden:
•
Flash Development Toolkit 3.4 Basic muss auf dem PC installiert sein
(siehe Kapitel Softwareinstallation)
Es muss ein Programm mit der Dateiendung .mot vorhanden sein.
Dies ist das Dateiformat mit dem der Microcontroller geflasht wird.
Es handelt sich um ein Motorola- Hex- file .
Bei unserem ersten Test verwenden wir die Release- Version
Ein einfaches Programm zum Testen des Controllerboards befindet sich
unter:
cd technikerarbeit\Sample_NC30\ Porttoggle\release .
•
Verbindung vom Controller zum PC muss vorhanden sein:
Über Serielle Schnittstelle:
Nullmodemkabel vom Stecker K5 (Sub-D Stecker in der Mitte) zum
COM-Port des PC’s
Schalter S4 in Richtung IC3 (Max232)
kontrollieren, welche Nummer der COM- Port hat
Externes Netzteil muss angeschlossen sein, Board wird über serielle
Schnittstelle nicht versorgt
Über USB- Schnittstelle:
Schalter S4 Richtung R8C/13 Carrierboard
Schalter S3 in Mittelstellung
mit Verbindungskabel USB Stecker A auf USB Stecker B
Microcontrollerboard mit USB -Port des PC’s verbinden, unter
Start> Systemsteuerung> System> Hardware> Gerätemanager> Anschlüsse
(COM und LPT) erscheint dann:
Prolific USB-to-Serial Comm Port (COMxy)
Nummer des COM- Ports merken, Sie wird zum Einstellen des FlashProgramms benötigt.
•
Microcontrollerboard auf Programmiermodus schalten:
Schiebeschalter S1 Richtung Platinenecke
•
Flashprogramm aufrufen über:
Start> Renesas> Flash Development Toolkit V3.4> Flash Development Toolkit3.4
Basic
Technikerarbeit
Hubert Weber
Seite 49 von 77
ELEKTRONIKSCHULE TETTNANG
Übertragen des Programms vom PC (Host) in den FlashSpeicher des Microcontrollers (Target)
Folgendes Fenster erscheint:
ELEKTRONIKSCHULE TETTNANG
In der Menuleiste auf Options klicken, die Häkchen müssen wie im Bild gesetzt sein.
New Settings anklicken. Beim ersten Start wird dieses Fenster übersprungen, es
erscheint gleich das zweite Fenster:
Technikerarbeit
Hubert Weber
Seite 50 von 77
ELEKTRONIKSCHULE TETTNANG
Das Programm fragt nun nach dem Controllertyp.
Die Bezeichnung, die in dem Fenster oben erscheint, ist genau der Typ, der auf
unserem Board verwendet wurde. Diese Bezeichnung ist auch auf dem Controller
aufgedruckt. Sind alle Einstellungen identisch mit denen im Bild, drücken wir auf
Weiter.
Technikerarbeit
Hubert Weber
Seite 51 von 77
ELEKTRONIKSCHULE TETTNANG
Das Flash Programm braucht nun die Nummer des COM- Ports, über den er die
Daten senden soll. Zur Erinnerung noch mal: die Nummer des COM- Ports kann über
Start> Systemsteuerung> System> Hardware> Gerätemanager> Anschlüsse (COM
und LPT)
ausfindig gemacht werden.
Entsprechende Nummer auswählen und auf WEITER drücken.
Technikerarbeit
Hubert Weber
Seite 52 von 77
ELEKTRONIKSCHULE TETTNANG
Die voreingestellte Übertragungsgeschwindigkeit von 9600 Baud kann so
übernommen werden.
Technikerarbeit
Hubert Weber
Seite 53 von 77
ELEKTRONIKSCHULE TETTNANG
Einen Ausleseschutz gegen unbefugtes Auslesen des Programms im Flash-Speicher
brauchen wir nicht; es sei denn, sie haben was zu verheimlichen.
Doch Vorsicht: ist der Schutz erst mal aktiviert, lässt er sich nicht mehr so einfach
deaktivieren, das Flash kann dann unter Umständen kein Zweites mal mehr
beschrieben werden.
Bei Messaging muss das Häkchen bei Standard gemacht werden.
Technikerarbeit
Hubert Weber
Seite 54 von 77
ELEKTRONIKSCHULE TETTNANG
Jetzt muss noch der Pfad angegeben werden, in dem unser Programm liegt. Mit der
kleinen Taste rechts vom Eingabefenster USER AREA lässt sich ein Browser öffnen,
um die Daten zu suchen. Das Programmfile muss die Dateiendung .mot haben.
Der Pfad für unser kleines Testprogramm auf der CD lautet:
cd technikerarbeit\Sample_NC30\ porttoggle\release
Reset-Taste auf dem Microcontrollerboard kurz drücken.
Mit der Taste Program Flash starten wir den Flash-Vorgang.
Technikerarbeit
Hubert Weber
Seite 55 von 77
Der Flash-vorgang ist nun abgeschlossen. Mit Exit können wir nun das FlashProgramm verlassen.
Wir stellen nun den Mode-Schalter S1 und den Schalter S4 auf Mittelstellung.
Mit dem Drücken der Reset-Taste kann das geladene Programm nun gestartet
werden.
Technikerarbeit
Hubert Weber
Seite 56 von 77
ELEKTRONIKSCHULE TETTNANG
Erscheinen Meldungen mit grünem Text, so hat der Flash-Vorgang schon begonnen.
Nach ca. 30 s müsste dann folgende Meldung erscheinen:
Erscheint diese Meldung, kann das Flash-Programm keine Verbindung zum
Controller herstellen:
•
Verbindungen noch mal überprüfen
•
Schalterstellungen noch mal überprüfen
•
Nummer des verwendeten COM -Ports noch mal überprüfen
Technikerarbeit
Hubert Weber
Seite 57 von 77
ELEKTRONIKSCHULE TETTNANG
Erscheint nach Drücken von Program Flash irgendeine rote Meldung, dann kann der
Flashvorgang wegen eines Fehlers nicht starten.
3.2
Anleitung für das Renesas-Mikrocontrollerboard
3.2.1
Vorstellung des ELEKTOR- Projekts
Die Dezemberausgabe 2005 der Elektronikerzeitschrift ELEKTOR
enthielt als Beigabe einen kleine Platine mit einem Aufgelöteten Mikrocontroller der
Firma Renesas und eine CD mit der dazu passenden Entwicklungsumgebung.
Der Controller kann über eine RS232 Schnittstelle programmiert werden, es sind
keine zusätzlichen Programmieradapter erforderlich.
In der Ausgabe vom Januar 2006 stellte die Zeitschrift noch ein passendes
Applicationsboard für das kleine Mikrocontrollerboard aus der vorigen Ausgabe vor,
das einige Schalter, LED`s, eine Pegelwandler für eine RS232Schnittstelle, ein USBWandler und ein LCD Display enthält, um einfache Programme damit auszutesten.
Die Platine wurde von mir so abgeändert, dass sie mit den in der Schule
vorhandenen Zusatzplatinen kompatibel sind.
In den darauffolgenden Ausgaben wurden immer wieder sehr interessant Projekte mit
diesem Controller vorgestellt.
Da durch diese Werbeaktion des Renesas Distributors GLYNN sehr viele Elektroniker
im Besitz eines solchen Boards gekommen sind haben, sich seitdem auch schon
zahlreiche deutschsprachige Foren im Internet gebildet, in denen interessante
Projekte zu sehen sind aber auch spezielle Probleme erörtert werden.
In den Foren hat der Controller die Bezeichnung R8/C13. Auch auf der Internetseite
der Elektronikzeitschrift ELEKTOR ist ein R8/C13 Forum eingerichtet worden, das
viele hilfreiche Tipps sowohl für Einsteiger als auch für Fortgeschrittene zur
Verfügung stellt:
http://www.elektor.de
Forum:
R8C/13-Board
Auf der Begleit- CD zu diesem Script sind die Interessantesten Projekte und Tipps
aus den Foren enthalten.
3.2.2
Komponenten, die man zum Arbeiten benötigt
Hardware
•
Mikrocontrollerboard mit Mikrocontroller (auf kleiner Carrierplatine
aufgelötet, siehe Bild in Kapitel 5.1)
• Verbindungskabel:
bei Betrieb über USB: Verbindungskabel USB Stecker A auf USB Stecker B
bei Betrieb über RS232: Nullmodemkabel Buchse-Buchse
•
Spannungsversorgung: ca. 8-15 V Gleichspannung, Polung beachten.
Technikerarbeit
Hubert Weber
Seite 58 von 77
ELEKTRONIKSCHULE TETTNANG
Das Mikrocontrollerboard ist eine Weiterentwicklung bzw. Anpassung eines Boards,
das die Elektronikzeitschrift ELEKTOR in der Januarausgabe 2006 vorgestellt hat.
•
Zusatzplatinen, je nach Anwendung
•
Verbindungskabel 10-polig zwischen Zusatzplatinen und Controllerboard
•
Software
Die Software kann auch unter http://www.m16c.de kostenlos heruntergeladen
werden, es handelt sich dabei um eine Version, die vom Codeumfang auf 64 k
begrenzt ist, was bei einem Flash Speicher von 16 k nicht weiter tragisch ist.
Die benötigte Software ist auch auf der Begleit- CD enthalten:
•
KD30:
Monitor/ Debugger
•
NC30:
C-Compiler, dient dem erstellen von c-Programmen
•
Debugger Package
•
Flash Development Toolkit, dient zum Flashen des Controllers
•
Treiber für USB Wandler auf dem Mikrocontrollerboard
Wichtig:
Der Compiler legt beim Compilieren auf dem Laufwerk, auf dem die
Entwicklungsumgebung installiert wurde ein temporäres Verzeichnis an. Ohne
Schreibrechte auf dieses Verzeichnis funktioniert der Compiliervorgang nicht.
Unter
Tools->Administration->Toolchain->Properties ->Registerkarte 'Environment'->
TMP30
kann der Ort des temporären Verzeichnisses eingesehen werden und gegebenenfalls
freigegeben werden.
Technikerarbeit
Hubert Weber
Seite 59 von 77
ELEKTRONIKSCHULE TETTNANG
Kleiner Tipp vom Bastler:
ein ausgedientes Handynetzteil ist hier optimal geeignet, die Leerlaufspannung ist
meist hoch genug, um das Board zu betreiben.
Bei Betrieb über USB reicht auch die Speisung über den USB -Port aus.
3.2.3
Installationsreihenfolge:
1.
KD30: (Monitor/ Debugger) installieren:
cd technikerarbeit\Software\kd30v400r1\KD30V410R1_E_20041203.EXE
Installation starten, Pfad C:\MTOOL\ bestätigen
2
NC30: (C-Compiler) installieren:
cd technikerarbeit\Software\nc30v530r2_hew\nc30wav530r02_2_ev.exe
vorgeschlagenen Pfad bestätigen, angezeigter site-code ist nur für Feischalten
der Vollversion von Bedeutung, kann also ignoriert werden.
3.
Autoupdate über Internet durchführen, ist dies nicht möglich, dann Update von
CD installieren:
cd technikerarbeit\Software\HEW_V.4.00.03.001_Update\hewv40003u.exe
werden die Updates nicht installiert, dann funktionieren die Beispiele im
Ordner Sample_NC30 nicht
PC-Neustart durchführen
4.
Debugger Package installieren:
cd technikerarbeit\Software\Debugger Package\m16cdebuggerv100r01.exe
Lizenzbedingungen bestätigen
PC-Neustart durchführen
5.
Flash Development Toolkit installieren:
cd technikerarbeit\Software\Flasher_FDT\ fdtv304r00.exe
6.
Teiber für USB-Wanlder installieren:
cd technikerarbeit\Software\USB-Treiber\ PL-2303 Driver Installer.exe
Teiber installiert sich selber
PC-Neustart durchführen
Technikerarbeit
Hubert Weber
Seite 60 von 77
ELEKTRONIKSCHULE TETTNANG
Es ist wichtig, die Installationsreihenfolge einzuhalten, da Teile der Programme in
andere Programme eingebunden werden.
Unter Start/Programme befindet sich nun eine Programmgruppe RENESAS
Start> Systemsteuerung> System> Hardware> Gerätemanager> Anschlüsse (COM
und LPT)
Technikerarbeit
Hubert Weber
Seite 61 von 77
ELEKTRONIKSCHULE TETTNANG
Hinweis zum USB-Anschluss: Ist die USB Verbindung zum Controllerboard
hergestellt, wird der Schnittstelle eine COM- Nummer zugewiesen. Diese kann sich
jedoch ändern, wenn der USB- Port gewechselt wird.
Man kann die Nummer des zugewiesenen COM- Ports herausfinden über:
3.2.4
Vorstellung des R8C/13 Microcontrollerboards
Das Mikrocontrollerboard besteht im wesentlichen aus folgenden Schaltungsteilen:
•
R8C/13 Board auf Carrierplatine mit Mikrocontroller, Quarz und
einigen Pull-up-Widerständen
•
Verbindungsanschlüsse Ports-Zusatzplatinen
•
Spannungsstabilisierung für Betrieb über externes Netzteil
•
2 RS232 Schnittstellenwandler mit Max232 und jeweils Sub-D
Stecker
•
USB-Wandlereinheit
Anschlüsse und Bedienelemente
1
2
3
4
5
6
Anschluss externe Spannungsversorgung
Serielle Schnittstelle 0
Serielle Schnittstelle 1
Betriebsartenschalter Programmier oder Run-Modus
Reset-Taste
Umschalter serielle Schnittstelle1 des Controller zu Anschluss 8 oder
Anschluss 3
Technikerarbeit
Hubert Weber
Seite 62 von 77
ELEKTRONIKSCHULE TETTNANG
Detaillierte Pläne zum Microcontrollerboard befinden sich im Kapitel
Fertigungsunterlagen
7
3.2.5
Vorstellung des Renesas-Controllers
Eines der wichtigsten Werkzeuge beim Arbeiten mit diesem Controller ist die
Verwendung der Handbücher. Sie befinden sich auf der CD unter
cd technikerarbeit\Datasheets\R8C13.
die Handbücher sind in drei Teile aufgeteilt:
Kurzbeschreibung:
•
•
•
die wichtigsten Leistungsmerkmale
Gehäuse, Abmessungen, Anschlüsse
Spezialfunktionsregister
Hardwaremanual:
•
•
•
spezifische elektrische Daten
Blockschaltbilder aller Funktionsgruppen des Controllers
Tabellen mit genauen Funktionen der Spezialfunktionsregister
Softwaremanual:
•
•
detaillierte Beschreibung der Assemblerbefehle
Angaben über die Anzahl der Zyklen pro Befehl
Technikerarbeit
Hubert Weber
Seite 63 von 77
ELEKTRONIKSCHULE TETTNANG
8
9
10
Umschalter serielle Schnittstelle0 des Controller zu Anschluss 8 oder
Anschluss 2
USB -Anschluss zur Verbindung mit USB- Port des PCs
Carrier mit Microcontroller R8C/13
Ports zum Verbinden mit Zusatzplatinen
3.2.6
Blockschaltbild
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit
Hubert Weber
Seite 64 von 77
3.2.7
Leistungsdaten
Peripheral
function
Performance
89 instructions
50 ns (f(XIN) = 20 MHZ, VCC = 3.0 to 5.5 V)
100 ns (f(XIN) = 10 MHZ, VCC= 2.7 to 5.5 V)
Single-chip
1M bytes
See Table 1.2.
Internal: 11 factors, External: 5 factors,
Software: 4 factors, Priority level: 7 levels
15 bits x 1 (with prescaler)
Reset start function selectable
Timer X: 8 bits x 1 channel, Timer Y: 8 bits x 1 channel,
Timer Z: 8 bits x 1 channel
(Each timer equipped with 8-bit prescaler) Timer C: 16
bits x 1 channel
Operating mode
Address space
Memory capacity
Interrupt
Watchdog timer
Timer
Circuits of input capture and output compare.
•1 channel
Clock synchronous, UART
•1 channel
UART
10-bit A/D converter: 1 circuit, 12 channels
2 circuits
•Main clock generation circuit (Equipped with a built-in
feedback resistor)
•On-chip oscillator (high-speed, low-speed)
On high-speed on-chip oscillator the frequency adjustment function is usable.
Serial interface
A/D converter
Clock generation circuit
Oscillation stop detection
function
Voltage detection circuit
Power on reset circuit
Port
Electrical
characteristics
Stop detection of main clock oscillation
Power supply voltage
Power consumption
Flash memory
Program/erase voltage
Number of program/erase
Operating ambient temperature
Package
Technikerarbeit
Hubert Weber
Included
Included
Input/Output: 22 (including LED drive port), Input: 2
(LED drive I/O port: 8)
VCC= 3.0 to 5.5V (f(XIN) = 20MHZ)
VCC= 2.7 to 5.5V (f(XIN) = 10MHZ)
Typ.9 mA (VCC= 5.0V, (f(XIN) = 20MHZ,High-speed
mode)
Typ.5 mA (VCC= 3.0V, (f(XIN) = 10MHZ,High-speed
mode)
Typ.35 µA (VCC= 3.0V, Wait mode, Peripheral clock
stops) Typ.0.7 µA (VCC= 3.0V, Stop mode)
VCC= 2.7 to 5.5 V
10,000 times (Data area)
1,000 times (Program area)
-20 to 85°C
-40 to 85°C (D-version)
32-pin plastic mold LQFP
Seite 65 von 77
ELEKTRONIKSCHULE TETTNANG
CPU
Item
Number of basic
instructions
Shortest instruction
execution time
3.2.8
Speicheraufteilung
ELEKTRONIKSCHULE TETTNANG
Auf unserem Board ist der Controllertyp R5F21134FP eingesetzt, d.h. er hat einen
Flash-Speicher (ROM) von 16 kbyte und ein RAM mit 1 kbyte
Eine genaue Beschreibung aller Funktionsgruppen des Controllers wäre hier zu
umfangreich; schließlich hat alleine das Hardwaremanual schon über 200 Seiten.
Anhand der Beispiele Ein-Ausgangsports und Taktgenerator möchte ich aufzeigen,
wie die genauen Funktionen einer Funktionsgruppe festgelegt werden.
3.2.9
Ein-Ausgangsports
Die Funktion der Ports, ob Eingang oder Ausgang, wird bei diesem Controller in den
jeweiligen Spezialfunktionsregister PD 0, PD1, PD3 und PD 4 festgelegt. Genaue
Informationen sind im Hardwaremanual unter Kapitel SFR Page Reference und
Kapitel 15. Eine zweistellige HEX -Zahl weist jedem der 8 Bits die Richtung zu 1
bedeutet Ausgang, 0 bedeutet Eingang.
pd0 = 0x0F würde bedeuten, dass Bit 0-3 als Ausgang gesetzt sind, Bit 4-7 als
Eingang
Technikerarbeit
Hubert Weber
Seite 66 von 77
Die Eingangszustände der Ports können aus den PI-Registern (Port-Input-Register)
Pi0, Pi1, Pi3und Pi4 ausgelesen werden.
Bei den Ports P0; P1; P3 können über ein Pull-Up Control-Register (PUR0; PUR1)
Pull-Up - Widerstände Hinzugeschalten werden, um eine eindeutige Pegeldefinition
zu erreichen, wenn die Ports als Eingänge benutzt werden. Man kann sich beim
Anschluss eines Tasters dadurch auch die externen Pull-Up Widerstände sparen.
So sieht z.B. die Eingangsbeschaltung von Port 1.0 aus:
Über einen zweiten Transistor gegen Masse kann bei diesem Port der
Ausgangsstrom bis zu 30 mA nach Vdd betragen, es muss allerdings wieder das
entsprechende Spezialfunktionsregister DRR entsprechend beschrieben werden, um
den zweiten Transistor zu aktivieren. Wie die Spezialfunktionsregister beschrieben
werden ist gut in den nächsten zwei Tabellen ersichtlich:
Technikerarbeit
Hubert Weber
Seite 67 von 77
ELEKTRONIKSCHULE TETTNANG
Port 0_0 dient auch als Ausgang für die serielle Schnittstelle 1, die gleichzeitig auch
zum Flashen und zum debuggen benötigt wird. Sie ist daher durch einen
Schreibschutz versehen, der erst durch setzen von Bit PRC2 im Register PRCR auf 1
deaktiviert werden kann. Siehe auch Hardwaremanual Kapitel 7
ELEKTRONIKSCHULE TETTNANG
Es lohnt sich also wirklich, in den Datenblättern rumzustöbern.
Die ganzen Tabellen für die Ein und Ausgänge sind im Kapitel 15 des
Hardwaremanuals zu finden.
Technikerarbeit
Hubert Weber
Seite 68 von 77
3.2.10 Taktgenerator
/*------------------------------------------------- Change on-chip oscillator clock to Main clock -------------------------------------------------*/
prc0 = 1;
cm13 = 1;
cm15 = 1;
cm05 = 0;
cm16 = 0;
cm17 = 0;
cm06 = 0;
asm("nop");
asm("nop");
asm("nop");
asm("nop");
ocd2 = 0;
prc0 = 0;
/* Protect off */
/* Xin Xout */
/* XCIN-XCOUT drive capacity select bit : HIGH */
/* Xin on */
/* Main clock = No division mode */
/* CM16 and CM17 enable */
/* Waiting for stable of oscillation */
/* Main clock change */
/* Protect on */
dafür müssen wieder zahlreiche Werte in den Spezialfunktionsregistern geändert
werden und der Schreibschutz kurzzeitig außer Kraft gesetzt werden. Nach einer
kurzen Zeit hat sich der Quarz eingeschwungen und es steht eine hochgenaue
Taktfrequenz mit 20 MHz zur Verfügung.
Genauere Informationen zum Thema Takterzeugung stehen Kapitel 6 des
Hardwaremanuals.
Technikerarbeit
Hubert Weber
Seite 69 von 77
ELEKTRONIKSCHULE TETTNANG
Der Taktgenerator des verwendeten Controllers hat verschiedene Betriebsarten.
Nach dem Reset läuft als erstes der Low- Speed on Chip Oszillator an. Er benötigt
keine externe Beschaltung, auch keinen Quarz und läuft mit ca. 128 kHz . Die
Frequenz ist allerdings nicht besonders genau, aber dies ist ja nicht bei allen
Anwendungen wichtig.
Durch eine kleine Routine am Anfang des Programms kann die Takterzeugung auf
den externen Quarz mit bis zu 20 MHz umgeschaltet werden:
3.2.11 Erstellen eigener Projekte
mit OK bestätigen
Unter Workspace Projektnamen vergeben
Technikerarbeit
Hubert Weber
Seite 70 von 77
ELEKTRONIKSCHULE TETTNANG
Neue Projekte werden in dem Programm HEW (High performance Embedded
Workshop) erstellt. Nach dem start des Programms erscheint folgendes Fenster:
ELEKTRONIKSCHULE TETTNANG
Unter CPU-Serie R8C/Tiny auswählen
unter Target type wieder R8C/Tiny auswählen, dann bestätigen
Technikerarbeit
Hubert Weber
Seite 71 von 77
ELEKTRONIKSCHULE TETTNANG
bestätigen
Stack-Einstellungen bestätigen
Technikerarbeit
Hubert Weber
Seite 72 von 77
ELEKTRONIKSCHULE TETTNANG
External Debugger M16 Family KD30V.4.10Release 1 auswählen, dann weiter
mit Finish legt der Compiler die angezeigten Dateien an
Technikerarbeit
Hubert Weber
Seite 73 von 77
Startupdatei
Verwaltung von Interruptvektoren
c-Programm
Jetzt muss nur noch die header-Datei sfr_r813.h mit den Deklarationen aller
Funktionsregister des Controllers R8C/13 in das Arbeitsverzeichnis kopiert werden.
Diese Datei befindet sich auf der CD unter cd technikerarbeit\SFR_Header\R8C13
Am beginn des c-Programms muss diese noch mit #include "sfr_r813.h aufgerufen
werden.
Ist das das C-Programm fertig, kann es mit Build all compiliert werden.
Technikerarbeit
Hubert Weber
Seite 74 von 77
ELEKTRONIKSCHULE TETTNANG
Ncrt0.a30
Sect30 .inc
Test1.c
ELEKTRONIKSCHULE TETTNANG
Technikerarbeit
Hubert Weber
Seite 75 von 77
3.2.12 Inhalte der CD-Technikerarbeit
Technikerarbeit
Hubert Weber
Seite 76 von 77
ELEKTRONIKSCHULE TETTNANG
In der Schaltfläche rechts oben muss Release stehen. Der Compilier erzeugt nun ein
File mit der Dateiendung . mot und schreibt dieses in das Arbeitsverzeichnis in den
Unterordner Release. Von dort aus kann es dann mit dem Flash development Toolkit
Basic aufgerufen werden und in den Controller geflasht werden.
3.2.13 Quellenangaben
•
•
•
1)
ELEKTOR-Zeitschriften 12/2005, 01/2006
Datenblätter des Controllers R8/C13
Forumseite R8C/13 Projekt im Internet:
http://www.elektor.de/Default.aspx?tabid=109
Dieser Text wurde originalgetreu übernommen aus
http://de.wikipedia.org
Technikerarbeit
Hubert Weber
Seite 77 von 77
ELEKTRONIKSCHULE TETTNANG
Verwendete Quellen: