 |
 |
 |
|
|
 |

| 应用笔记708
|
Exploring Tiny InterNet Interfaces (TINI) |
Abstract: The TINI® platform consists of a microcontroller-based chipset and supporting firmware, both created by Dallas Semiconductor. This platform, along with hardware and software development kit, allows rapid prototyping and development of IP network-enabled measurement and control systems using the industry-standard Java™ programming language.
Introduction
The Tiny InterNet Interfaces (TINI) platform consists of a microcontroller-based chipset and supporting firmware, both created by Dallas Semiconductor. This platform, along with hardware and software development kits, allows rapid prototyping and deployment of IP network-enabled, real-world measurement and control systems using the industry-standard Java programming language (Figure 1).
 Figure 1. The TINI platform allow rapid prototyping and deployment of IP network-enabled real-world measurement.
Getting Started with TINI
The fastest way to begin developing an embedded application is to use a prebuilt, proven reference design for the hardware portion of the system. The TINI Verification Module (TVM) was developed for this purpose; it also serves as a reference design for the DS80C400 network microcontroller that forms the center of the TINI chipset contained on the TVM. Dallas Semiconductor provides complete schematics and a parts list for the TVM ensure that all or part of the design can be reproduced to meet the requirements of a specific project. In many cases, only a subset of the complete TINI chipset is needed for a targeted, end-equipment solution. Using the TVM allows software development to begin using a pretested design while the development of a more optimized hardware design proceeds in parallel, reducing overall time-to-market.
The DSTINIm400 is a TVM implemented on a 144-pin SO DIMM, a form factor made popular by notebook PC DRAM. Together with the accompanying TINIs400 sockets board, it forms a comprehensive development system that includes the following features:
| - |
DS80C400 processor running at 29.5MHz
|
| - |
1MB battery-backed SRAM and 1MB flash ROM
|
| - |
10/100 base-T Ethernet connection
|
| - |
Two 1-Wire® ports (one for internal on-board use and one for external connections)
|
| - |
Two RS-232 serial ports, including full-flow control lines on one port, and a CAN and an SPI™ port |
Besides the TINIm400 module and TINIs400 sockets board, the only hardware needed is a power supply (+5V DC center positive) and appropriate cables for connections to the sockets board such as Cat 5 for Ethernet, 9-pin sub D for serial, and RJ11 for 1-Wire. All software required to develop and run Java applications on the TINI platform is available as a free download from www.maxim-ic.com and www.sun.com.
From the Ground Up
Consider this application example - a remote agricultural station that needs to monitor temperature, rainfall, and humidity levels and adjust an irrigation system based on measured weather patterns. A personal computer could perform this task, but its uptime might not be sufficient for an unattended application of this type. As a sub-PC system, the TINI chipset is much less expensive, more compact, requires far less power, and is easier to maintain. In addition, TINI supports many low-level communications interfaces that PCs generally do not.
With the wide range of industry-standard interfaces supported by TINI, a broad range of sensors and actuators can be used to collect the weather data and control the irrigation system. If a device uses an interface not directly supported by TINI, custom I/O libraries can be used to map the device onto the TINI memory bus with appropriate support circuitry. The TINI OS is multitasking and multithreaded, so the agricultural station software can simultaneously communicate with multiple devices while it processes data in the background (Figure 2).
 Figure 2. By using the TINI platform, equipment can be monitored and controlled over wireless or wired networks.
Once a data path has been established between the sensors/actuators and TINI, incoming data must be recorded and analyzed by software. TINI's ability to run Java code frees developers from the need to be familiar with the internal details of the DS80C400 processor. However, time-critical sections of code can be customized if necessary, using the Java native-method mechanism to include highly optimized assembly code.
The TINI runtime environment contains a full Java VM and API (applications programming interface) that includes a subset of the Java 1.1 API as well as additional standards-based functionality, such as device I/O routines for the specialized communications protocols. Java's robust networking API and its emphasis on security and memory management make it an ideal choice for the TINI environment. The Java support that TINI provides allows applications to be developed using one of the many integrated development environments (IDEs) available for Java. Applications can also be developed on another platform such as a PC and ported to TINI when they are complete.
However, if the Java support in TINI is not needed, it can be removed without sacrificing all the functionality that TINI provides. The core of the TINI OS is contained in the ROM of the DS80C400 and includes a full IPv4/IPv6 network stack as well as automatic network boot capability using TFTP. These capabilities can be used without the Java VM, and applications running in this manner can be written either directly in assembly language or compiled from C.
From Local to Global
The agricultural station could be considered complete at this point if a purely local, closed-loop control system was the goal. However, without wider network capabilities, any data collected by the station must be retrieved manually. If the software needs to be updated, that must be done manually as well. In addition, there would be no way to verify that the station is running properly without actually traveling to its location and checking.
Almost all systems can benefit from some level of networking, even if it is only used for maintenance. The standards-based networking of TINI makes adding this capability straightforward. Once the network connection is in place, applications can be tested and updated remotely so multiple TINI installations are managed from a single location.
TINI is flexible enough to adapt to different networking requirements. Connecting TINI to an Ethernet network is the simplest route and provides the highest speed, but Ethernet is not always available. The agricultural station can be in an isolated location with limited connections to the outside world. In this case, TINI's dialup PPP networking capability requires only a modem and standard phone line, cellular phone¹, or an equivalent system to connect to the Internet.
Once the network connection has been established, the range of possible uses is vast. TINI support for standard Internet protocols such as TCP/IPv4/v6, DNS, DHCP, HTTP, and FTP. Thus, the agricultural station could host its own web page or provide an FTP interface to download collected data with minimal coding required. If a specialized protocol is required, TINI's complete implementation of the java.net API allows creation of any type of network interface desired.
The default system shell included with the TINI runtime environment provides additional flexibility during application development. This shell features a Unix-like environment with a password-protected network login for multiple users over Telnet. It also includes FTP capabilities so Java applications may be uploaded to the TINI file system, then tested and debugged from a Telnet session.
Building Beyond the Platform
TINI ends at the boundary of the Java runtime environment, where real-world application development begins. To accelerate the design of their own products and services, first-time developers might want to evaluate the hardware and software offered by more experienced developers.
Some of the tools and libraries produced by TINI technology partners include the following:
Table 1. Example Applications for the TINI Platform
| Serial-to-Ethernet Black Box |
Humidity Monitor |
Transaction Terminal |
| Home Monitoring/Automation |
Barcode Printer |
Parking Gate Controller |
| Temperature Monitor/Logger |
Ticket Printer |
Traffic Light Controller |
| Vending Machine Controller |
Audio Paging Controller |
Concrete Cure Monitor |
| Weather Station Monitor |
Message Display Server |
Lighting Controller |
| Web Camera Controller |
19-Inch Rack Monitor |
Virtual Software Modem |
| Remote Print Server |
Server Room Monitor |
Power Monitor |
| Networked MP3 Player |
Smart Card Reader |
Utility Meter |
| Door Lock Controller |
Magnetic Card Reader |
RFID Reader |
| Time/Attendance Terminal |
Barcode Reader |
Security Sensor Controller |
For More Information
For the latest TINI downloads and API documentation, visit www.maxim-ic.com/TINI. The 300+ page TINI Specification and Developer's Guide (Addison-Wesley, 2001) is also available online and contains many useful examples and explanations of the TINI platform. To subscribe to the TINI community mailing list, visit www.maxim-ic.com/TINI/lists.
¹ For an example, refer to http://idenphones.motorola.com/iden/developer/news_dallas.jsp.
1-Wire is a registered trademark of Maxim Integrated Products, Inc.

Java is a trademark of Sun Microsystems, Inc.

SPI is a trademark of Motorola, Inc.

TINI is a registered trademark of Maxim Integrated Products, Inc.

| 相关型号 | |
APP 708: Feb 05, 2003
|
|
|
自动更新
需要自动接收最新发布的应用笔记吗?请订阅EE-Mail™ (English only)。
我们期待您的反馈! 喜欢?不喜欢?有待改善?或为我们提供建议?请与我们联系 — 我们将根据您的意见或建议改善我们的工作。
网页评价或提供建议
|
下载,PDF格式 (194kB)
AN708,
AN 708,
APP708,
Appnote708,
Appnote 708
|
|
|
 |
|
 |
|
|