本书从计算机程序设计的基础知识入手,以实例讲解的方式帮助读者快速掌握嵌入式系统软件设计的核心技术与技巧,内容讲解清晰明了,通俗易懂。 |
David E.Simon Probitas公司(美国一家从事软件开发咨询的企业)的合伙人。他在Probitas公司的大部分工作与Apple、Adobe、HP以及ST等企业的嵌入式系统有关。David有20多年嵌入式系统软件设计与开发经验,并定期担任加州大学伯克利分校嵌入式系统延伸课程的教学工作。 .. << 查看详细 |
preface vii acknowledgments ix about this book and the accompanying cd-rom xi a first look at embedded systems 1.1 examples of embedded systems 1 1.2 typical hardware 8 chapter summary 10 hardware fundamentals for the software engineer 13 2.1 terminology 13 2.2 gates 16 2.3 a few other basic considerations 20 2.4 timing diagrams 28 2.5 memory 33 chapter summary 40 problems 41 advanced hardware fundamentals 45 3.1 microprocessors 45 3.2 buses 47 3.3 direct memory access 57 .3.4 interrupts 61 3.5 other common parts 62 3.6 built-ins on the microprocessor 72 3.7 conventions used on schematics 75 3.8 a sample schematic 75 3.9 a last word about hardware 77 chapter summary 78 problems 79 interrupts 81 4.1 microprocessor architecture 81 4,2 interrupt basics 85 4.3 the shared-data problem 92 4.4 interrupt latency 103 chapter summary 111 problems 112 survey of software architectures 115 5.1 round-robin 115 5.2 round-robin with interrupts 119 5.3 function-queue-scheduling architecture 127 5.4 real-time operating system architecture 129 5.5 selecting an architecture 132 chapter summary 133 problems 134 introduction to real-time operating systems 137 6.1 tasks and task states 139 6.2 tasks and data 144 6.3 semaphores and shared data 153 chapter summary 168 problems 169 more operating system services 173 7.1 message queues, mailboxes, and pipes 173 7.2 timer functions 184 7.3 events 191 7.4 memory management 195 7.5 interrupt routines in an rtos environment 199 chapter summary 206 problems 207 basic design using a real-time operating system 215 8.1 overview 215 8.2 principles 217 8.3 an example 233 8.4 encapsulating semaphores and queues 244 8.5 hard real-time scheduling considerations 253 8.6 saving memory space 254 8.7 saving power 257 chapter summary 259 problems 260 embedded software development tools 261 9.1 host and target machines 261 9.2 linker/locators for embedded software 263 9.3 getting embedded software into the target system 276 chapter summary 280 debugging techniques 283 10.1 testing on your host machine 284 10.2 instruction set simulators 302 10.3 the asseet macro 304 10.4 using laboratory tools 307 chapter summary 326 problems 327 an example system 329 11.1 what the program does 330 11.2 environment in which the program operates 333 11.3 a guide to the source code 336 11.4 source code 339 summary 402 problems 403 afterword 405 further reading 407 index 409 |
商品评论(0条)