So You Wanna Be an Embedded Engineer

Total Page:16

File Type:pdf, Size:1020Kb

So You Wanna Be an Embedded Engineer So, You Wanna Be an Embedded Engineer This Page Intentionally Left Blank So, You Wanna Be an Embedded Engineer The Guide to Embedded Engineering, from Consultancy to the Corporate Ladder by Lewin A.R.W. Edwards AMSTERDAM • BOSTON • HEIDELBERG • LONDON NEW YORK • OXFORD • PARIS • SAN DIEGO SAN FRANCISCO • SINGAPORE • SYDNEY • TOKYO Newnes is an imprint of Elsevier Newnes is an imprint of Elsevier 30 Corporate Drive, Suite 400, Burlington, MA 01803, USA Linacre House, Jordan Hill, Oxford OX2 8DP, UK Copyright © 2006, Elsevier Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. Permissions may be sought directly from Elsevier’s Science & Technology Rights Department in Oxford, UK: phone: (+44) 1865 843830, fax: (+44) 1865 853333, e-mail: [email protected]. You may also complete your request on-line via the Elsevier homepage (http://elsevier.com), by selecting “Support & Contact,” then “Copyright and Permission” and then “Obtaining Permissions.” Recognizing the importance of preserving what has been written, Elsevier prints its books on acid-free paper whenever possible. Library of Congress Cataloging-in-Publication Data Edwards, Lewin A. R. W. So, you wanna be an embedded engineer : the guide to embedded engineering, from consultancy to the corporate ladder / Lewin A.R.W. Edwards. p. cm. Includes index. ISBN-13: 978-0-7506-7953-4 (pbk. : alk. paper) ISBN-10: 0-7506-7953-0 (pbk. : alk. paper) 1. Embedded computer systems—Programming—Vocational guidance. I. Title. TK7895.E42E378 2006 004.16--dc22 2006015867 British Library Cataloguing-in-Publication Data A catalogue record for this book is available from the British Library. ISBN-13: 978-0-7506-7953-4 ISBN-10: 0-7506-7953-0 For information on all Newnes publications visit our Web site at www.books.elsevier.com 06 07 08 09 10 10 9 8 7 6 5 4 3 2 1 Printed in the United States of America This book is dedicated to the philosophy of making what you need out of what you can get. This Page Intentionally Left Blank Contents Chapter 1: Introduction . 1 1.1 About This Book . 1 1.2 What Is an Embedded Engineer? . 3 Chapter 2: Education . 5 2.1 Traditional Education Paths into Embedded Engineering . 5 2.2 Getting in Without Traditional Education (and Acquiring It Thereafter) . 11 2.3 I Write Software—How Much Electronics Must I Learn? . 23 2.4 Educational Traps, Dead-Ends, and Scams to Avoid . 27 2.5 Practical Skills You’ll Want to Acquire . 32 Chapter 3: Teaching Yourself, Bottom-Up (Small Embedded Systems) . 37 3.1 Target Audience . 37 3.2 Intel (Et al.) 8051 Variants . 41 3.3 Atmel AVR . 52 3.4 Texas Instruments MSP430 . 61 3.5 Microchip PICmicro . 70 3.6 Less Common Architectures for Special Needs . 77 3.7 What Programming Languages Should I Learn? C++ vs. C vs. Assembly Language in Small Embedded Systems . 82 3.8 Brief Ravings on Copy-Protected Development Tools . 87 3.9 An Example 8-Bit Project Using AVR and Free Tools . 91 Chapter 4: Teaching Yourself, Top-Down (Large Embedded Systems) . 125 4.1 Target Audience . 125 4.2 Embedded x86 Solutions . 127 4.3 ARM . 139 4.4 PowerPC . 151 4.5 Linux . 155 4.6 eCos . 165 viii Contents 4.7 What Programming Languages Should I Learn for Large Embedded Systems? . 167 4.8 A Final Word on Part Selection . 169 Chapter 5: Working for Yourself as an Embedded Engineer 173 5.1 Is Self-Employment for You? Risks and Benefits . 173 5.2 From Moonlighting to Full-Time Consultant Status— Bookkeeping, Taxes and Workload . 175 5.3 Ways to Find and Keep Customers . 182 5.4 Iterative Projects: Never-Ending Horror? . 187 5.5 Pricing Your Services Appropriately . 191 5.6 Establishing Your Own Working Best Practices . 194 5.7 More Than a Handshake: The Importance of Contracts . 197 Chapter 6: Working for a Small Company . 201 6.1 Analyze Your Goals: Benefits and Downsides of the Small Company . 201 6.2 How to Get the Job . 203 6.3 Responsibilities and Stresses in a Small Company . 206 6.4 Personal Dynamics in Small Companies . 208 6.5 Managing Tightly Limited Resources . 211 6.6 Task Breakdown: A Typical Week . 215 Chapter 7: Working for a Larger Company . 217 7.1 Analyze Your Goals: Benefits and Downsides of the Large Company . 218 7.2 How to Get the Job . 220 7.3 Globalization: Outsourcing and Temporary Worker Visas . 222 7.4 Procedures and You: Keeping Your Head Above Water . 228 7.5 Managing Relationships with Marketing . 236 7.6 Task Breakdown: A Typical Week . 239 Chapter 8: Conclusion . 241 Go Forth and Conquer . 241 1 Introduction 1.1 About This Book Both online and in real life, nearly every day I see people asking what they need to do in order to become embedded engineers. Some are new graduates; some are still college students; a few are teenagers in high school; and a large minority are hobbyists, hardware technicians, or application-level programmers looking to improve their salary prospects and/or diversify their skills in order to avoid the 21st century plague of white-collar commoditization. Why do so many people want to become embedded gurus? The obvious explanation is that young (and not-so-young) programmers and technicians are being lured by the glamorous, high-profile work, easy conditions, relaxed lifestyle and limitless wealth, delivered by adoring crowds, that only embedded engineer- ing can provide. Since none of that last sentence is remotely true, however (I’ve been working in the field full time for somewhat more than ten years, and I don’t clearly recall the last time I was pelted with cash by an adoring crowd), I can only assume that there is some major marketing campaign in progress and it is drawing people to the embedded field. This, of course, leads to an intractable moral dilemma. Should existing embed- ded engineers steer these young hopefuls toward other fields, thereby keeping the pool of fresh embedded talent small, and consulting rates correspondingly lucrative? Or, should we beckon these poor innocents in the door to work on the bottom level, thereby pushing all of us embedded guys one step up the pyramid? Humor aside, it is a generally accepted fact that the number of new graduate engineers of all types is shrinking (at least in the United States). Various theories are posited to explain this phenomenon. In the specific case of embedded 1 2 Chapter 1 engineering, I see several factors causing the decline. One such factor is the unavailability in this day and age of well-documented home computers of the style my generation enjoyed—Acorn BBC, Commodore VIC-20, Sinclair ZX Spectrum, and so on. Modern personal computers are black boxes designed to run shrink-wrapped software. They are shipped without programming tools1 and with no technical documentation whatsoever. These times in which we live are dark indeed. Operating system vendors are actively working to confine third-party software development to an exclusive club of paid-up licensees (in the same way that video game console development is controlled), and lower-level programming at the direct hardware-access layer is at best very difficult due to the unavailability of chipset documentation—in many cases, due to the manu- facturers’ contractual obligations to preserve trade secret information related to intellectual property protection mechanisms. In addition to this, we are faced with the mere complexity and heterogeneity of PC hardware. Back in the good old days, we could develop a homebrew program on our Commodore 64, fine- tune it to the last instruction cycle, and show it to other people with pride. This type of skill set is a vital component of embedded engineering, and it is more or less impossible to practice on mainstream home computers of the current era. There are other factors that raise the bar or discourage people from becoming an embedded engineer, too—and I’ll deal with them in the appropriate sections of this book—but the point I’m making here is that it’s simply more difficult these days for kids to experiment with what they have at home; their opportuni- ties to do so are, at best, constrained. The good news is that a decline in the supply of engineering talent leads— inevitably—to an increased price to meet demands. Despite the specters of outsourcing and high-tech worker visas (more on these topics in Chapter 7, if you’re the chapter-skipping type), right now it’s a great time to be looking for work in this field. There are of course cycles and cataclysms in everything—there was an enormous crash in telecommunications engineering jobs not so long ago, for example—but over time, the trend for total employed hours and investment dol- lars going into high-tech engineering projects is headed relentlessly upward. 1 Apple’s Mac OS is the only mainstream retail exception to this rule. While some PC vendors do offer Linux as a preload option, the people who would choose this are, in the main, people who would have installed it themselves anyway. Introduction 3 Note, by the way, that this book is something of a work of management heresy, almost to the point where I considered publishing it under a pseud- onym. It’s written for embedded engineers, or people who want to be embedded engineers, not people who are counting the days until the moment when they can put “manager” at the end of their job title.
Recommended publications
  • Atmega328p Xplained Mini User Guide
    USER GUIDE ATmega328P Xplained Mini User Guide Introduction This user guide describes how to get started with the Atmel® ATmega328P Xplained Mini board. The ATmega328P Xplained Mini evalutation kit is a hardware platform to evaluate the Atmel ATmega328P microcontroller. The evaluation kit comes with a fully integrated debugger that provides seamless integration with Atmel Studio 6.2 (and later version). The kit provides access to the features of the ATmega328P enabling easy integration of the device in a custom design. 42287A-MCU-05/2014 Table of Contents Introduction .................................................................................... 1 1. Getting Started ........................................................................ 3 1.1. Features .............................................................................. 3 1.2. Design Documentation and Related Links .................................. 3 1.3. Board Assembly .................................................................... 3 1.3.1. In Customer Development Assembly ............................. 3 1.3.2. Connecting an Arduino Shield ..................................... 3 1.3.3. Standalone Node ...................................................... 3 1.4. Connecting the Kit ................................................................. 3 1.4.1. Connect the Kit to Atmel Studio ................................... 3 1.4.2. Connect the Target UART to the mEBDG COM Port ......... 3 1.5. Programming and Debugging .................................................
    [Show full text]
  • Toolchains Instructor: Prabal Dutta Date: October 2, 2012
    EECS 373: Design of Microprocessor-Based Systems Fall 2012 Lecture 3: Toolchains Instructor: Prabal Dutta Date: October 2, 2012 Note: Unless otherwise specified, these notes assume: (i) an ARM Cortex-M3 processor operating in little endian mode; (ii) the ARM EABI application binary interface; and (iii) the GNU GCC toolchain. Toolchains A complete software toolchain includes programs to convert source code into binary machine code, link together separately assembled/compiled code modules, disassemble the binaries, and convert their formats. Binary program file (.bin) Assembly Object Executable files (.s) files (.o) image file objcopy ld (linker) as objdump (assembler) Memory layout Disassembled Linker code (.lst) script (.ld) Figure 0.1: Assembler Toolchain. A typical GNU (GNU's Not Unix) assembler toolchain includes several programs that interact as shown in Figure 0.1 and perform the following functions: • as is the assembler and it converts human-readable assembly language programs into binary machine language code. It typically takes as input .s assembly files and outputs .o object files. • ld is the linker and it is used to combine multiple object files by resolving their external symbol references and relocating their data sections, and outputting a single executable file. It typically takes as input .o object files and .ld linker scripts and outputs .out executable files. • objcopy is a translation utility that copies and converts the contents of an object file from one format (e.g. .out) another (e.g. .bin). • objdump is a disassembler but it can also display various other information about object files. It is often used to disassemble binary files (e.g.
    [Show full text]
  • Université De Montréal Context-Aware
    UNIVERSITE´ DE MONTREAL´ CONTEXT-AWARE SOURCE CODE IDENTIFIER SPLITTING AND EXPANSION FOR SOFTWARE MAINTENANCE LATIFA GUERROUJ DEPARTEMENT´ DE GENIE´ INFORMATIQUE ET GENIE´ LOGICIEL ECOLE´ POLYTECHNIQUE DE MONTREAL´ THESE` PRESENT´ EE´ EN VUE DE L'OBTENTION DU DIPLOME^ DE PHILOSOPHIÆ DOCTOR (GENIE´ INFORMATIQUE) JUILLET 2013 ⃝c Latifa Guerrouj, 2013. UNIVERSITE´ DE MONTREAL´ ECOLE´ POLYTECHNIQUE DE MONTREAL´ Cette th`ese intitul´ee: CONTEXT-AWARE SOURCE CODE IDENTIFIER SPLITTING AND EXPANSION FOR SOFTWARE MAINTENANCE pr´esent´eepar: GUERROUJ Latifa en vue de l'obtention du dipl^ome de: Philosophiæ Doctor a ´et´ed^ument accept´eepar le jury d'examen constitu´ede: Mme BOUCHENEB Hanifa, Doctorat, pr´esidente M. ANTONIOL Giuliano, Ph.D., membre et directeur de recherche M. GUEH´ ENEUC´ Yann-Ga¨el, Ph.D., membre et codirecteur de recherche M. DESMARAIS Michel, Ph.D., membre Mme LAWRIE Dawn, Ph.D., membre iii This dissertation is dedicated to my parents. For their endless love, support and encouragement. iv ACKNOWLEDGMENTS I am very grateful to both Giulio and Yann for their support, encouragement, and intel- lectual input. I worked with you for four years or even less, but what I learned from you will last forever. Giulio, your passion about research was a source of inspiration and motivation for me. Also, your mentoring and support have been instrumental in achieving my goals. Yann, your enthusiasm and guidance have always been a strength for me to keep moving forward. Research would not be as much fun without students and researchers to collaborate with. It has been a real pleasure and great privilege working with Massimiliano Di Penta (University of Sannio), Denys Poshyvanyk (College of William and Mary), and their teams.
    [Show full text]
  • Getting Started with STK200 Dragon Introduction This Guide Is Designed to Get You up and Running with Main Software and Hardware
    Getting Started with STK200 Dragon Introduction This guide is designed to get you up and running with main software and hardware. As you work through it, there could be lots of details you do not understand, but these are covered in books and other documentation that you can read later. The main software package is AVRStudio, which is Atmel’s Integrated Development Environment or IDE. There is also a plugin C Compiler module called WinAVR that compiles C programs within AVRStudio. The Kanda installer will install these packages and copy documentation to a folder on your hard drive. Default install path is C:\Program Files\STK200 Dragon AVRStudio has its own Atmel-AVR Tools folder in Program Files, and can be run from there or you can run from desktop icon. WinAVR never needs to be run directly, only from AVRStudio. The AVRStudio IDE is designed for writing source code, in C (.c files) or assembler (.asm files). These are then built or compiled into object code (.hex files) for programming into the AVR using ISP or debug files (.elf files) to step through the code. The AVR Dragon hardware is a programmer and In Circuit Emulator (ICE) in one tool. Once source code is built, it can be programmed into the AVR using ISP, which will just run the code or it can be set in Debug mode (using DebugWire or JTAG )that allows you to examine the code operation to find bugs. There are two Debug methods depending on the AVR device you are using • JTAG Mode for AVR devices with 40-pins or more • DebugWire for smaller pin-count devices.
    [Show full text]
  • Power Debugger [USER GUIDE] 2 Atmel-42696D-Power-Debugger User Guide-10/2016 5.2.5
    Programmers and Debuggers Power Debugger USER GUIDE Atmel-42696D-Power-Debugger_User Guide-10/2016 Table of Contents 1. The Atmel Power Debugger...................................................................................... 4 1.1. Kit Contents..................................................................................................................................5 2. Getting Started with the Power Debugger................................................................. 6 3. Connecting the Power Debugger...............................................................................8 3.1. Connecting to AVR and SAM Target Devices...............................................................................8 4. Detailed Use Cases.................................................................................................10 4.1. Low-power Application............................................................................................................... 10 4.1.1. Requirements.............................................................................................................. 10 4.1.2. Initial Hardware Setup................................................................................................. 10 4.1.3. Connections.................................................................................................................12 4.1.4. Disabling the debugWIRE Interface.............................................................................13 4.1.5. Disabling On-board Power Supply on the Xplained
    [Show full text]
  • Latexsample-Thesis
    INTEGRAL ESTIMATION IN QUANTUM PHYSICS by Jane Doe A dissertation submitted to the faculty of The University of Utah in partial fulfillment of the requirements for the degree of Doctor of Philosophy Department of Mathematics The University of Utah May 2016 Copyright c Jane Doe 2016 All Rights Reserved The University of Utah Graduate School STATEMENT OF DISSERTATION APPROVAL The dissertation of Jane Doe has been approved by the following supervisory committee members: Cornelius L´anczos , Chair(s) 17 Feb 2016 Date Approved Hans Bethe , Member 17 Feb 2016 Date Approved Niels Bohr , Member 17 Feb 2016 Date Approved Max Born , Member 17 Feb 2016 Date Approved Paul A. M. Dirac , Member 17 Feb 2016 Date Approved by Petrus Marcus Aurelius Featherstone-Hough , Chair/Dean of the Department/College/School of Mathematics and by Alice B. Toklas , Dean of The Graduate School. ABSTRACT Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah.
    [Show full text]
  • Getting Started with RTEMS Edition 4.7.2, for 4.7.2
    Getting Started with RTEMS Edition 4.7.2, for 4.7.2 14 February 2008 On-Line Applications Research Corporation On-Line Applications Research Corporation TEXinfo 2006-10-04.17 COPYRIGHT c 1988 - 2006. On-Line Applications Research Corporation (OAR). The authors have used their best efforts in preparing this material. These efforts include the development, research, and testing of the theories and programs to determine their effectiveness. No warranty of any kind, expressed or implied, with regard to the software or the material contained in this document is provided. No liability arising out of the application or use of any product described in this document is assumed. The authors reserve the right to revise this material and to make changes from time to time in the content hereof without obligation to notify anyone of such revision or changes. The RTEMS Project is hosted at http://www.rtems.com. Any inquiries concerning RTEMS, its related support components, its documentation, or any custom services for RTEMS should be directed to the contacts listed on that site. A current list of RTEMS Support Providers is at http://www.rtems.com/support.html. i Table of Contents 1 Introduction..................................... 1 1.1 Real-Time Embedded Systems.................................. 1 1.2 Cross Development ............................................. 2 1.3 Resources on the Internet ...................................... 3 1.3.1 Online Tool Documentation ............................... 3 1.3.2 RTEMS Mailing List ...................................... 3 1.3.3 CrossGCC Mailing List.................................... 3 1.3.4 GCC Mailing Lists ........................................ 3 2 Requirements ................................... 5 2.1 Disk Space ..................................................... 5 2.2 General Host Software Requirements ........................... 5 2.2.1 GCC .....................................................
    [Show full text]
  • Digital and System Design
    Digital System Design — Use of Microcontroller RIVER PUBLISHERS SERIES IN SIGNAL, IMAGE & SPEECH PROCESSING Volume 2 Consulting Series Editors Prof. Shinsuke Hara Osaka City University Japan The Field of Interest are the theory and application of filtering, coding, trans- mitting, estimating, detecting, analyzing, recognizing, synthesizing, record- ing, and reproducing signals by digital or analog devices or techniques. The term “signal” includes audio, video, speech, image, communication, geophys- ical, sonar, radar, medical, musical, and other signals. • Signal Processing • Image Processing • Speech Processing For a list of other books in this series, see final page. Digital System Design — Use of Microcontroller Dawoud Shenouda Dawoud R. Peplow University of Kwa-Zulu Natal Aalborg Published, sold and distributed by: River Publishers PO box 1657 Algade 42 9000 Aalborg Denmark Tel.: +4536953197 EISBN: 978-87-93102-29-3 ISBN:978-87-92329-40-0 © 2010 River Publishers All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, mechanical, photocopying, recording or otherwise, without prior written permission of the publishers. Dedication To Nadia, Dalia, Dina and Peter D.S.D To Eleanor and Caitlin R.P. v This page intentionally left blank Preface Electronic circuit design is not a new activity; there have always been good designers who create good electronic circuits. For a long time, designers used discrete components to build first analogue and then digital systems. The main components for many years were: resistors, capacitors, inductors, transistors and so on. The primary concern of the designer was functionality however, once functionality has been met, the designer’s goal is then to enhance per- formance.
    [Show full text]
  • Integral Estimation in Quantum Physics
    INTEGRAL ESTIMATION IN QUANTUM PHYSICS by Jane Doe A dissertation submitted to the faculty of The University of Utah in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Mathematical Physics Department of Mathematics The University of Utah May 2016 Copyright c Jane Doe 2016 All Rights Reserved The University of Utah Graduate School STATEMENT OF DISSERTATION APPROVAL The dissertation of Jane Doe has been approved by the following supervisory committee members: Cornelius L´anczos , Chair(s) 17 Feb 2016 Date Approved Hans Bethe , Member 17 Feb 2016 Date Approved Niels Bohr , Member 17 Feb 2016 Date Approved Max Born , Member 17 Feb 2016 Date Approved Paul A. M. Dirac , Member 17 Feb 2016 Date Approved by Petrus Marcus Aurelius Featherstone-Hough , Chair/Dean of the Department/College/School of Mathematics and by Alice B. Toklas , Dean of The Graduate School. ABSTRACT Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah.
    [Show full text]
  • AVR 32-Bit GNU Toolchain: Release 3.4.2.435
    AVR 32-bit GNU Toolchain: Release 3.4.2.435 The AVR 32-bit GNU Toolchain supports all AVR 32-bit devices. The AVR 32- bit Toolchain is based on the free and open-source GCC compiler. The toolchain 8/32-bits Atmel includes compiler, assembler, linker and binutils (GCC and Binutils), Standard C library (Newlib). Microcontrollers About this release Release 3.4.2.435 This is an update release that fixes some defects and upgrades GCC and Binutils to higher versions. Installation Instructions System Requirements AVR 32-bit GNU Toolchain is supported under the following configurations Hardware requirements • Minimum processor Pentium 4, 1GHz • Minimum 512 MB RAM • Minimum 500 MB free disk space AVR 32-bit GNU Toolchain has not been tested on computers with less resources, but may run satisfactorily depending on the number and size of projects and the user's patience. Software requirements • Windows 2000, Windows XP, Windows Vista or Windows 7 (x86 or x86-64). • Fedora 13 or 12 (x86 or x86-64), RedHat Enterprise Linux 4/5/6, Ubuntu Linux 10.04 or 8.04 (x86 or x86-64), or SUSE Linux 11.2 or 11.1 (x86 or x86-64). AVR 32-bit GNU Toolchain may very well work on other distributions. However those would be untested and unsupported. AVR 32-bit GNU Toolchain is not supported on Windows 98, NT or ME. Downloading and Installing The package comes in two forms. • As part of a standalone installer • As Atmel Studio 6.x Toolchain Extension It may be downloaded from Atmel's website at http://www.atmel.com or from the Atmel Studio Extension Gallery.
    [Show full text]
  • MPLAB Snap In-Circuit Debugger Information Sheet
    MPLAB® SNAP IN-CIRCUIT DEBUGGER MPLAB® Snap In-Circuit Debugger Information Sheet INTRODUCTION The MPLAB® Snap In-Circuit Debugger (PG164100) is an ultra-low priced debugging solution for projects not requiring high-voltage programming or advanced debug features. Therefore, it supports many of Microchip’s newer MCU offerings but not some legacy products. With a nominal feature set, the debugger is geared toward developers who don’t require advanced features. It is not intended for production programming. Note: Refer to the MPLAB® PICkit™ 4 In-Circuit Debugger and the MPLAB X IDE User’s Guides or online help for additional information. • Description • Features • MPLAB Snap In-Circuit Debugger Components • Additional Items Needed • MPLAB Snap vs. MPLAB PICkit 4 Comparison • Pinout Information • LEDs • Debugger to Target Communication • Debugger Options Selection • Troubleshooting DESCRIPTION The MPLAB Snap In-Circuit Debugger allows fast and easy debugging and programming using the powerful graphical user interface of MPLAB X IDE (Integrated Development Environment) or MPLAB IPE (Integrated Programming Environment). The debugger works with Microchip PIC®, dsPIC® Flash, AVR®, or DSC® devices. It will also work with 32-bit based microcontroller, such as SAM, CEC and PIC32 devices. The MPLAB Snap connects to the computer using a high-speed 2.0 USB interface and connects to the target via a Microchip debug 8-pin Single In-Line (SIL) connector. The SIL connector uses two device I/O pins and the reset line to implement in-circuit debugging and In-Circuit Serial Programming™ (ICSP™). The MPLAB Snap supports advanced interfaces such as 4-wire JTAG and Serial Wire Debug with streaming Data Gateway, while being backward compatible for demo boards, headers and target systems using 2-wire JTAG and ICSP.
    [Show full text]
  • Pyxos FT EVK User's Guide
    @ECHELON® Pyxos FT EVK User’s Guide @® 078-0342-01A Echelon, LONWORKS, LONMARK, NodeBuilder, LonTalk, Neuron, 3120, 3150, LNS, i.LON, ShortStack, LonMaker, and the Echelon logo are trademarks of Echelon Corporation registered in the United States and other countries. OpenLDV, Pyxos, and LonScanner are trademarks of Echelon Corporation. Other brand and product names are trademarks or registered trademarks of their respective holders. Each user of the Pyxos FT Chip and protocol assumes responsibility for, and hereby agrees to use its best efforts in, designing and manufacturing equipment licensed hereunder to provide for safe operation thereof, including, but not limited to, compliance or qualification with respect to all safety laws, regulations and agency approvals, as applicable. The Pyxos FT Chip and protocol are not designed or intended for use as components in equipment intended for surgical implant into the body, or other applications intended to support or sustain life, for use in flight control or engine control equipment within an aircraft, or for any other application in which the failure of the Pyxos FT Chip or protocol could create a situation in which personal injury or death may occur, and the user shall have no rights hereunder for any such applications. Parts manufactured by vendors other than Echelon and referenced in this document have been described for illustrative purposes only, and may not have been tested by Echelon. It is the responsibility of the customer to determine the suitability of these parts for each application. ECHELON MAKES AND YOU RECEIVE NO WARRANTIES OR CONDITIONS, EXPRESS, IMPLIED, STATUTORY OR IN ANY COMMUNICATION WITH YOU, AND ECHELON SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
    [Show full text]