"You'll be amazed when you first see a Web server running on a computer that's little bigger than a stick of chewing gum."
--From the Foreword by Tom CargillTINI (TM) (Tiny InterNet Interface) technology is the compact and powerful solution for connecting a wide variety of hardware devices directly to corporate and home networks. The TINI (TM) Specification and Developer's Guide is the complete tutorial and reference guide for developers networking embedded systems with this exciting new technology.
Written by the lead architect of the technology, this book is packed with examples and reference materials, and contains the complete TINI specification. It begins with an overview of the platform, then examines every detail of the specification from the runtime environment to device I/O, networking, and application programming. Though some Java (TM) programming language experience is a prerequisite, the book requires no embedded controller or I/O interface experience.
The key components of the TINI specification are explained, including:
The TINI platform's hardware and runtime environment
TCP/IP networking and dial-up networking using PPP
Asynchronous serial communication
TINI's parallel I/O bus, memory access modes, and port-pin control
The 1-Wire Net (TM) fundamentals, adapters, and direct 1-Wire communication
Managing system resources, including the real-time clock, the Watchdog, and external interrupts
Application programming with TINI
Programming tips for performance optimization
The accompanying CD-ROM contains code examples from the book.
Direct from the authority, The TINI (TM) Specification and Developer's Guide is the first complete reference to this innovative "anywhere anyplace" interface for Web-enabled devices.
0201722186B05222001
Sprache
Verlagsort
Verlagsgruppe
Zielgruppe
Für höhere Schule und Studium
Maße
Höhe: 234 mm
Breite: 187 mm
Dicke: 22 mm
Gewicht
ISBN-13
978-0-201-72218-5 (9780201722185)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Klassifikation
Don Loomis is the software engineering manager at Dallas Semiconductor Corporation and is the lead architect and developer of TINI.
0201722186AB04062001
1. The TINI Platform.
Description.
Applications.
TINI Hardware.
The Memory Map.
Integrated I/O.
A Hardware Reference Design.
TINI Runtime Environment.
API Overview.
The Java Virtual Machine.
Native Methods.
TINI OS.
Bootstrapping the System.
Step 1: Execute the Bootstrap Loader.
Step 2: Initialize the Runtime Environment.
Step 3: Start the Primary Java Application.
The Future.
2. Getting Started.
Hardware Requirements.
The TINI Board Model 390.
The E20 Socket.
Development Platform Requirements.
A Java Development Environment.
The Java Communications API.
The TINI SDK.
Loading the TINI Runtime Environment.
= Slush: A Quick Primer.
Slush Defined. @@BHEADS = Starting a New Session.
Exploring the File System.
Getting Help.
Configuring the Network.
Some Simple Examples.
HelloWorld.
Blinky, Your first TINI I/O.
HelloWeb, a Trivial Web Server.
Debugging Tips.
3. Serial Communication.
Introduction and Terminology.
The Java Communications API.
Acquiring and Configuring Serial Ports.
Flow control.
Sending and receiving serial data.
Serial Port Events.
TINI's Serial Ports.
A Small Terminal Example.
A Serial <=> Ethernet Converter.
4. The 1-Wire Net.
1-Wire Networking Fundamentals.
1-Wire Signalling.
1-Wire Transactions.
Addressing 1-Wire chips.
1-Wire Chips and iButtons.
Adapters.
Finding and Creating Adapters.
The Internal Adapter.
The External Adapter.
Determining an Adapter's Capabilities.
Searching for 1-Wire Devices.
Adapter Ownership.
Direct 1-Wire Communication.
Containers.
The Class OneWireContainer.
Creating Container Instances.
Example: 1-Wire Humidity Sensor.
Ensuring Data Integrity Using CRCs.
5. TCP/IP Networking.
TINI Networking Environment and API Overview.
The Network Interfaces.
Ethernet.
PPP.
Loopback.
Setting Network Parameters.
Committing Static Network Parameters.
Dynamic IP Configuration Using DHCP.
DNS.
HTTP.
ICMP.
6. Dial-Up Networking using PPP.
The PPP API Classes.
PPP Events.
STARTING Event.
AUTHENTICATION_REQUESTED Event.
UP Event.
STOPPED Event.
CLOSED Event.
7. Building a Remote Data Logger.
Description.
The DataLogger Class.
Collecting the Data.
A Sample Client.
Implementing the PPP Daemon.
Managing the PPP Data Link.
The Serial Link.
Controlling the Modem.
Adding the PPP Daemon to DataLogger.
Testing the Entire Application.
8. Parallel I/O.
TINI's Parallel Bus.
The DataPort Class.
Data Transfer.
Memory Access Modes.
Controlling bus timing.
Parallel I/O examples.
Additional TTL I/O.
Reading and Writing External Memory.
9. Just the Bits.
TINI's ports and port pins.
The BitPort Class.
Synthetic Port Pins.
Example: Creating Additional Outputs.
The BytePort Class.
Performance of BitPort and BytePort.
10. Accessing System Resources.
The Real Time Clock.
Setting the Current Date and Time.
Using a network time server.
The Watchdog.
Motivation for Using the Watchdog.
A Tail of Two Dogs.
Using the Watchdog Timer.
Example Use of the Watchdog Timer.
Beware of Dog!
The External Interrupt.
Polling vs. Interrupts.
Properties of the external interrupt.
Triggering the External Interrupt.
Receiving Notification of Interrupts.
Sharing a Common Interrupt Source.
11. Application Programming Tips.
Performance Profiling.
Efficient I/O.
Block Data Transfer vs. Byte-banging.
Buffered Streams.
Memory Usage.
Object Creation.
Strings.
Profiling Memory Usage.
Garbage collection.
Other Optimization Tips.
Relative Cost of Common Operations.
Loop Optimizations.
Arithmetic Operations.
The ArrayUtils Class.
An Optimization Strategy.
Application Hardening.
TINI's Memory Technology and Data Persistence.
Application startup.
Hardening Summary.