Designing Embedded Internet DevicesEmbedded internet and internet appliances are the focus of great attention in the computing industry, as they are seen as the future of computing. The design of such devices presents many technical challenges. This book is the first guide available that describes how to design internet access and communications capabilities into embedded systems. It takes an integrated hardware/software approach using the Java programming language and industry-standard microcontrollers. Numerous illustrations and code examples enliven the text. This book shows how to build various sensors and control devices that connect to the TINI interfaces, explains how to write programs that control them in Java, and then ties them all together in practical applications. Included is a discussion on how these technologies work, where to get detailed specifications, and ideas for the reader to pursue beyond the book.
|
Contents
Introduction | 1 |
What this book will do for you | 2 |
How to get the most out of this book | 3 |
What you should already know | 4 |
Computer Networks | 5 |
Network Addresses | 13 |
Network Communication | 17 |
Ports and Sockets | 21 |
Adding a SIMM Connector | 253 |
Adding Memorymapped Devices | 255 |
Summary | 294 |
TINI Serial and Parallel IO | 295 |
Parallel Ports | 331 |
Summary | 344 |
1Wire Basics for TINI | 345 |
How the 1Wire Bus Works | 346 |
Summary | 22 |
Java Essentials for Embedded Networked Devices | 25 |
Serial Port Communications | 30 |
Significant Topics for Review in the Java Language | 37 |
Summary | 92 |
Overview of Embedded Networked Devices | 93 |
Getting Started with TINI | 101 |
Getting Started | 102 |
TINI libraries utilities TINI 1Wire libraries | 107 |
1Wire Libraries | 117 |
Summary | 126 |
The TINI Hardware | 127 |
The Various Components of the TINI Stick | 130 |
The Memory | 139 |
The E10E20 Socket Board | 158 |
Other TINI socket accessories | 173 |
Summary | 175 |
References | 176 |
The TINI Software | 177 |
The TINI Loader | 180 |
The TINI Firmware | 182 |
The TINI API3 | 185 |
Slush the TINI Operating System Shell | 190 |
Programming TINI | 204 |
Other Tools to Make Life Simpler | 232 |
Other TINI Software | 241 |
Conclusion | 243 |
Enhancing TINI | 245 |
Adding 512 kbytes Flash Memory | 251 |
The 1Wire Bus Protocol | 349 |
1Wire Bus Commands | 353 |
Cyclic Redundancy Check CRC | 359 |
the DS2405 Addressable Switch | 362 |
the DS1920 Thermometer iButton | 366 |
Connecting a PC to the 1Wire Bus | 370 |
The 1Wire Java API | 380 |
How TINI Communicates with the 1Wire Bus | 418 |
Summary | 431 |
The I²C Bus | 433 |
The I²C Bus in More Detail | 434 |
How TINI Does I²C | 440 |
Summary | 465 |
References | 466 |
Controller Area Network | 467 |
The CAN Bus in More Detail | 469 |
How TINI Does CAN | 483 |
Summary | 508 |
Connecting TINI to an IP Network | 511 |
Using PPP | 518 |
Summary | 566 |
References | 567 |
A Few Final Thoughts | 569 |
Connecting Your Device | 570 |
Whats Been Done with TINI | 573 |
575 | |
577 | |
Other editions - View all
Common terms and phrases
1-Wire API 1-Wire bus 1-Wire devices args boolean BuildDependency bus master byte cable CanBus catch Exception CLASSPATH clock command line compile configuration connector constructor Dallas Semiconductor data frame DataPort default display driver DSPortAdapter EEPROM enable environment variable Ethernet example FF FF FF Figure firmware flash frame hardware I²C iButton implement import java.io input installed interface Internet IOException IP address ipconfig javac JavaKit javax.comm keypad Linux login memory method microcontroller modem OneWireContainer options output parallel port password port adapter protocol public class public static void public void reset ROM command ROM ID Search ROM serial port server signal SIMM slush socket board specified static void main(String strictfp String switch System.out.println TCP/IP Telnet TINI API TINI stick TINI_HOME%\bin\owapi_dep.txt TINI_HOME%\bin\owapi_dependencies_TINI.jar TINI_HOME%\bin\tini.db TINI_HOME%\bin\tini.jar TINIConvertor UART Windows write