
- 328 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
eBook - ePub
TCP/IP Embedded Internet Applications
About this book
Introducing the technology from square one through real-world design applications, this book will significantly reduce R&D time - and spend. Eddie Insam's approach to the internet protocols TCP/IP is to explore their potential as a practical tool for design engineers building web communication and capabilities into embedded systems for the next generation of electronic products.Eddie Insam introduces the range of possibilities open to internet-enabled designs, including automated fault and low-stock notification, remote environmental control, control of test and measurement equipment, and programming responses based on data collected locally. These techniques are introduced as they key to a new level of interactivity between customer and manufacturer or service provider as well as a the means for users to communicate with electronic devices in increasingly useful and user-friendly ways. These new opportunities are introduced with the level of practical detail required for electronic designers getting to grips with turning the next phase of the internet revolution into reality.The scope of this book encompasses electronic design, networking applications and wireless applications using Bluetooth and 802.11 (WiFi). The case studies are not based on one specific device, but listings are provided where required.*An engineer's approach to internet protocols and applications*Reduces R&D time for design engineers*The design guide for the cutting edge of internet-enabled electronic products and systems
Frequently asked questions
Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access TCP/IP Embedded Internet Applications by Edward Insam in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Science General. We have over one million books available in our catalogue for you to explore.
Information
CHAPTER 1
Networking Embedded Systems
First questions first, what is an embedded system? A common definition is a controlling mechanism, such as a microprocessor or other complex logic system, running a program inside another device or appliance. The user sees the appliance and not the controller that runs it, with the logic doing its job transparently and without making any fuzz. Few people really care about what make or model of microprocessor is running inside their washing machine, it works, and that is it. Embedded controllers are usually self contained, solidly built, with software that rarely crashes, and do not rely on software updates (compare that to your standard desktop PC!)
Nearly all embedded systems operate stand-alone. The microcontroller in a dishwasher is only connected to the push buttons, solenoids and motors it controls. Not all embedded system operate this way however. Some may communicate with others close by, or in some instances, to a remote device, which could be a large computer. The messages sent across could be used for data processing, data collection or for system maintenance.
Why Network Embedded Systems?
Networking is the common term given to the methods and techniques used for providing reliable communications between geographically remote devices. Networking requires the enforcement of common standards and the use of compatible hardware and software environments. This guarantees that communications can take place between machines that may be completely different in architecture and operating systems. It is understandable that a lot of design effort may need to be put in place to ensure that systems are compatible and can talk to each other without problems.
Figure 1-1 shows two applications where networked embedded systems may be used. Figure 1-1(a) shows a point of sale vending machine with an internal modem linked to head office via a phone line. The processor within the vending machine may be a standard microcontroller with its normal peripherals: RAM, ROM and I/O ports used for driving the various lamps, solenoids and push-button switches. The auto-dial modem is used to connect to the company’s host over the normal telephone network. The central host computer may accept calls or interrogate the remote, perhaps by dialing its number at regular hourly or daily intervals. The vending machine could also originate calls by dialing head office directly; these calls could be local or long distance depending on location. There have to be enough modems working in parallel at head office to ensure incoming calls are not lost, and avoid engaged tones. With several thousand remotes in a large geographical area, this could result in major investment in plant and equipment, not including manpower, maintenance, and the cost of all the long-distance phone calls.

Figure 1-1 Examples of networked embedded systems
Fortunately, the company could make use of the Internet. Using the Internet, the remotes only need to make local rate telephone calls to an Internet Service Provider (ISP), very much in the same way a domestic user dials their local ISP to use the Internet. Head office only needs to have a direct dedicated connection to the Internet. No multiple phone lines, no modems, no long distance telephone calls. Savings are not only made in telephone system infrastructure, but also in maintenance and labour required to support in-house equipment and plant. The ISP will provide all these facilities at competitive costs.
Figure 1-1(b) shows another application where a CCTV camera uses the existing local area computer network within a building to send security images from a parking lot. Images are digitized within the camera and sent in ‘network friendly’ encoded form to central office, which decompresses the images, and displays them on a screen. The embedded processor within the camera needs to be fast enough to capture, process and encode the images more or less in real time. This requires very fast CPU architectures similar to those found inside PCs. Alternatively, the camera could make use of dedicated integrated circuits or custom gate arrays. The diagram shows the camera using a wireless network. These use radio waves instead of cabling, and could be of benefit in areas where it is difficult to wire cables all the way to the camera.
Both these examples are typical of embedded systems networking. By sharing the use of an existing networking infrastructure (Internet or local area network) big savings can be made.
Adding networking to an embedded system is not a trivial task. From the relatively safe confines of an appliance, networking involves sending data over a hostile medium (the world outside), and communicating with a hostile remote system, which may not really care what status our device is in, and which may be operating under different operating systems, clocks or time frames. It soon becomes obvious to the designer that serious amount of resources will have to be allocated for the proper design and implementation of good, reliable networking. This includes not just the software, but also the hardware required for providing electrical isolation, decoupling and mechanical stability. By definition, embedded systems are resource limited systems (resources in this context, are the components of a system including ROM and RAM space, I/O ports and even CPU time), and an embedded system with surplus resources is an over-engineered system. Adding networking here may mean a rethink and redesign of the same product with more components, more memory, more interfaces and more software.
What Makes an Embedded System?
The image that comes to mind is that of a tiny microchip in a small printed circuit board full of connectors, all wired to masses of switches and LED displays. These invariably cost very little, and we wonder how anybody could make them at such ridiculously low prices. We need to be more generic, and think of all the alternative forms of ‘controlling’ electronics that can be included in the definition of an embedded system. We could go a bit further and attempt to group them into how powerful they are or by the ‘technologies’ used in the manufacture of their components. The following are all examples of embedded controllers:
Special dedicated integrated circuit (e.g. LSI, ASIC)
Large scale integration (LSI) and application specific integrated circuits (ASICs) are exactly what they say they are: integrated circuits that have been specially designed and tooled to do one very specific job. In other words, miniature worlds of components emulating what otherwise would be put together using quantities of separate components on a printed circuit board. LSI chips are widely used in applications with specific processing requirements and where parameters such as speed and very low cost are important. Custom designed logic integrated circuits devices result in better performance, lower cost, and sometimes lower power consumption at given speeds. They also have some built in security protection: their operation cannot be easily copied by competitors. Applications are to be found just about everywhere: hand-held organizers, cell-phones, telecommunication equipment, musical instruments, MP3 decoders and telephony receivers. Most commercial network interface chips are nothing but LSI devices specially designed to interface between the network and a microprocessor. In a way, the ‘brains’ are partly in the microprocessor, partly in the LSI device connected to it.
Programmable logic devices (e.g. PLD, FPGA)
Programmable logic devices (PLDs) or programmable gate arrays (PGAs) are one of a family of IC technologies where half-completed ICs are used as a ‘worktop’ or basis for the design of complex logic structures. Designers complete their designs simply by programming the final cell-to-cell interconnections. GAs are ideal for small production runs and prototypes. Because of cost considerations, many designers migrate to compatible ASIC or LSI equivalents for large manufacturing runs. For this reason, GAs are not commonly seen in low-cost mass-market appliances. GAs come in many sizes, and many are powerful and flexible enough to provide complete built in ‘solutions on a chip’ (SOIC) implementations for communications protocols.
Dedicated CPU cores
This is a variation of the above theme. A CPU core is the ‘business end’ of a normal CPU built into a GA as a collection of gates and flip-flops. The CPU core emulates a standard microcomputer instruction set (but not necessarily using the same electrical circuits). CPU cores are used in very large GA designs when more program-oriented flexibility is needed. In other words, GAs can now include full off-the-peg CPU emulations built into their circuitry (fabric). Sizes can vary from feature limited 8-bit processors of the RISC variety, to full 32-bit Power PC compatibles. Because the CPUs are ‘assembled’ at the design stage, a degree of customisation is possible. For example, custom instructions can be added, or existing ones removed to save space (real estate) on the chip. Peripherals can be added as required, and custom communications modules can be ‘wired in’ from existing libraries resulting in custom CPU architectures with power and capabilities comparable, if not better, to a desktop PC. The libraries can include data conversion, encryption, compression and MPEG decoding. Applications are found in tabletop TV-Internet boxes, hand-held devices, palmtops, data cell-phones and game consoles. Specific networking components such as Ethernet are also available as software modules.
Single board computer (SBC) Processors
These are mainly based on standard Intel processor components and designs. Boards designed for embedded systems are called single board computers (SBCs) and usually include a CPU, decent amount of memory and a varying range and number of peripherals. The most common standard for interconnecting these systems is called PC-104. This standard defines mechanical connectors, board sizes, electrical bus interface levels and timings. SBCs can be very powerful, and even the smallest can easily emulate a standard PCs at the DOS or Windows CE level. The operating system is usually provided in a Flash ROM, or in a plug in Smart Card. Most manufacturers offer boards with built in 10BaseT or 100BaseT Ethernet interfaces, and include support software in the form of Winsock compatible software ‘stacks’.
Small microcontrollers
These are at the lowest end of the range in terms of cost and performance. Typically of these are the 8051 cores (from various manufacturers), Microchip PIC, Zilog Z8, Hitachi, Rabbit and Atmel. These low-cost devices are very resource limited, and require the use of external network interface components such as dedicated controller chips to interface properly to a network. These micros are barely powerful enough to drive themselves, never mind the controllers, and data throughput will be at much less than ideal speeds. Computing and storage capacities are rather limited, whic...
Table of contents
- Cover image
- Title page
- Table of Contents
- Copyright
- Contents
- Introduction
- Chapter 1: Networking Embedded Systems
- Chapter 2: Software Design for Embedded Communications
- Chapter 3: Protocols and Communications Models
- Chapter 4: Network Physical Layer Technologies
- Chapter 5: LAN Access Technologies
- Chapter 6: Data Link Management
- Chapter 7: Network Layer – Building on IP
- Chapter 8: Application Layer Protocols
- Chapter 9: A Simple Implementation
- Bibliography
- Glossary
- Index