Embedded Systems Design using the Rabbit 3000 Microprocessor

Interfacing, Networking, and Application Development


  • Kamal Hyder
  • Bob Perrin

The Rabbit 3000 is a popular high-performance microprocessor specifically designed for embedded control, communications, and Ethernet connectivity. This new technical reference book will help designers get the most out of the Rabbit's powerful feature set. The first book on the market to focus exclusively on the Rabbit 3000, it provides detailed coverage of: Rabbit architecture and development environment, interfacing to the external world, networking, Rabbit assembly language, multitasking, debugging, Dynamic C and much more!Authors Kamal Hyder and Bob Perrin are embedded engineers with years of experience and they offer a wealth of design details and "insider" tips and techniques. Extensive embedded design examples are supported by fully tested source code. Whether you're already working with the Rabbit or considering it for a future design, this is one reference you can't be without!
View full description


PRIMARY MARKET: Embedded engineers and programmers SECONDARY MARKET: Engineering students at the more practical engineering and technical schools


Book information

  • Published: November 2004
  • Imprint: NEWNES
  • ISBN: 978-0-7506-7872-8


"This book is essential for anyone working with the Rabbit series of processors, boards, or core modules. …The book covers firmware from soup to nuts, from assembly language to C, including real time OSes and even modern networking." --Jack Ganssle Systems Design using the Rabbit 3000 Microprocessor, by Kamal Hyder and Bob Perrin, (ISBN: 0750678720) is a complete introduction to programming with this popular microprocessor. Rabbit Semiconductor (http://rabbitsemiconductor.com/ ) sells a popular range of 8 bit microprocessors that offer quite high-end performance. My son and I just finished a project for his high school with one, and I've used them for a number of other applications. The R3000 is sort of like a Z80 on steroids, with many new instructions, wider address bus and a wealth of on-board peripherals. Like any modern high-integration CPU the Rabbit offers so much it's sometimes hard to get a handle on managing all of the I/O. This book will get you started, and is a must-read for developers using the part. The first few chapters describe the CPU in general and the development environment provided by Rabbit (Dynamic C). Chapter 5, though, is a description of interfacing to the real world, using all sorts of devices. It's aimed at engineers, not raw newbies, but, for an engineer at least, is an easy and descriptive read. The chapter on interrupts is one of the best I've seen in any book. It covers the hard stuff, like writing ISRs in C and assembly, with real-world examples. If you're using the R3000 just cut and paste the code into your application. It seems today that if there's a transistor in a product then it needs an Internet connection. Rabbit has several development kits that include everything needed to connect to the 'net. The authors devote considerable space to networking, but thankfully with only a cursory explanation of protocols. Rather, they give step-by-step instructions on implementing a working network, and conclude with a complete web server for monitoring water sprinklers. The final chapter covers an alternative toolchain from Softools. Dynamic C is a single-module compile-it-all paradigm that's highly interactive. Softools (http://www.softools.com/ ) sells a well-supported, reasonably-priced conventional C compiler, assembler and IDE. I only recommend products I've used and like, and the Softools products are first-rate. Systems Design using the Rabbit 3000 Microprocessor is required reading for users of the R3000, and a pretty darn good introduction to the entire realm of embedded systems development as well. - Jack Ganssle, The Embedded Muse 109

Table of Contents

1 - Introduction2 - Basics3 - Starting Out4 - Debugging5 - Interfacing to the External World 6 - Introduction to Rabbit Assembly Language 7 - Interrupts Overview 8 - Multitasking Overview 9 - Networking 10 - Softools - The Third Party Tool Appendix A - Rabbit 3000A - Extending the Rabbit 3000's Architecture