How to Learn an Embedded System

How to Learn an Embedded System thumbnail
Embedded systems combine hardware and software on a circuit board.

Learning an embedded system includes learning both software and hardware aspects. Embedded systems each have different features and operational characteristics, and will require some initial learning to get a basic setup working. You'll need to learn how to write and compile code, load the compiled code into the memory of the embedded system and then cause the embedded microcontroller (or processor) to execute the code. A simple test program can be used to tell if your embedded system is working. Once the test program is working, you can move on to learn more advanced features of the embedded system.

Things You'll Need

  • C programming book
  • Embedded C programming book, preferably tailored to the embedded system you want to learn
  • PC (desktop or laptop)
  • Development board
  • Embedded C compiler compatible with the microcontroller on the development board
  • Microcontroller documentation
Show More

Instructions

    • 1

      Learn the basics of the C programming language. C is a good language to learn because many (if not all) embedded systems will have a C compiler available. A C programming book, such as "C Programming: A Modern Approach, 2nd Edition" by K.N. King, can help you learn C.

    • 2

      Learn the basics of C for embedded systems. Once you understand C, you can move on to understand how the C language can be used for embedded systems. An embedded C programming book, such as "Programming Embedded Systems in C and C ++," can help. If you know the microcontroller you want to learn, for instance the Atmel AVR, you can get a book such as "Embedded C programming and the Atmel AVR."

    • 3

      Buy or borrow an embedded system development board. For example, Atmel offers the ATAVR Xplain evaluation and demonstration kit for the ATxmega128A1 microcontroller. The Xplain kit, at around $30, is an inexpensive embedded system to learn with. The PIC microcontrollers from Microchip are also popular embedded systems to learn.

    • 4

      Buy or download a compiler/development environment for the microcontroller on the development board. For instance, if you are learning the Atmel AVR ATxmega128A1, then you can download the AVR IDE from Atmel and use the GNU C compiler or a commercially available C compiler for the AVR, such as the one sold by IAR.

    • 5

      Become familiar with the features and operation of your embedded system. You'll want to understand the memory organization, peripheral operations (e.g., timers, data ports, etc.) and interrupt operation.

    • 6

      Test your setup by compiling and running a basic program. Your test program should do something simple and easily observed, such as flashing an LED on the development board.

    • 7

      Learn more advanced features of your embedded system by compiling and running programs that exercise different features and peripherals. Write code using timers, data communication ports, analog-to-digital and digital-to-analog converters, and any other embedded system peripherals you are interested in.

Tips & Warnings

  • Look for sample code and application notes on manufacturers' websites.

  • Hobbyist websites devoted to specific processor or families of processors, for example AVRFreaks.com, have example projects, code and forums where you can ask questions of more experienced users.

  • Learning a new embedded system can be difficult and frustrating at first. So, be patient and remember to pay attention to each detail. If after several attempts you are still unable to get your embedded system working, seek help from the manufacturer's website or a hobbyist website.

  • Use caution when handling tools or other metal objects near an embedded development board because a dropped tool can short out components and damage the board.

  • Embedded system evaluation boards often have open, exposed circuit boards, so exercise caution to avoid getting shocked.

Related Searches:

References

Resources

  • Photo Credit integrated circuit image by dip from Fotolia.com

Comments

You May Also Like

  • How to Program for Embedded System

    Programming an embedded system involves learning about the hardware and software features of the microcontroller (or microprocessor or digital signal processor) in...

  • How to Back Up a Windows Embedded System

    Windows Embedded is a suite of operating systems that are designed to be used only in embedded systems. An embedded system is...

  • Online Embedded Systems Training

    An embedded system is a computer system that's embedded inside a device or hardware for the purpose of performing a specific function...

  • How to Start Learning Objective C on Windows

    Start Learning Objective-C on Windows. Since the introduction of the iPhone SDK, many programmers, professional or amateur, want to learn Objective-C. Unless...

  • Basics of Embedded Systems in C

    Basics of Embedded Systems in C. An embedded system is a system that connects pre-programmed software on a controller embedded in the...

  • Embedded Programming Training

    Embedded programming refers to computer and network systems languages implemented to make technology easier to use. For instance, embedded programming may be...

  • How to Learn Sign Language Free

    Throughout North America, American Sign Language (ASL) is the standard visual language used to communicate between deaf and hearing individuals. ASL has...

  • How to Learn PHP Programming

    PHP is an open source software that is a server side script. You can use PHP on several different platforms such as...

  • Microprocessors & Embedded Systems

    An embedded system is a type of mini-computer that is created to perform only a few specialized tasks. They are found within...

  • Embedded System Requirements

    Embedded System Requirements. Many machines have computers embedded into them. Embedded system computers are computers that cannot have different operating systems ...

Related Ads

Featured