IIC / I2C 1602 OLED Module Display - For Arduino / PIC / AVR / ARM
- Войдите на сайт для отправки комментариев
Пнд, 07/10/2013 - 20:32
Здравствуйте. Купил такой модуль на eBay. Код примера, приведенный на странице заказа компилируется с ошибками. Я мало, что соображаю пока во всем этом. Хочу для начала проверить, что мне прислал дядюшка Лео. Напишите пожалуйста скетч, чтобы это заработало.
Дык ты наверное библиотеку не скачал.
Наверное есть похожая строка в начале скетча:
Здравствуйте. Купил такой телефон на eBay. Инструкция на странице заказа, при попытке позвонить выдает ошибку. Я мало, что соображаю пока во всем этом. Хочу для начала проверить, что мне прислал дядюшка Лео. Напишите пожалуйста инструкцию, чтобы это заработало.
Я мало, что соображаю пока во всем этом.
А зачем тогда покупаете незнакомые вам предметы?
Дядюшку обидели, Ляо его зовут.
Дядюшку обидели, Ляо его зовут.
Не факт - может быть и француз китайского происхождения.
дык,Максим,у вас симка не активирована ))
viva_viva2004,перефразируя вышеперечисленные ответы :вы предоставили очень сильный минимум информации,о вашем устройстве,как вы уже его падключили,к какому контроллеру,без чего вам просто невозможно помочь.
ну скажем я и узнал дисплей ,в принципе найти модель даже по фото не трудно,с какой мне стати вам помогать идеями,написанием кода если вы сами полинились предоставить минимум информации "предполая" что бы я искал/изучал ее за вас? предоставление "максимум" информации в ваших же интересах.
Возвращаясь к теме про проверку индикатора. Спасибо всем, кто проявил интерес к созданной мною теме.
Запросил я у продавца какую-нибудь информацию про приобретенное мною устройство и он мне выслал ссылку на техническое описание: /www.wide.hk/download/I2C1602OLED.rar
В качестве примера был следующий текст:
//***************************************//
// --- WIDE.HK---//
// --- Revised Date : 06/30/2013
// --- I2C Arduino - Arduino UNO Demo ---//
// --- SSD131x PMOLED Controller ---//
// --- SCL, SDA, GND, VCC(3.3v -5v) ---//
//***************************************//
#include <Wire.h> // *** I2C Mode
#define OLED_Address 0x3c
#define OLED_Command_Mode 0x80
#define OLED_Data_Mode 0x40
void setup()
{
Wire.begin();
}
void loop()
{
// *** I2C initial *** //
delay(100);
sendCommand(0x2A); // **** Set "RE"=1 00101010B
sendCommand(0x71);
sendCommand(0x5C);
sendCommand(0x28);
sendCommand(0x08); // **** Set Sleep Mode On
sendCommand(0x2A); // **** Set "RE"=1 00101010B
sendCommand(0x79); // **** Set "SD"=1 01111001B
sendCommand(0xD5);
sendCommand(0x70);
sendCommand(0x78); // **** Set "SD"=0
sendCommand(0x08); // **** Set 5-dot, 3 or 4 line(0x09), 1 or 2 line(0x08)
sendCommand(0x06); // **** Set Com31-->Com0 Seg0-->Seg99
// **** Set OLED Characterization *** //
sendCommand(0x2A); // **** Set "RE"=1
sendCommand(0x79); // **** Set "SD"=1
// **** CGROM/CGRAM Management *** //
sendCommand(0x72); // **** Set ROM
sendCommand(0x00); // **** Set ROM A and 8 CGRAM
sendCommand(0xDA); // **** Set Seg Pins HW Config
sendCommand(0x10);
sendCommand(0x81); // **** Set Contrast
sendCommand(0xFF);
sendCommand(0xDB); // **** Set VCOM deselect level
sendCommand(0x30); // **** VCC x 0.83
sendCommand(0xDC); // **** Set gpio - turn EN for 15V generator on.
sendCommand(0x03);
sendCommand(0x78); // **** Exiting Set OLED Characterization
sendCommand(0x28);
sendCommand(0x2A);
//sendCommand(0x05); // **** Set Entry Mode
sendCommand(0x06); // **** Set Entry Mode
sendCommand(0x08);
sendCommand(0x28); // **** Set "IS"=0 , "RE" =0 //28
sendCommand(0x01);
sendCommand(0x80); // **** Set DDRAM Address to 0x80 (line 1 start)
delay(100);
sendCommand(0x0C); // **** Turn on Display
// ********************************************************************//
// **** Show Data Value *** //
send_string("0123456789ABCDEF");
sendCommand(0xC0); // **** New Line
send_string("---WIDE.HK---");
//sendCommand(0x01); // **** Clear display
while(1);
// **** Show Data Value *** //
// ********************************************************************//
}
void sendData(unsigned char data)
{
Wire.beginTransmission(OLED_Address); // **** Start I2C
Wire.write(OLED_Data_Mode); // **** Set OLED Data mode
Wire.write(data);
Wire.endTransmission(); // **** End I2C
}
void sendCommand(unsigned char command)
{
Wire.beginTransmission(OLED_Address); // **** Start I2C
Wire.write(OLED_Command_Mode); // **** Set OLED Command mode
Wire.write(command);
Wire.endTransmission(); // **** End I2C
delay(10);
}
void send_string(const char *String)
{
unsigned char i=0;
while(String[i])
{
sendData(String[i]); // *** Show String to OLED
i++;
}
}
Текст без ошибок откомпилировался в версии arduino-1.0.4. В версии arduino-023 компиляция шла с различными ошибками.
К контроллеру я еще не подключал, так как наша доблестная почта уже почти два месяца не может мне доставить заказанную мною: MEGA2560 R3 Control Board ATMEGA16U2.
Ссылка битая и почитайте Вставка программного кода в тему/комментарий.
Запросил я у продавца какую-нибудь информацию про приобретенное мною устройство и он мне выслал ссылку на техническое описание: /www.wide.hk/download/I2C1602OLED.rar
Ссылка битая [...]
нужно отбросить левый слеш
www.wide.hk/download/I2C1602OLED.rar
какие ошибки выдает?
какой версии у вас среда разработки Arduino IDE?
Использовал версию Arduino 0023, в ней такие ошибки при компиляции:
В строках 92 и 93:
sketch_oct15a.cpp: In function 'void sendData(unsigned char)':
sketch_oct15a:90: error: 'class TwoWire' has no member named 'write'
sketch_oct15a:91: error: 'class TwoWire' has no member named 'write
В строках 100 и 101:
sketch_oct15a.cpp: In function 'void sendCommand(unsigned char)':
sketch_oct15a:98: error: 'class TwoWire' has no member named 'write'
sketch_oct15a:99: error: 'class TwoWire' has no member named 'write'
Использовал версию Arduino 1.0.4, в не при компиляции ошибки не выдает.
Спасибо за помощь.