Rechnermodul CHIP_3003

Hardware Software Pinbelegung

zurück zur Übersicht

Das Rechnermodul verwendet die Hitachi 16-bit CPU H8/3003 und eignet sich für Anwendungen der Meß-, Regel- und Steuerungstechnik kleinen bis mittleren Leistungsbedarfs, der von 8-bit Controllern nicht mehr abgedeckt werden kann. Dem Anwender stehen an 2 x 32-poligen Stiftleisten alle I/O-Signale zur Verfügung, sodaß insbesondere bei kleinen Stückzahlen das Schaltungsdesign stark vereinfacht wird.

Die Schaltung ist so ausgelegt, daß ein Flash-EPROM im laufenden Betrieb programmiert werden kann, und die vielseitigen I/O-Ports voll zur Verfügung stehen. Per Software läßt sich das RAM auf Adresse ab 0x0 legen, sodaß die Exception-Vectoren des Prozessors im RAM liegen und vom laufenden Programm umprogrammiert werden können.

Der Prozessor wird ausführlich in Datenbüchern beschrieben, die auch auf der Hitachi CD 'Electronic Components Databook' enthalten sind (Bezug über Hitachi-Distributoren). Auf der CD befindet sich zudem ein kostenloser GNU C-Compiler.

Hardware:

Alle Bauteile finden auf einer 4-lagigen Leiterplatte von ca. 86 x 51 mm² Platz, die neben der CPU H8/3003 mit RAM 128KB, EPROM 128KB sowie einem Reset-Controller TLC7705 bestückt ist (standardmäßig DIL-Fassungen). Die CPU wird im 8-bit-Modus mit 16MHz und 1MB linearem Adressraum betrieben. Die I/O-Signale sind auf 2 x 32-poligen Stiftleisten zur Lötseite herausgeführt. Zur Arretierung auf einer Basisplatine ist eine Bohrung 3,5 mm vorgesehen. Der Abstand zur Basisplatine beträgt ca. 10 mm.

Optional können ein Uhrenbaustein PCF8583 sowie ein EEPROM 24C02 bestückt werden (SMD unterhalb vom EPROM); diese werden über einen mit Software emulierten IIC-Bus angesprochen. RAM und Uhr lassen sich mit einer Lithiumbatterie auf der Lötseite der Platine oder mit externer Batterie puffern. Durch Umschalten in den 16MB Adressmodus können auch 256KB oder 512KB EPROMs verwendet werden (Lötbrücken).

Beim Absinken der Versorgungsspannung löst die Reset-Schaltung zunächst ein NMI-Signal und verzögert hierzu den eigentlichen Prozessor-Reset aus. Hierdurch können Zugriffe auf das RAM beim Reset unterdrückt werden (keine 'zerstückelten' Zugriffe, Datensicherheit). Als 'VREF' für den A/D-Wandler wird die LC-gefilterte +5 Volt Versorgungsspannung verwendet; die analoge Masse 'AGND' wird über 10 Ohm von 'GND' entkoppelt. 'VREF' und 'AGND' können auch extern vorgegeben/verwendet werden. Treiberbausteine für die seriellen Schnittstellen werden je nach Bedarf extern ergänzt.

Stromversorgung: 5 Volt, ca. 55 mA bei maximaler Bestückung. Seitenanfang

Software:

  Nach einem Reset werden das EPROM ab Adresse 0x0 und das RAM ab Adresse 0x20000 angesprochen. Dies kann auch so belassen werden. Vorteilhafterweise wird jedoch nach dem Prozessor-Reset ein kleines Startup-Programm ausgeführt, welches das RAM in den Adressbereich 0x0 - 0x1FFFF und das EPROM in den Bereich 0x80000 - 0x9FFFF legt. Somit ist es möglich, Programmteile (Interrupt-Routinen) vom EPROM ins RAM (intern oder extern) zu kopieren und die Vektoren ab 0x0 entsprechend zu setzen. Die Programmausführung läßt sich dadurch deutlich beschleunigen (keine Wartezyklen, 16-bit breite Zugriffe beim internen RAM).  Das Flash-EPROM ist mit einem Startup-Programm vorprogrammiert, daß die Startadresse des EPROM nach 0x80000 und das RAM nach 0x0 legt; anschließend wird das Programm ab 0x84000 getestet und ausgeführt, sofern es sich um plausiblen Code handelt.   Die eigentlichen Programmier-Routinen befinden sich selbst nicht im EPROM, sondern werden zunächst mit einem MS-DOS-Programm 'TRANSFER.EXE' über die 1. serielle Schnittstelle (RxD0/TxD0) vom PC ins RAM geladen und dort gestartet. Somit ist eine unbeabsichtigte Programmierung ausgeschlossen, und die Programmier-Routine kann auch nachträglich an neuere Flash-EPROMs angepaßt werden ! Anschließend wird dann das Anwendungsprogramm mit 'TRANSFER.EXE' ins Flash programmiert. Ein Anwendungsprogramm muß als S-Record vorliegen und mit einer 32 Byte Tabelle beginnen (GCC 2.7.2 Linker-Script). Diese Tabelle wird teilweise von 'TRANSFER.EXE' angepaßt (Startadresse, Länge, Prüfsumme); der verwendete Compiler/Linker ist dabei beliebig (IAR, GNU CC).   Die Programmierung wird innerhalb der ersten Sekunde nach einem Reset-Signal erwartet (Einschalten des Gerätes) oder durch ein Break-Signal des PC eingeleitet, welches das laufende Anwendungsprogramm abbrechen kann. Das Break-Signal kann per Software zugelassen oder auch unterbunden werden (z.B. Sperre mit Schlüsselschalter). Es werden maximal etwa 4KB/s programmiert.

Eine ausführliche Beschreibung der Flash-EPROM-Programmierung findet sich in der Zeitschrift 'ELEKTRONIK' Heft 26/1997 Seite 70.

Neu: Die neuen Ausführungen der Leiterplatte können wahlweise mit 128k oder 512k RAM bestückt werden ! Die Schaltung wurde hierzu um einen 74HCT00 ergänzt (wie bei CHIP_2352).

Treiberroutinen und Entwicklungsunterstützung auf Anfrage. Seitenanfang

 

Pinbelegung der Stiftleisten:

Pin
Reihe 1
Pin
Reihe 2
1
GND
64
AGND
2
+5V
63
AIN7
3
/RES-IN
62
AIN6
4
PB.0
61
AIN5
5
PB.1
60
AIN4
6
PB.2
59
AIN3
7
PB.3
58
AIN2
8
PB.4
57
AIN1
9
PB.5
56
AIN0
10
PB.6
55
VREF
11
PB.7
54
P5.4
12
PC.0
53
P5.5
13
PC.1
52
P5.6
14
PC.3
51
P5.7
15
PC.4
50
P8.0
16
PC.5
49
P8.1

17

PC.6

48

P8.2

18
PC.7
47
P8.3
19
P9.0/TXD0
46
PA.0
20
P9.1/TXD1
45
PA.1
21
P9.2/RXD0
44
PA.2
22
P9.3/RXD1
43
PA.3
23
P9.4
42
PA.4
24
P9.5
41
PA.5
25
P4.0
40
PA.6
26
P4.1
39
PA.7
27
P4.2
38
P6.2/IIC-SCL
28
P4.3
37
P6.1/IIC-SDA
29
P4.4
36
P6.0
30
P4.5
35
/RES-OUT
31
P4.6
34
VBatt
32
P4.7
33
GND

Anfragen:

Seitenanfang zurück zur Übersicht