CONTROL COMPUTER & DATA COLLECTION MODULE
The TDS9092 is an 8-bit control computer based on a masked Hitachi 6301 microprocessor. Despite the small size and low power requirement it is packed with important features which make it easy to use in solving your control problems.
The interactive Forth specially written for the board gives easy access to all its functions and allows software to be written quickly. The 16k byte Forth includes LCD and keyboard drivers, together with many other utilities and a full symbolic assembler. You write programs in high level language, mixing it with assembler if required.
The TDS9092 clock frequency is 4.9152MHz and the microcycle time 814ns.
q 16K bytes RAM for data collection applications, arrays and variables.
q 29K bytes user application space. Use with a 32K byte RAM during development. This is copied into an PROM to make the code permanent.
q 256 bytes non-volatile EEPROM (2K or 8K bytes optional).
q 16K bytes Forth system (see below).
35 lines are available for digital input and output. Two of these may be used as maskable interrupt inputs and another pair can drive I2C bus circuits.
This is a two-wire system for use with low-cost peripherals such as A to D converters, clocks, I/O, RAMs, EEPROMs, etc. marketed by Philips, Xicor, Microchip Technology and others. The board has a PCF8582 256-byte EEPROM connected on this bus but, being socketed, can be replaced by larger devices. Other I2C chips can be added externally.
On the board are two serial drivers and receivers using true RS232 format and voltages. They can be used to give a single asynchronous serial link with handshake or as two separate serial links without. All baud rates 75 to 76.8K are supported on port 1. Port 2 can be used at all rates up to 9600 baud. Although the computer has a single power supply of +6 to +16V the serial ports use �9V generated on board to give output logic levels which meet RS232 specifications.
The microprocessor used is the Hitachi HD63B01Y0 which is an 8-bit device with hardware multiply, 16-bit instructions, direct bit manipulations with memory and input/output. It has much on-chip hardware such as two timers, synchronous or asynchronous serial port, and a very versatile interrupt system.
All the capabilities of the microprocessor are available to the TDS9092 user, but through the high-level language Forth, which makes them easier to employ. Access to some of the microprocessor hardware facilities are already built into the Forth system, but the user is free to use them in his own independent way, via Forth or assembler.
A unique software and hardware system enables up to 64 keys to be connected to the computer and only 8 of the parallel input/output lines are required. You connect a particular parallel output port to one side of an 8 x 8 key matrix via diodes. The other side is returned via another 8 diodes to the data bus. The Forth system has words INKEY and NEWKEYwhich scan the keyboard and return 0 if no key is pressed and 1 to 64 otherwise. The latter word only gives the key number if it was pressed since the last scan.
LIQUID CRYSTAL DISPLAYS
Any alphanumeric LCD based on the HD44780 chip connects directly to TDS9092, software to drive it is built into the board. One external chip enables up to 8 LCDs to be connected and the software caters for them all simultaneously.
Graphics LCDs also connect without any extra hardware; driver software is supplied on disk for displays based on the HD61830 graphics chip. The following are examples of Hitachi units, although other manufacturers make graphics LCDs with the HD61830 controller:
File _G61830.TDS is needed for graphics output and _C61830.TDS for multi-line character displays (e.g. 16 lines of 30 characters on LMG6401PLGE).
The full data and address buses as well as 5 uncommitted decoded addresses for use as chip selects of peripherals are provided. LCDs, extra parallel I/O and similar devices can be added without a single other interface chip. Each decode covers a memory span of 16 locations. Three are not strobed with the E clock signal and are suitable for driving most peripherals such as octal latches or graphics LCDs. The other two are strobed with E. One is negative active, the other positive active. The latter is exactly right for input to alphanumeric LCD displays.
There are two hardware timers; one is 8-bit and the other 16-bit. The 8-bit counter can be clocked internally at any of 3 rates, or externally. The 16-bit counter is clocked internally, has two output capture registers and an input capture mode. Multiple interrupts are associated with the timers to process asynchronous events either in high level Forth or assembler.
If the microprocessor crashes through power spike or otherwise, the watchdog timer will reset the system and the application software will be re-entered. This is a counter external to the microprocessor. It is reset by many Forth words and normally you will not notice its action, but it will time-out and re-start the system after 106ms have elapsed since a watchdog reset. The timer is restarted by WDT or a word which includes it.
Controller Area Network (CAN) connects multiple TDS9092, TDS2020F computers and a PC for distributed real-time control applications. The TDS2020CAN board goes under the TDS9092 computer to form a CAN node.
The Controller Area Network data rate can be from 10kbit/s to 1Mbit/s giving recommended distances of 40 to 1000 metres over two twisted pairs, one for the data, the other to carry power and ground. Up to 110 nodes may be connected. It is highly secure and is even used in automotive applications.
A single supply of +6V to +16V is used, typical current 15mA. A low power operational mode consumes only 3mA and needs no external hardware support. The board has a �9V generator for use by the serial ports and this can be turned off by software to save power. The negative supply is also useful for some external peripherals. There is a position for a 470�F/16V capacitor to be added on-board to allow power to be taken from a 6V mains transformer. There is a 'battery low' output which indicates when the input is below 5.8V and also provision for a touch switch turn-on, again primarily for battery-powered applications. The regulator on the board can supply up to 180mA so there is extra current available to power any circuits particular to the application.
The TDS9092 bus is compatible with the 6300, 6800, 68000 and 6500 series of microprocessor peripherals in logic levels and timing. In addition the correct control signals are provided for 'Intel-style' peripherals such as 8255 and many A to D converters. The data bus is not multiplexed. In practice limit the length of the data and address buses off the board to 300mm.
Board size is 100mm x 72mm with mounting holes for 2.5mm screws. Maximum height, excluding pin connectors, is 15mm. With the TDS9092-PIN in pin sockets of the type supplied, the distance between the computer and the mother board is 11 � 1mm. This should be the length of spacers, if used. The operating temperature is -10 to 70�C. Pin connectors are standard (TDS9092-PIN) with a DIN 41612 type C connector optional (TDS9092-PLUG). The connections all fall on a 0.1 inch matrix so that the board can easily mount on a prototyping board with a matrix of holes if required. There is a blue reset button in the corner of the board.
This is Fig-Forth with many extensions useful to developers of single board systems. For example the number of microseconds taken by any Forth word can be accurately measured in real time. The language has been specifically implemented for the 6301 microprocessor and uses its facilities wherever possible, e.g. Forth multiplies are built up from the 8 x 8 hardware multiplier. Its bit manipulation instructions are employed.
The parameter stack is the same as the machine's hardware stack. The application code can be put into PROM to create a stand-alone system.
Apart from Forth, the system ROM has a symbolic assembler enabling you to write machine code directly on the board. No cross-software is necessary, so a defined assembler routine can be tested immediately without any down-loading step. Interactive debugging of assembler is very powerful.
The Forth system is copyright TDS Ltd and purchase of a TDS9092 conveys a licence to use that copy of it. There are no royalties of any kind.
USING FORTH IN THE FIELD
When development is over and TDS9092 is being used in manufacture, that is not the end of the use of Forth. It helps repair and maintenance because the language is on-board. A connector which gives serial access to the Forth computer is built into your instrument. Now with a PC or hand held terminal gain access to the internal language system. By pressing Ctrl+C (or a password) you can individually use all the procedures which make up the application.
For example in a temperature measurement device with a connected A to D chip, the Analog to Digital routine can be separately exercised to see if the fault is with the input transducer or amplifier. If not, examine the other procedures individually. Test the Liquid Crystal Display by writing a few characters to it using the LCD routine, or try the keyboard subsystem by pressing a key to see if the keyboard subroutine returns the correct number. On-board Forth is very useful during design and debugging but the ability to access individual software procedures in a finished product is invaluable.
FORTH ROM EXTENSIONS
Among the extensions included in the Forth ROM are:
q Keyboard scanning Alphanumeric Liquid Crystal Display output
q I2C bus peripheral support
q Interrupts written in assembly code or Forth
q Watchdog timer servicing
q Low power operation
q Complete symbolic assembler
q Vectored serial I/O and other vectored words
q Hex, ASCII & control characters in forms $A4FF "A ^A
q Double number (32-bit) arithmetic & stack handling, e.g. D* 2ROT
q Execution time measurement accurate to 1�s
Use of a PC is best. TDS-PC for Windows offers a 'development environment' including terminal emulation and storage of your source code on disk, although your program is still compiled and debugged on-line in the TDS9092. TDS-PC for Windows also runs on Macintosh PC emulators.
There is interfacing to your usual word-processor so that writing source code is made easier and can be laid out with lots of comments and correctly indented structures. Single keys invoke the word-processor, compilation and other features. There is an INCLUDE facility so that source files can be nested.
Once your program is developed and working correctly a PROM programmer is needed. It should be capable of programming 27C128 and 27C256 PROMs. The TDS961 add-on board gives the TDS9092 PROM programming capability if you are not already equipped.
The TDS-PC support software also contains sub-programs in Forth and assembler which help in developing TDS9092 applications.
In addition, for a fee there is a fully-featured floating point and extended string handling package for the TDS9092, order code TDS-FLOAT.
TDS2020F EMBEDDED COMPUTER
The TDS2020F is a powerful 16-bit control computer based on the Hitachi H8/532 microprocessor and features direct compilation to Flash-EEPROM. This is convenient and avoids the cost and development cycle of a PROM programmer.
There is a further advantage-you can zap the program remotely over a modem and recompile. In addition to the features of the TDS9092 it has on-board A to D and D to A converters and full pre-emptive multitasking capability. There are two RS232 ports, two watchdog timers, four hardware timer-counters and up to 41 parallel Input/Outputs, depending on which other facilities are being used. Typical current drain is 32mA, and just 155�A in a low-power operational mode. Up to 512k bytes of RAM, EEPROM or Flash memory can be used to store vital data, while optional PCMCIA Card Memory and digital camera Compact Flash adapters offer unlimited memory capacity for portable data logging applications. The TDS2020F is very similar to the TDS9092 and you can easily migrate between the two. Ask for the separate data sheet.
Conversion of a TDS9092 application to TDS2020F should be fairly straightforward. The TDS2020F is larger at 100 x 80mm (against 100 x 72mm) but the four mounting holes are unchanged and the reset button is in the same corner.
As far as possible TDS2020F pin connections correspond to equivalent ones on the TDS9092. There is an extra row of 32 pins named z1 to z32 and no internal connectors, except for ports A and B. Most pins correspond to those on the TDS9092 but some names change to match the H8/532 Hitachi documentation.
The actions of Forth words with identical names are mostly the same on both the TDS2020F (using Forth ROM version 4.02) and the TDS9092; programs may need only small modifications to move them from one to the other.