Microchip Technology

user Occupation hasn't been added

Company Logo Microchip

  • PIC Based USB Audio Streamer

  • Created: Feb 20, 2017

    • view2535
    • comment0
    • bookmark0
    • fork0


No description available.


A sound card, which is also known as audio card, is an expansion card that is used in computers to produce sound than can be heard through headphones or speakers. Sound cards are controlled by a computer through computer programs. In this reference design, a PIC microcontroller and other Microchip products are combined to build a sound card. This PIC-based sound card acts as an audio streamer and can be easily interfaced with a computer since it has a USB port, which can be connected to a computer by using type A-B USB cable.

The hardware of this sound card, as shown in the circuit, is mainly composed of a PIC18F2550 microcontroller, MCP4822 Digital-to-Analog Converter (DAC), MCP41010 digital potentiometer, and an MCP6022 op-amp. With a computer program that communicates with this sound card, the data is transmitted through the USB type B port. The PIC18F2550 microcontroller, which contains a USB Serial Interface Engine (SIE), receives the data and relays it to the MCP4822 DAC. The MCP4822 DAC receives the data from the PIC18F2550 microcontroller through its SPI interface. The data is converted into analog and sent to the MCP41010 device, which is a digital potentiometer that serves as a volume control for the MCP6022 preamp. The MCP41010 setting is also monitored and controlled by the PIC18F2550 microcontroller. The PIC18F2550 microcontroller communicates with the MCP41010 device through its SPI interface.

The MCP6022 op-amp acts as a preamp or a buffer of the analog signal it receives from the MCP41010 digital potentiometer. Only the digital potentiometer setting can control the output of the MCP6022 since it was configured as a buffer. The sound card has a stereo output, which is connected to the 3.5mm audio connector. The lower portion of the circuit is just identical to the upper part. Both channels are all controlled by the PIC18F2550 microcontroller. The whole circuit operates from the 5V supply that comes from the USB port.