Muutke küpsiste eelistusi

Serial Port Complete: COM Ports, USB Virtual COM Ports, and Ports for Embedded Systems 2nd Revised edition [Pehme köide]

  • Formaat: Paperback / softback, 380 pages, kõrgus x laius x paksus: 229x178x20 mm, kaal: 581 g
  • Sari: Complete Guides series
  • Ilmumisaeg: 01-Dec-2007
  • Kirjastus: Lakeview Research, U.S.
  • ISBN-10: 193144806X
  • ISBN-13: 9781931448062
Teised raamatud teemal:
  • Formaat: Paperback / softback, 380 pages, kõrgus x laius x paksus: 229x178x20 mm, kaal: 581 g
  • Sari: Complete Guides series
  • Ilmumisaeg: 01-Dec-2007
  • Kirjastus: Lakeview Research, U.S.
  • ISBN-10: 193144806X
  • ISBN-13: 9781931448062
Teised raamatud teemal:
PC COM ports, USB virtual COM ports, and ports in embedded systems are all addressed in this updated guide to programming, interfacing, and using serial ports. Topics include using .NET’s SerialPort class for COM-port communications on PCs; upgrading existing RS-232 designs to USB or wireless networks; and creating serial networks of embedded systems and PCs. Example circuits and code provide a quick start to projects. Installation and maintenance staff will also find tips for ensuring reliable operation and problem tracking.

Arvustused

"If you've ever looked for serial port examples online, you've probably become very frustrated. . . . The examples here won't frustrate you." --About.com: Visual Basic "Whether your interest is hardware or software and whether you work with PCs, embedded systems, or both, you'll find useful guidance in this book." -- EDN "About as complete a reference as you'll find on serial communications." -- Embedded Systems Programming on the first edition "A very practical book." -- Nuts & Volts on the first edition "If you plan to use a serial port in any sort of application, buy this book." -- Test & Measurement World on the first edition "It's not just the how, it's the why that's explained. The emphasis of the book is on doing something useful." --TechBookReport.com "As complete a reference as you'll find on serial communications using RS-232 and RS-485." --The Embedded Muse

Introduction xiii
Acknowledgments xix
Options and Choices
1(10)
When to use a Serial Port
2(2)
Advantages
2(2)
Limits
4(1)
System Components
4(4)
The Computers
4(2)
The Physical Link
6(1)
Programming
6(2)
Applications
8(3)
Example Systems
8(1)
Managing Communications
9(1)
Special-purpose Modules
9(2)
Formats and Protocols
11(20)
Sending Serial Data
11(4)
Asynchronous and Synchronous Communications
11(1)
Word Formats
12(1)
Bit Rate and Baud Rate
13(1)
System Support for Low-level Protocols
14(1)
Sending Bits
15(3)
The Format
15(1)
The Need for Accurate Timing
15(2)
Autodetecting the Bit Rate
17(1)
Autodetecting a COM Port
18(1)
Data Formats
18(7)
Binary Data
18(1)
Text Data
19(3)
ASCII Hex
22(2)
Application-specific Protocols
24(1)
Preventing Missed Data
25(6)
Flow Control
26(1)
Buffers
27(1)
Event-driven Programming and Polling
28(1)
Acknowledgments
29(1)
Error Checking
29(2)
COM Ports on PCs
31(12)
Port Architecture
31(7)
Device Manager
31(5)
Port Resources
36(1)
Serial Servers
37(1)
Accessing Ports
38(5)
Drivers
38(1)
Identifying Ports
39(1)
GUIDs for COM Ports
39(1)
COM Port Numbering
40(1)
INF Files
40(1)
Options for Application Programming
41(2)
Inside RS-232
43(18)
The Hardware Interface
43(5)
Signals
43(3)
Voltages
46(2)
Timing Limits
48(1)
Converting Voltages
48(7)
Interface Chips
49(4)
Short-range Circuits
53(2)
Port-powered Circuits
55(3)
Using Outputs as a Power Source
56(1)
Regulating the Voltage
57(1)
Alternate Interfaces
58(3)
Direct Connection
58(1)
Other Unbalanced Interfaces
58(3)
Designing RS-232 Links
61(18)
Connectors and Adapters
61(6)
Connector Options
62(1)
Adapters
63(2)
Using Microcontroller Development Boards
65(2)
Cables
67(3)
Length Limits
67(2)
Surge Protection
69(1)
Isolated Lines
70(6)
Ways to Achieve Isolation
70(1)
About Grounds
70(2)
Power Supply Grounds
72(3)
Optoisolating
75(1)
Debugging Tools
76(3)
Using a Breakout Box
76(1)
Monitoring with a Voltmeter
77(1)
Oscilloscopes and Logic Analyzers
78(1)
Inside RS-485
79(26)
About RS-485
79(10)
Balanced and Unbalanced Lines
80(4)
Voltage Requirements
84(1)
Current and Power
85(2)
Speed
87(1)
Internal Protection Circuits
88(1)
Interfacing Options
89(7)
Chips
89(2)
Adding a Port on a PC
91(1)
Converting 3.3/5V Logic
91(2)
Converting RS-232
93(3)
Controlling the Driver Enable
96(9)
Re-enabling the Driver
97(1)
Software-assisted Control
97(2)
Hardware Control
99(6)
Designing RS-485 Links and Networks
105(40)
Long and Short Lines
106(6)
When Is a Line Long?
106(3)
Calculating Line Length
109(2)
Choosing a Driver Chip
111(1)
Line Terminations
112(15)
Characteristic Impedance
112(1)
Adding a Termination
113(2)
Effects of Terminations
115(2)
Reflections
117(5)
Series Terminations
122(1)
Terminations for Short Lines
122(1)
AC Terminations
123(2)
Network Topologies
125(2)
Biasing the Line
127(4)
Open-circuit Protection
127(3)
Short-circuit Protection
130(1)
Cable Types
131(3)
How a Wire Picks Up Noise
132(1)
Twisted-pair Cable
133(1)
Selecting Cable
133(1)
Grounds and Differential Lines
134(7)
Ensuring a Common Ground
134(3)
Isolated Lines
137(4)
Using Multiple Buses
141(4)
Adding a Repeater
141(1)
Implementing a Star Topology
141(4)
Going Wireless
145(10)
Media and Modulation
146(2)
Using a Carrier Frequency
146(1)
Spread Spectrum Technology
147(1)
Ensuring Reliable Transfers
147(1)
Infrared
148(1)
Transmitters and Receivers
148(1)
IrDA
149(1)
Radio Frequency
149(6)
Complying with Regulations
149(1)
Choosing an RF Band
150(1)
Implementing a Link
151(1)
Using Other RF Standards
152(3)
Using .NET's SerialPort Class
155(34)
Gaining Access to a Port
156(7)
Finding Ports
156(1)
Opening a Port
156(4)
Timeouts
160(1)
Receive Threshold
161(1)
Closing a Port
161(2)
Transferring Data
163(13)
Transferring Bytes
167(3)
Transferring Text
170(6)
Using Stream Objects
176(10)
BinaryReader and BinaryWriter
177(5)
StreamReader and StreamWriter
182(4)
Saving a Port and Parameters
186(3)
The Application Settings Architecture
186(1)
Combo Box Example
187(2)
Managing Ports and Transfers in .NET
189(40)
Receiving Data
190(13)
Setting Timeouts
190(1)
Detecting Received Data
190(7)
Collecting Received Data
197(5)
Ensuring Efficient Transfers
202(1)
Sending Data
203(6)
Avoiding Timeouts
203(1)
Sending without Blocking the Application
203(4)
Preventing Buffer Overflows
207(1)
Ensuring Efficient Transfers
208(1)
Flow Control
209(5)
Selecting a Method
209(1)
Monitoring and Controlling the Signals
209(5)
Handling Errors
214(4)
Exceptions
214(1)
The ErrorReceived Event
214(4)
Verifying Received Data
218(1)
Structuring an Application
218(11)
Defining a ComPorts Class
218(3)
Setting Parameters with Combo Boxes
221(3)
Defining Application-specific Events
224(5)
Ports for Embedded Systems
229(38)
A Microcontroller Serial Port
229(2)
About the PIC18F4520
230(1)
The Enhanced UART
230(1)
Registers
231(10)
Configuring and Accessing the Port
231(3)
Setting the Bit Rate
234(3)
Interrupts
237(2)
Basic Operations
239(2)
Accessing a Port
241(21)
Configuring the Port
241(2)
Sending Data
243(1)
Receiving Data
244(9)
Using Interrupts
253(3)
Using Flow Control
256(6)
Adding Ports
262(5)
Multiple On-chip UARTs
263(1)
Firmware UARTs
263(1)
External UARTs
263(4)
Network Programming
267(14)
Managing Traffic
267(5)
Steps in Exchanging a Message
268(1)
Protocols
268(2)
Using Existing Protocols
270(1)
Debugging Tips
271(1)
Addressing
272(9)
Assigning Addresses
272(1)
Detecting Addresses
272(1)
Reserving Address Values
273(1)
Defining a Message Format
273(1)
9-bit Format
274(7)
An RS-485 Network
281(36)
Connecting the Nodes
281(2)
Transceivers
281(2)
Terminating and Biasing
283(1)
Cabling
283(1)
Example Protocol
283(1)
Addresses
283(1)
Message Format
283(1)
Commands
284(3)
Reading a Byte
284(2)
Writing a Byte
286(1)
Polling the Nodes
287(4)
Configuring the Driver-enable Line
287(1)
Sending Commands
288(3)
Responding to Polls
291(26)
Auxiliary Routines
291(12)
Decoding Received Data
303(14)
Inside USB
317(8)
Hosts and Devices
317(4)
Assigning a Driver on the Host
318(1)
Requirements
318(1)
Host Responsibilities
319(1)
Device Responsibilities
319(1)
Speed
320(1)
Endpoints
320(1)
USB Transfers
321(4)
Transfer Types
321(1)
Transactions
322(1)
The Data Toggle
323(2)
Using Special-function USB Controllers
325(10)
Inside the Chips
326(4)
Serial Interface (FT232R)
326(2)
Parallel Interface (FT245R)
328(1)
Prototyping Modules
329(1)
Using the Controllers
330(5)
Drivers
330(1)
Adding Vendor-specific Data
330(1)
Implementing a Virtual COM Port
331(1)
Converting from RS-232 to USB
332(3)
Using Generic USB Controllers
335(21)
The Communication Devices Class
335(4)
Documentation
336(1)
Overview
336(2)
Device Controllers
338(1)
Host Drivers
338(1)
Using the Abstract Control Model
339(7)
POTS Models
339(1)
Virtual COM Ports
340(1)
Requests
341(3)
Notifications
344(1)
Maximizing Performance
345(1)
Descriptors and INF Files
346(10)
Device Descriptor
346(1)
Configuration Descriptor
346(5)
Communication Class Interface Descriptors
351(2)
Data Class Interface Descriptors
353(2)
String Descriptors
355(1)
The INF File
356(1)
Composite Devices
356