A PIC16F877A microcontroller is used to manipulate this MIDI controller which employs a 2-pin LCD character display.
During operation, MIDI messages are being generated by the controller each time a pushbutton is selected. The controller uses 127 program change messages as well as 16 channels for transmission. For MIDI volume control, it uses pedal potentiometer and it reads MIDI data IN for troubleshooting. An information display is acted by an LCD interface. For the EasyPIC3 Development Board, a MIDI IN and OUT interface board is available.
The PIC16F877A is available as 28/40/44-pin enhanced flash microcontroller with high-performance CPU. Its CMOS technology contains low-power consumption, commercial & industrial temperature ranges, wide operating voltage range, and fully static design. It also has analog features consisting of programmable input multiplexing from device inputs & internal voltage reference, two analog comparators, 10-bit/8-channel A/D, programmable on-chip voltage reference module, and brownout reset.
The peripheral features of the PIC16F877A include universal synchronous/asynchronous receiver/transmitter, parallel slave port, brownout detection circuitry, synchronous serial port, and two capture, compare, PWM modules. It is also self-programmable under software control and it uses in-circuit serial programming (ICSP) through 2 pins.