Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
other_boards:midi_keyboard [2017/07/04 23:52]
admin [OLED Display]
other_boards:midi_keyboard [2019/03/26 18:47]
admin removed
Line 3: Line 3:
  
 ---- ----
 +==== Code ====
 +{{ :​other_boards:​midi_keyboard_04.zip |}}\\
  
 +----
 ==== MCP23017 ==== ==== MCP23017 ====
-**I2C**\\+=== I2C ===
    ​I2C ​     SDA SCL    ​I2C ​     SDA SCL
    ​Arduino Uno A4 A5    ​Arduino Uno A4 A5
  
-**Setting the Adress**\\+=== Setting the Adress ​===
 To set the I2C address of the MCP23017 one has to connect A0, A1 and A2 to GND or to power.\\ To set the I2C address of the MCP23017 one has to connect A0, A1 and A2 to GND or to power.\\
 GND = 0 and +5V = 1\\ GND = 0 and +5V = 1\\
Line 25: Line 28:
    ​mcp.begin(address);​    ​mcp.begin(address);​
  
-**Pulldown Resistor**\\+=== Pulldown Resistor ​===
 Every botton is connected to +5V and at the pin to the MCP23017 it has a 10k pulldown resistor to ground.\\ Every botton is connected to +5V and at the pin to the MCP23017 it has a 10k pulldown resistor to ground.\\
    IO Pin ----- Button ------- +5V    IO Pin ----- Button ------- +5V
Line 33: Line 36:
            GND            GND
  
-**Library**\\+=== Library ​===
 [[https://​github.com/​adafruit/​Adafruit-MCP23017-Arduino-Library|Adafruit-MCP23017-Arduino-Library]]\\ [[https://​github.com/​adafruit/​Adafruit-MCP23017-Arduino-Library|Adafruit-MCP23017-Arduino-Library]]\\
  
-**Datasheet**\\+=== Datasheet ​===
 [[http://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​21952b.pdf|MCP23017]]\\ [[http://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​21952b.pdf|MCP23017]]\\
 +
 +===Key and Pin parsing===
 +   ​MCP1 ​  ​Key/​Note ​    Pin Library
 +   ​A0 ​      ​D1 ​        0
 +   ​A1 ​      ​C#​1 ​       1
 +   ​A2 ​      ​E1 ​        2
 +   ​A3 ​      ​D#​1 ​       3
 +   ​A4 ​      ​F1 ​        4
 +   ​A5 ​      ​C1 ​        5
 +   ​A6 ​      ​G1 ​        6
 +   ​A7 ​      ​F#​1 ​       7
 +   ​B0 ​      ​A#​1 ​       8
 +   ​B1 ​      ​H1 ​        9
 +   ​B2 ​      ​G#​1 ​       10
 +   ​B3 ​      ​A1 ​        11
 +   ​B4 ​   Switch ​       12
 +   ​B5 ​  ​Octave Up      13
 +   ​B6 ​  ​Octave Down    14
 +   ​B7 ​                 15
 +   
 +   ​MCP2 ​  ​Key/​Note ​    Pin Library
 +   ​A0 ​      ​D2 ​        0
 +   ​A1 ​      ​C#​2 ​       1
 +   ​A2 ​      ​E2 ​        2
 +   ​A3 ​      ​D#​2 ​       3
 +   ​A4 ​      ​F2 ​        4
 +   ​A5 ​      ​C2 ​        5
 +   ​A6 ​      ​G2 ​        6
 +   ​A7 ​      ​F#​2 ​       7
 +   ​B0 ​      ​A#​2 ​       8
 +   ​B1 ​      ​H2 ​        9
 +   ​B2 ​      ​G#​2 ​       10
 +   ​B3 ​      ​A2 ​        11
 +   ​B4 ​      ​C3 ​        12
 +   ​B5 ​  ​Program Up     13
 +   ​B6 ​  ​Program Down   14
 +   ​B7 ​                 15
 +   
  
 ---- ----
Line 43: Line 84:
 [[https://​www.smart-prototyping.com/​Prototyping-Modules/​Arduino/​OLED-0.96inch-12864-display-module-blue.html]]\\ [[https://​www.smart-prototyping.com/​Prototyping-Modules/​Arduino/​OLED-0.96inch-12864-display-module-blue.html]]\\
  
-**Pins:**\\ +=== Pins: === 
-   ​GND:  ​power ground +   OLED Display ​                     Arduino 
-   ​VCC: ​ 3.3v or 5.0V power supply +    ​ 
-   ​D0: ​  ClK +   ​GND:  ​Ground ​                     GND 
-   ​D1: ​  ​MOSI ​data +   ​VCC: ​ 3.3v or 5.0V Power Supply ​  +5V 
-   ​RST: ​ Reset +   ​D0: ​  CLK                         Pin 08 
-   ​DC: ​  Data/Command +   ​D1: ​  ​MOSI ​                       Pin 07 
-   ​CS: ​  ​Chip ​select Port+   ​RST: ​ Reset                       Pin 06 
 +   ​DC: ​  Data Command ​               Pin 05 
 +   ​CS: ​  ​Chip ​Select ​                NC
        
-**Bit Converter**\\+=== Bit Converter ​===
 [[http://​en.radzio.dxp.pl/​bitmap_converter/​]]\\ [[http://​en.radzio.dxp.pl/​bitmap_converter/​]]\\
 +To convert a picture one need a 128x64 pixel, B/W, 1Bit Bitmap.\\
 +Settings:\\
 +   Byte Orientation:​ vertical
 +   ​Width:​ 128  Hight: 64
 +   Size Endianness: Little
 +   ​Pixel/​Byte 8
  
-**Example Code**\\+=== Example Code ===
 [[https://​www.smart-prototyping.com/​image/​data/​2_components/​Arduino/​100952%20OLED%200.96inch%2012864%20display%20module%20blue/​OLED.zip|OLED-Example]]\\ [[https://​www.smart-prototyping.com/​image/​data/​2_components/​Arduino/​100952%20OLED%200.96inch%2012864%20display%20module%20blue/​OLED.zip|OLED-Example]]\\
 +
 +----
 +==== MIDI ====
 +=== MIDI Library ===
 +Here are the links for the MIDI library for MIDI over the serial pins (TX, RX).\\
 +[[https://​github.com/​FortySevenEffects/​arduino_midi_library/​releases/​tag/​4.2|MIDI Library 4.2]]\\
 +
 +=== MIDI Specifications ===
 +[[http://​www.midi.org/​techspecs/​midimessages.php]]
 +[[http://​dernulleffekt.de/​midi/​table1.html]]\\
 +[[http://​dernulleffekt.de/​midi/​table2.html]]\\
 +[[http://​dernulleffekt.de/​midi/​table3.html]]\\
 +[[http://​dernulleffekt.de/​midi/​table4.html]]\\
  
 ---- ----
 ==== Knowledge ==== ==== Knowledge ====
-**MCP23017**\\+=== MCP23017 ​===
 [[http://​www.learningaboutelectronics.com/​Articles/​MCP23017-IO-port-expander-circuit-with-arduino.php]]\\ [[http://​www.learningaboutelectronics.com/​Articles/​MCP23017-IO-port-expander-circuit-with-arduino.php]]\\
 [[http://​www.nikolaus-lueneburg.de/​2015/​11/​mcp23017-i2c-io-port-expander/​]]\\ [[http://​www.nikolaus-lueneburg.de/​2015/​11/​mcp23017-i2c-io-port-expander/​]]\\
-**OLED Display**\\+=== OLED Display ​===
 [[http://​www.instructables.com/​id/​How-to-use-OLED-display-arduino-module/​]]\\ [[http://​www.instructables.com/​id/​How-to-use-OLED-display-arduino-module/​]]\\
  
 ---- ----