USB : USB Classes    Software for HID devices  

Debugging a regular microcontroller project that runs by itself is hard enough. The micro doesn't have a display or keyboard or mouse to help us see what is happening and control it directly.

That's why we need special debugging hardware tools such as In Circuit Debuggers and Emulators. (Sometimes, like when we have a brand new printed circuit board design, we can't even be sure that the hardware itself is working properly.)

Debugging a USB microcontroller project is harder still, because we now have a two processor system: our peripheral's micro, and that other processor on the other side of the USB cable, the PC. If we set a breakpoint in the microcontroller code, the PC immediately decides that our device has died, and disables the USB connection to it.

 
  

6 of 7
Copyright Notice and Author Information