IC CH1115 - Альтернатива снимаемому с производства микрочипу SSD1307
В связи со снятием с производства микрочипа SSD1307, мы разрабатываем новую серию дисплеев с применением CH1115. При разработке аналогов, мы всегда стараемся найти замену с наиболее близкими характеристиками, чтобы обеспечить плавный переход на альтернативные решения.
В данной статье мы постараемся подробно объяснить различия между двумя моделями микрочипов с точки зрения аппаратного и программного обеспечения, а также избежать проблем несовместимости.
Серии OLED дисплеев | |
---|---|
Past model(SSD1307) | New model(CH1115) |
WEO012832G | WEO012832P |
1. Аппаратная часть
Некоторые выводы микрочипа SSD1307 и CH1115 имеют разные названия, но выполняют одни и те же функции. Например, выводы VCC, D/C и BS0 у SSD1307 эквивалентны выводам VPP, A0 и IM0 у CH1115. Хотя некоторые выводы выполняют одну и ту же функцию, для наиболее корректной передачи яркости необходимо заменить резистор на IREF. Рекомендуемые схемы подключения двух микрочипов показаны на рисунках 1 и 2 ниже:
Обратите внимание на значение сопротивления на выводе IREF, которое напрямую влияет на яркость и ток. При сравнении напряжения питания VCC (VPP) обоих микрочипов, можно заметить, что для SSD1307 требуется более высокое значение сопротивления. Формула расчета сопротивления приведена ниже.
SSD1307:
CH1115:
2. Программная часть
Большинство команд SSD1307 и CH1115 совместимы, но некоторые из них все же отличаются. Например, у обоих микрочипов есть свои эксклюзивные функции, поэтому каждый из них может использовать не все команды. В свою очередь некоторые команды выполняют одну и ту же функцию, но имеют несовместимые параметры, как показано в таблице 2.
SSD1307 | CH1115 | |
---|---|---|
Set Memory Addressing Mode 20H |
Set the way of memory addressing into one of the below three modes. 00H:Horizontal Addressing Mode 01H:Vertical Addressing Mode 02H:Page Addressing Mode |
N/A |
Set Pump voltage value 30H~33H |
N/A | Specifies output voltage (VPP) of the internal charger pump. 30H: 10V;31H: 7.4V;32H: 8V;33H: 9V |
Set Display Start Line 40H~66H/7FH |
Sets the Display Start Line register to determine starting address of display RAM. (40H~66H) |
Specifies RAM display line for COM0. (40H~7FH) |
IREF Resistor Set 82H |
N/A | IREF can be controlled by external resister or internal resister. |
Set Segment Re-map A0H~A1H |
N/A | Change the relationship between RAM column address and segment driver. |
Set SEG pads hardware configuration A2H~A3H |
N/A | Set the SEG signals pad configuration to match the OLED panel hardware layout. |
Set DC-DC OFF/ON ADH |
N/A | This command is to control the DC-DC voltage converter. |
Set Display Offset D3H |
This is a double byte command which specifies the mapping of the display start line to one of COM0~COM38. | This is a double byte command which specifies the mapping of display start line to one of COM0~COM63. |
Set Display Clock Divide Ratio/Oscillator Frequency D5H |
Dicide Ratio:1~16 | Dicide Ratio:3、4、8、16 |
Set Pre-charge Period D9H |
A[3:0]:Dis-charge A[7:4]:Pre-charge |
A[3:0]:Pre-charge A[7:4]:Dis-charge |
Set COM Pins Hardware Configuration DAH |
02H:Sequential Mode; Disable COM Left/Right remap 12H:Alternative Mode; Disable COM Left/Right remap 22H:Sequential Mode; Enable COM Left/Right remap 32H:Alternative Mode; Enable COM Left/Right remap |
N/A |
Set VCOMH Deselect Level DBH |
00H:0.65 x VCC 20H:0.77 x VCC 30H:0.83 x VCC |
00H:0.430 x VCC ~ 40H:VCC |
Set row non-overlap/SEG Hiz Period DCH |
N/A | This command is used to set the duration of the row non-overlap /SEG Hiz Period period. |
Set Command Lock FDH |
Set Command Lock | N/A |
3. Совместимость
Для достижения совместимости между SSD1307 и CH1115 необходимо внести изменения в аппаратную и программную часть модуля.
Со стороны аппаратной части, выводы двух микрочипов схожи, за исключением сопротивления на выводе IREF, поэтому оно должно соответствовать представленным выше формулам расчета. Если значение сопротивления слишком мало, то существует риск выхода из строя микрочипа. Кроме того, напряжение питания VCC (VPP) должно соответствовать значениям указанным в спецификации: SSD1307 – 7В ~ 16В ;CH1115 – 6,4В ~ 14В.
В программной части следует обратить внимание на следующие моменты:
1. У SSD1307 есть множество режимов адресации памяти для выбора. CH1115, в свою очередь, имеет только режим адресации страницы, который и рекомендуется использовать.
2.SSD1307 поддерживает разрешение 128x39, а CH1115 - 128x64. При настроке Display Offset (D3h) и переключении сегментов (A0h/A1h), следует обратить внимание на проблему смещения изображения, вызванного отличием начального адреса.
3. По сравнению с микрочипом SSD1307, в CH1115 имеется функция включения преобразователя напряжения DC-DC (ADh), но включать ее не рекомендуется, и следует использовать внешнее напряжение питания VCC/VPP.
Кроме того, установив блокировку команд (FDh) для SSD1307, можно записать соответствующие команды двух микрочипов в один и тот же исходный код. При блокировке SSD1307, он не принимает никаких команд кроме FDh, в отличии от CH1115, что позволяет отдельно отправлять команды на оба микрочипа.
4. Заключение
При условии правильной конфигурации резисторов и конденсаторов, внесении изменений в код инициализации, используя одинаковую аппаратную и программную части, можно добиться плавного перехода с SSD1307 на CH1115.