Skip to:Content
|
Bottom
Cover image for Patterns for time-triggered embedded systems : building reliable applications with the 8051 family of microcontrollers
Title:
Patterns for time-triggered embedded systems : building reliable applications with the 8051 family of microcontrollers
Personal Author:
Publication Information:
Harlow, England : Addison-Wesley, 2001
Physical Description:
1 CD-ROM ; 12 cm
ISBN:
9780201331387
General Note:
Accompanies text of the same title : TK7895.E42 P66 2001

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010060832 CP 4217 Computer File Accompanies Open Access Book Compact Disc Accompanies Open Access Book
Searching...

On Order

Summary

Summary

This title describes the first comprehensive set of design patterns to support the development of embedded systems based on the 8051 family of microcontrollers. In total, details of more than 70 useful patterns are provided, complete with guidelines to help you apply these techniques in your own projects: full source code for all of the patterns is included on the associated CD.


Author Notes

Michael J. Pont is Senior Lecturer in Electronic & Software Engineering at the University of Leicester. For over a decade, he has performed state-of-the-art research in software design and programming in conjunction with many companies worldwide. He is author or co-author of more than seventy technical publications.


Table of Contents

Forewordp. xiv
Prefacep. xvi
Introductionp. 1
1 What is a time-triggered embedded system?p. 3
1.1 Introductionp. 3
1.2 Information systemsp. 3
1.3 Desktop systemsp. 5
1.4 Real-time systemsp. 6
1.5 Embedded systemsp. 8
1.6 Event-triggered systemsp. 10
1.7 Time-triggered systemsp. 11
1.8 Conclusionsp. 14
2 Designing embedded systems using patternsp. 15
2.1 Introductionp. 15
2.2 Limitations of existing software design techniquesp. 17
2.3 Patternsp. 22
2.4 Patterns for time-triggered systemsp. 24
2.5 Conclusionsp. 25
Part A Hardware foundationsp. 27
3 The 8051 microcontroller familyp. 29
Standard 8051p. 30
Small 8051p. 41
Extended 8051p. 46
4 Oscillator hardwarep. 53
Crystal Oscillatorp. 54
Ceramic Resonatorp. 64
5 Reset hardwarep. 67
Rc Resetp. 68
Robust Resetp. 77
6 Memory issuesp. 81
On-Chip Memoryp. 82
Off-Chip Data Memoryp. 94
Off-Chip Code Memoryp. 100
7 Driving DC loadsp. 109
Naked Ledp. 110
Naked Loadp. 115
IC Bufferp. 118
BJT Driverp. 124
IC Driverp. 134
Mosfet Driverp. 139
SSR Driver (DC)p. 144
8 Driving AC loadsp. 148
Emr Driverp. 149
SSR Driver (AC)p. 156
Part B Software foundationsp. 159
9 A rudimentary software architecturep. 161
Super Loopp. 162
Project Headerp. 169
10 Using the portsp. 173
Port I/Op. 174
Port Headerp. 184
11 Delaysp. 193
Hardware Delayp. 194
Software Delayp. 206
12 Watchdogsp. 215
Hardware Watchdogp. 217
Part C Time-triggered architectures for single-processor systemsp. 229
13 An introduction to schedulersp. 231
13.1 Introductionp. 231
13.2 The desktop OSp. 231
13.3 Assessing the super loop architecturep. 233
13.4 A better solutionp. 235
13.5 Example: Flashing an LEDp. 239
13.6 Executing multiple tasks at different time intervalsp. 243
13.7 What is a scheduler?p. 245
13.8 Co-operative and pre-emptive schedulingp. 246
13.9 A closer look at pre-emptive schedulersp. 250
13.10 Conclusionsp. 253
14 Co-operative schedulersp. 254
Co-Operative Schedulerp. 255
15 Learning to think co-operativelyp. 297
Loop Timeoutp. 298
Hardware Timeoutp. 305
16 Task-oriented designp. 316
Multi-Stage Taskp. 317
Multi-State Taskp. 322
17 Hybrid schedulersp. 332
Hybrid Schedulerp. 333
Part D The user interfacep. 359
18 Communicating with PCs via RS-232p. 361
PC Link (RS-232)p. 362
19 Switch interfacesp. 397
Switch Interface (Software)p. 399
Switch Interface (Hardware)p. 410
On-Off Switchp. 414
Multi-State Switchp. 423
20 Keypad interfacesp. 433
Keypad Interfacep. 434
21 Multiplexed LED displaysp. 449
Mx Led Displayp. 450
22 Controlling LCD panelsp. 465
LCD Character Panelp. 467
Part E Using serial peripheralsp. 491
23 Using 'I[superscript 2]C' peripheralsp. 493
I[superscript 2]C Peripheralp. 494
24 Using 'SPI' peripheralsp. 520
SPI Peripheralp. 521
Part F Time-triggered architectures for multiprocessor systemsp. 537
25 An introduction to shared-clock schedulersp. 539
25.1 Introductionp. 539
25.2 Additional CPU performance and hardware facilitiesp. 539
25.3 The benefits of modular designp. 541
25.4 How do we link more than one processorp. 543
25.5 Why additional processors may not always improve reliabilityp. 550
25.6 Conclusionsp. 552
26 Shared-clock schedulers using external interruptsp. 553
SCI Scheduler (Tick)p. 554
SCI Scheduler (Data)p. 593
27 Shared-clock schedulers using the UARTp. 608
SCU Scheduler (Local)p. 609
SCU Scheduler (RS-232)p. 642
SCU Scheduler (RS-485)p. 646
28 Shared-clock schedulers using CANp. 675
SCC Schedulerp. 677
29 Designing multiprocessor applicationsp. 711
Data Unionp. 712
Long Taskp. 716
Domino Taskp. 720
Part G Monitoring and control componentsp. 725
30 Pulse-rate sensingp. 727
Hardware Pulse Countp. 728
Software Pulse Countp. 736
31 Pulse-rate modulationp. 741
Hardware PRMp. 742
Software PRMp. 748
32 Using analogue-to-digital converters (ADCs)p. 756
One-Shot ADCp. 757
ADC Pre-Ampp. 777
Sequential ADCp. 782
A-A Filterp. 794
Current Sensorp. 802
33 Pulse-width modulationp. 807
Hardware PWMp. 808
PWM Smootherp. 818
3-Level PWMp. 822
Software PWMp. 831
34 Using digital-to-analog converters (DACs)p. 840
DAC Outputp. 841
DAC Smootherp. 853
DAC Driverp. 857
35 Taking controlp. 860
PID Controllerp. 861
Part H Specialized time-triggered architecturesp. 891
36 Reducing the system overheadsp. 893
255-Tick Schedulerp. 894
One-Task Schedulerp. 911
One-Year Schedulerp. 919
37 Increasing the stability of the schedulingp. 931
Stable Schedulerp. 932
Conclusionsp. 941
38 What this book has tried to dop. 941
38.1 Introductionp. 943
38.2 What this book has tried to dop. 943
38.3 Conclusionsp. 943
39 Collected references and bibliographyp. 946
39.1 Complete list of publicationsp. 946
39.2 Other pattern collectionsp. 952
39.3 Design techniques for real-time/embedded systemsp. 952
39.4 Design techniques for high-reliability systemsp. 953
39.5 The 8051 microcontrollerp. 954
39.6 Related publications by the authorp. 954
Appendicesp. 955
A The design notation and CASE toolp. 957
Overviewp. 957
The CASE toolp. 957
The notationp. 957
B Guide to the CDp. 980
Overviewp. 980
The basis of the CDp. 980
The source code for this bookp. 980
C Guide to the WWW sitep. 982
Overviewp. 982
The URLp. 982
Contents of the WWW sitep. 982
Bug reports and code updatesp. 982
Indexp. 985
Go to:Top of Page