NHD-1.5-AU-SHIELD Graphic Color OLED Display Module + Arduino UNO Shield NHD1.5AUSHIELD- Newhaven Display 1.5” Diagonal Size Arduino Uno Shield Newhaven Display International, Inc. 2661 Galvin Ct. Elgin IL, 60124 Ph: 847-844-8795 Fax: 847-844-8796 www.newhavendisplay.com [email protected] [email protected] Document Revision History Revision 0 1 Date 11/19/2015 1/11/2016 Description Initial Release Functions and Features Updated Functions and Features 128 x 128 pixel resolution Built-in SSD1351 controller SPI MPU interface RoHS compliant microSD card reader (microSD card not included) Built-in logic level shifting for 3.3V ~ 5V operation [2] Changed by PB PB Mechanical Drawing A B 2 3 4 Rev 5 Description 6 Date 14.90 10.80 1 9.27 12.67 ( 13.2425) A PCB 53.34 0.3 BEZEL 34.80 0.2 V.A 28 0.2 (A.A 26.855) 5.10 0.3 2.10 0.2 B C (A.A 26.864) V.A 28 0.2 BEZEL 35 0.2 PCB 68.58 0.3 C 8.51 PCB 1 11.34 6.34 D 6.10 D Date 11/19/15 Unit Gen. Tolerance ±0.3mm 1 2 3 4 [3] mm 5 Model: NHD-1.5-AU-SHIELD 6 Schematic 1 2 3 4 Rev 5 Description 6 Date XX/XX/XX Unit Gen. Tolerance ±0.3mm 1 2 3 4 [4] mm 5 Model: NHD- 6 Date 2 3 4 Rev Description Date XX/XX/XX Gen. Tolerance ±0.3mm 2 3 [5] Unit mm Model: NHD- Interface Description JP1 Interface: Pin No. Symbol 1 2 3 4 5 6 7 8 9 10 11 MOSI SCK D/C /RES OLEDCS SDCS MISO NC NC VDD GND External Connection MPU MPU MPU MPU MPU MPU MPU Power Supply Power Supply Function Description Master Out Slave In Serial Clock signal Register Select signal. D/C=0: Command, D/C=1: Data Active LOW Reset signal OLED Active LOW Chip Select signal Micro SD Active LOW Chip Select signal Master In / Slave Out No Connect No Connect Supply Voltage for OLED and logic (3.3V~5V) Ground JP2 Interface: Shield Pin Symbol AREF GND Digital 13 Digital 12 Digital 11 Digital 10 Digital 9 Digital 8 Arduino UNO Pin Symbol AREF GND 13 12 11 10 9 8 Function Description Arduino UNO Pin Symbol 7 6 5 4 3 2 1 0 Function Description Arduino UNO Pin Symbol A5 A4 A3 A2 A1 A0 Function Description No Connect Ground Serial Clock signal Master In / Slave Out Master Out Slave In Micro SD Active LOW Chip Select signal No Connect No Connect JP3 Interface: Shield Pin Symbol Digital 7 Digital 6 Digital 5 Digital 4 Digital 3 Digital 2 Digital 1 Digital 0 No Connect Active LOW Reset signal OLED Active LOW Chip Select signal Register Select signal. D/C=0: Command, D/C=1: Data No Connect No Connect No Connect No Connect JP4 Interface: Shield Pin Symbol Analog 5 Analog 4 Analog 3 Analog 2 Analog 1 Analog 0 No Connect No Connect No Connect No Connect No Connect No Connect [6] JP5 Interface: Shield Pin Symbol RST 3V 5V GND GND Vin Arduino UNO Pin Symbol RESET 3.3V 5V GND GND Vin Function Description No Connect No Connect Supply Voltage for OLED and logic (5V) No Connect No Connect No Connect [7] Electrical Characteristics Item Operating Temperature Range Storage Temperature Range Supply Voltage Supply Current “H” Level input “L” Level input “H” Level output “L” Level output Symbol Top Tst Condition Absolute Max Absolute Max VDD IDD Vih Vil Voh Vol Min. -30 -40 Typ. - Max. +70 +80 Unit ⁰C ⁰C 3.0 0.8*VDD 0 0.9*VDD 0 3.3 85 - 5.5 200 VDD 0.2*VDD VDD 0.1*VDD V mA V V V V Optical Characteristics Item Viewing Angle – Top Viewing Angle – Bottom Viewing Angle – Left Viewing Angle – Right Contrast Ratio Response Time (rise) Response Time (fall) Brightness Lifetime Symbol Condition Cr Tr Tf Min. 80 80 80 80 70 10,000 Typ. 2000:1 10 10 90 - Max. - Unit ⁰ ⁰ ⁰ ⁰ us us 2 cd/m Hrs 50% checkerboard 90 cd/m², Ta=25°C, 50% checkerboard Note: Lifetime at typical temperature is based on accelerated high-temperature operation. Lifetime is tested at average 50% pixels on and is rated as Hours until Half-Brightness. The Display OFF command can be used to extend the lifetime of the display. Luminance of active pixels will degrade faster than inactive pixels. Residual (burn-in) images may occur. To avoid this, every pixel should be illuminated uniformly. Controller information Built-in SSD1351 controller. Please download specification at www.newhavendisplay.com/app_notes/SSD1351.pdf [8] Table of Commands [9] [10] [11] [12] [13] [14] Timing Characteristics 4-wire SPI: [15] Example Initialization Sequence void OLED_Init_128128RGB(void) { int i,j; GPIO_ResetBits(GPIOC, RES); graphic_delay(500000); GPIO_SetBits(GPIOC, RES); graphic_delay(500000); oled_Command_128128RGB(0xFD); oled_Data_128128RGB(0x12); oled_Command_128128RGB(0xFD); oled_Data_128128RGB(0xB1); //Command lock setting //unlock //Command lock setting //unlock oled_Command_128128RGB(0xAE); oled_Command_128128RGB(0xB3); oled_Data_128128RGB(0xF1); //clock & frequency //clock=Diviser+1 frequency=fh oled_Command_128128RGB(0xCA); oled_Data_128128RGB(0x7F); //Duty //OLED _END+1 oled_Command_128128RGB(0xA2); oled_Data_128128RGB(0x00); //Display offset oled_Command_128128RGB(0xA1); oled_Data_128128RGB(0x00); //Set display start line //0x00 start line oled_Command_128128RGB(0xA0); oled_Data_128128RGB(0xA0); //Set Re-map, color depth //8-bit 262K oled_Command_128128RGB(0xB5); oled_Data_128128RGB(0x00); //set GPIO //disabled oled_Command_128128RGB(0xAB); oled_Data_128128RGB(0x01); //Function Set //8-bit interface, internal VDD regulator oled_Command_128128RGB(0xB4); oled_Data_128128RGB(0xA0); oled_Data_128128RGB(0xB5); oled_Data_128128RGB(0x55); //set VSL //external VSL oled_Command_128128RGB(0xC1); oled_Data_128128RGB(0x8a); oled_Data_128128RGB(0x51); oled_Data_128128RGB(0x8a); //Set contrast current for A,B,C //Color A //8a //Color B //51 //Color C //8a oled_Command_128128RGB(0xC7); oled_Data_128128RGB(0x0F); //Set master contrast // [16] oled_Command_128128RGB(0xB9); //use linear grayscale LUT oled_Command_128128RGB(0xB1); oled_Data_128128RGB(0x32); //Set pre & dis-charge //pre=1h, dis=1h oled_Command_128128RGB(0xBB); oled_Data_128128RGB(0x07); //Set precharge voltage of color A,B,C // oled_Command_128128RGB(0xB2); //display enhancement oled_Data_128128RGB(0xa4); oled_Data_128128RGB(0x00); oled_Data_128128RGB(0x00); oled_Command_128128RGB(0xB6); oled_Data_128128RGB(0x01); //precharge period oled_Command_128128RGB(0xBE); oled_Data_128128RGB(0x07); //Set VcomH oled_Command_128128RGB(0xA6); //Normal display oled_Command_128128RGB(0x15); oled_Data_128128RGB(0x00); // oled_Data_128128RGB(0x7F); oled_Command_128128RGB(0x75); oled_Data_128128RGB(0x00); oled_Data_128128RGB(0x7F); oled_Command_128128RGB(0x5C); //set column start and end addresses // //set row start and end addresses // // //write to RAM command for(i=0;i<128;i++) { for(j=0;j<128;j++) { oled_Data_128128RGB(0x00); oled_Data_128128RGB(0x00); oled_Data_128128RGB(0x00); } } oled_Command_128128RGB(0xAF); //Display on } int oled_128128RGB(void) { column = 0x00; byte1 = 0x00; byte2 = 0x00; oled_Command_128128RGB(0x15); oled_Data_128128RGB(column); oled_Data_128128RGB(0x7F); //set column start and end addresses // // [17] oled_Command_128128RGB(0x75); oled_Data_128128RGB(0x00); oled_Data_128128RGB(0x7F); oled_Command_128128RGB(0x5C); //set row start and end addresses // // //write to RAM command for (i=0;i<16384;i++) //for each 24-bit pixel...128*128=16384 { f_read(&File1, &red, 1, &blen); //read the red 8-bits f_read(&File1, &green, 1, &blen); //read the green 8-bits f_read(&File1, &blue, 1, &blen); //read the blue 8-bits red = red >> 2; green = green >> 2; blue = blue >> 2; oled_Data_128128RGB(red); oled_Data_128128RGB(green); oled_Data_128128RGB(blue); } /////////////////////////////////////////////////////// Example Arduino Code Please see: https://github.com/NewhavenDisplay/NHD-1.5-128128ASC3_Example [18] Quality Information Test Item Content of Test High Temperature storage Test the endurance of the display at high storage temperature. Test the endurance of the display at low storage temperature. Test the endurance of the display by applying electric stress (voltage & current) at high temperature. Test the endurance of the display by applying electric stress (voltage & current) at low temperature. Test the endurance of the display by applying electric stress (voltage & current) at high temperature with high humidity. Test the endurance of the display by applying electric stress (voltage & current) during a cycle of low and high temperatures. Test the endurance of the display by applying vibration to simulate transportation and use. Low Temperature storage High Temperature Operation Low Temperature Operation High Temperature / Humidity Operation Thermal Shock resistance Vibration test Atmospheric Pressure test Static electricity test Test Condition Test the endurance of the display by applying atmospheric pressure to simulate transportation by air. Test the endurance of the display by applying electric static discharge. 2 -40⁰C , 96hrs 1,2 +70⁰C 96hrs 2 -30⁰C , 96hrs 1,2 +60⁰C , 90% RH , 96hrs 1,2 -30⁰C,30min -> 25⁰C,5min -> 70⁰C,30min = 1 cycle 100 cycles 10-22Hz , 15mm amplitude. 22-500Hz, 1.5G 30min in each of 3 directions X,Y,Z 115mbar, 40hrs VS=800V, RS=1.5kΩ, CS=100pF One time Note 1: No condensation to be observed. Note 2: Conducted after 2 hours of storage at 25⁰C, 0%RH. Note 3: Test performed on product itself, not inside a container. Evaluation Criteria: 1: Display is fully functional during operational tests and after all tests, at room temperature. 2: No observable defects. 3: Luminance >50% of initial value. 4: Current consumption within 50% of initial value Precautions for using OLEDs/LCDs/LCMs See Precautions at www.newhavendisplay.com/specs/precautions.pdf Warranty Information and Terms & Conditions http://www.newhavendisplay.com/index.php?main_page=terms [19] Note +800⁰C , 96hrs 3 3