Индикатор уровня сигнала на дисплее 0,91′ I2C 128×32 OLED

0,91″ I2C 128×32 OLED — это компактный дисплей, который использует технологию OLED (Organic Light Emitting Diode) для отображения изображений. Дисплей имеет интерфейс I2C, который обеспечивает простое подключение к микроконтроллерам и другим устройствам.

Основные характеристики дисплея:

— Разрешение 128×32 пикселей.
— Размер дисплея 0,91 дюйма (около 2,3 см).
— Яркость до 150 кд/м².
— Контрастность 2000:1.
— Угол обзора 160 градусов.
— Поддержка интерфейса I2C с адресом 0x3C.

Дисплей 0,91″ I2C 128×32 OLED обеспечивает четкое и яркое отображение информации, которое может быть использовано в широком спектре приложений. Он легко подключается к различным устройствам, таким как Arduino, Raspberry Pi и другим микроконтроллерам.

Дополнительно, OLED-дисплей имеет низкое энергопотребление, что позволяет использовать его в батарейных устройствах. Он также обладает быстрым временем отклика и высокой контрастностью, что делает его идеальным для использования в приложениях, где требуется быстрое и точное отображение информации.

В целом, дисплей 0,91″ I2C 128×32 OLED является отличным выбором для тех, кто ищет компактный и яркий OLED-дисплей с простым подключением по интерфейсу I2C.

В индикаторе уровня сигнала используется плата разработчика LGT8F328P-LQFP32 MiniEVB, как использовать плату в среде программирования Arduino IDE рассказано в — http://rcl-radio.ru/?p=129966

LGT8F328P-LQFP32 MiniEVB — это плата разработки, основанная на микроконтроллере LGT8F328P с 32 выводами в корпусе LQFP32. Это мощный микроконтроллер, который обеспечивает высокую производительность и широкие возможности для разработки.

Основные характеристики платы LGT8F328P-LQFP32 MiniEVB:

— Микроконтроллер LGT8F328P с тактовой частотой до 32 МГц и 32 Кбайт памяти Flash.
— Поддержка интерфейсов SPI, I2C, UART, ADC и PWM.
— Встроенный USB-интерфейс для программирования и отладки.
— Низкое энергопотребление и поддержка режима сна.
— Поддержка работы от внешнего источника питания 5 В или от USB-порта.

LGT8F328P-LQFP32 MiniEVB — это отличная плата разработки для начинающих и опытных разработчиков, которые хотят создавать проекты на основе микроконтроллера LGT8F328P. Она обеспечивает легкую разработку и отладку приложений, поддерживает широкий спектр интерфейсов и имеет удобный USB-интерфейс для программирования и отладки.

Кроме того, плата LGT8F328P-LQFP32 MiniEVB имеет компактный размер и низкое энергопотребление, что позволяет использовать ее в различных приложениях, включая портативные устройства и системы автоматизации.

Схема индикатора уровня сигналов

Скетч:

#include <Wire.h>
#include <Adafruit_GFX.h>     // https://github.com/adafruit/Adafruit-GFX-Library
#include <Adafruit_SSD1306.h> // https://github.com/adafruit/Adafruit_SSD1306
 Adafruit_SSD1306 display(128, 32, &Wire);

 int an_izm_r,an_izm_l;
 int ur_l,urr_l,ur_r,urr_r;

void setup() {
 Serial.begin(9600);
 Wire.begin();Wire.setClock(800000L);
 display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
 analogReadResolution(8);
 analogReference(INTERNAL1V024);
 pinMode(A0,INPUT);
 pinMode(A1,INPUT);
}

void loop() {
 an_izm_r = analogRead(A0);
 an_izm_l = analogRead(A1);
   urr_l = an_izm_l;
   urr_r = an_izm_r;
  if(urr_l<ur_l){ur_l=ur_l-4;}else{ur_l = an_izm_l;}
  if(urr_r<ur_r){ur_r=ur_r-4;}else{ur_r = an_izm_r;}
 testfillrect();
}


void testfillrect(void) {
  display.clearDisplay();
for(int i=0;i<=ur_l;i+=4){
  display.fillRect(i, 0, 2, 8, SSD1306_INVERSE);
}
  display.setTextSize(1); 
  display.setTextColor(SSD1306_WHITE);
  display.drawLine(0, 9, 125, 9, SSD1306_WHITE);
  display.setCursor(0,11);   
  display.println("-20  -10   -3");
  display.drawLine(90, 10, 125, 10, SSD1306_WHITE);
  display.setCursor(90,11);   
  display.setTextColor(SSD1306_BLACK, SSD1306_WHITE);
  display.println(" 0  +3");
  display.drawLine(0, 19, 125, 19, SSD1306_WHITE);
for(int i=0;i<=ur_r;i+=4){
  display.fillRect(i, 21, 2, 8, SSD1306_INVERSE);
}
  display.display();
}

Форум — http://forum.rcl-radio.ru/viewtopic.php?id=566


Доработка — пиковый индикатор

Форум — http://forum.rcl-radio.ru/viewtopic.php?pid=9343#p9343

Comments

Добавить комментарий

Войти с помощью: