the home-made MIDI-guitar


MIDI protocol
Frets and strings
Analog part
Control and indications
Algorithm of note detection


About author

PIC16x74 microcontroller

PIC16F74B microcontroller by Microchip is selected as main control unit of the scheme. Flash ROM makes it be easy to reprogram. It has merits and demerits, but merits weigh down. The main cause why it is selected - I have it on my work in unlimited quantity, with all documentation, programmers, debuggers etc.

The main features that was taken into consideration were:

  • minimum of external component required for functioning: resonator and resistor to power plus two capacitors as power supply filters - that's all;
  • clock rate up to 20 MHz;
  • onboard ADC which can be commuted with any of 8 possible inputs;
  • onboard UART;
  • powerful ports (up to 20 mA per pin, up to 200 mA totally);
  • any port pin can be programmed for input or output, having high impedance in input mode;
  • very perverted RISC system of commands (oh, I remembered all Russian round oaths when I understood, after hours of debugging, that while the result of subtraction is negative the carry flag is not set! - though it is documented feature), but understandable due to its conciseness.

pic.gif (7840 bytes)

Port map:

A0..A3, A5, E0 - ADC inputs from pickups of string 1..6

B0..B5 - fret scanning outputs of string 1..6

B6, B7 - for working with buttons and indicator LEDs

C0..C3, D0..D3, C4..C5, D4..D7, E2..E1, A4 - fret scanning inputs for frets 1..17

C6 = TX - UART transmitter (to MIDI-OUT)

C7 = RX - UART receiver*

* it is planned to equip Tryndelka with control panel with LCD and keyboard, controlled by another MC sending commands to this MC through RX

<<< Previous   |   Next >>>

Хостинг от uCoz