Se afișează postările cu eticheta ST7567S. Afișați toate postările
Se afișează postările cu eticheta ST7567S. Afișați toate postările

vineri, 15 septembrie 2023

Placa de dezvoltare RP2040-Zero programata cu mediu Arduino

    Dupa ce a sosit o placa RP2040-Zero (o versiune redusa a uneia Raspberry Pi Pico), am instalat-o in programul Arduino IDE ca in articolul Programming Raspberry Pi Pico with Arduino IDE (Pico W compatible)

 si am facut teste cu ledul multicolor adresabil (WS2812) de pe placa, cu sketch-ul RP2040Zero_RGB.ino realizand si 2 filmulete:

test cu placa RP2040-Zero programat cu Arduino IDE

test with RP2040-Zero board flashed with Arduino IDE

   Dupa asta am conectat un afisaj 1602 cu interfata i2c, inspirat de informatiile din filmuletul I2C 16 x 2 LCD Display with Raspberry Pi Pico or W Using Arduino IDE am incarcat sketch-ul RP2040Zero_RGB.ino conectand afisajul la interfata i2c la GP4 (SDA) si GP5 (SCL):
si am realizat si filmuletele:
   Observand ca programele obisnuite sunt compatibile cu placile clasie (ATMega328, ESP8266, etc) am testat si placa RP2040-Zero cu un afisaj i2c cu driver ST7567S, pastrand conectarea GP4 (SDA) si GP5 (SCL) si urmnd ce prezentasem in articolul Ceas NTP pe afisaj monocrom de 2,2" cu rezolutie de 128x64 (ST7567S - i2c)
   Am folosit sketch-ul ST7567S_u8g2_GraphicTest.ino 
si am facut 2 filmulete:

miercuri, 23 august 2023

Ceas NTP in format de 12 ore pe afisaj monocrom SPI (rezolutie128x64 si driver ST7920)

    Deoarece m-am tot "batut" cu afisaj de 2.2" cu interfata i2c si driver ST7567S, in sensul ca dupa un timp apar "balarii", dupa cum am descris in articolul anterior si intr-un-ul mai vechi, am zis sa revin la un afisaj "clasic", cu interfata SPI, cu aceeasi rezolutie de 128x64, cel cu driver ST7920 si diagonala mai mare.

   Am luat ca baza de plecare programul pentru ceasul NTP in format de 12 ore pe afisaj de 1,3" cu driver SH1107 prezentat intr-un articol recent

doar ca folosit configuratia din articolul ESP8266 and ST7920 powered 128*64 Liquid Crystal Display in a test bench, in care este prezentata si schema de test
  Am folosit configurarea recomandata, pentru biblioteca u8g2lib este
U8G2_ST7920_128X64_F_SW_SPI u8g2(U8G2_R2, 14, 13, 15, U8X8_PIN_NONE);
si astfel programul pentru ceasul NTP in format de 12 ore pe afisaj SPI monocrom cu driver ST7920 este NTPclock_12864_st7920_v1c3.ino.
   Am realizat si 2 filmulete:

24.08.2023
   Am realizat ca afisajul e mai mare decat aveam eu informatiile initiale (2,9" sau 2,6", areal are 3,1-3,2") pentru ca are diagonala de cca. 8-8,1cm.

Ceas NTP pe afisaj monocrom de 2,2" cu rezolutie de 128x64 (ST7567S - i2c) - 3

 

   Am observat, din nou, dupa anumite perioade de timp (de ordinul orelor sau zeci de ore) distorsionarea imaginii/informatiei pe afisaj, asa-zisele "balarii", asa ca ma decis sa schimb si la al doilea afisaj a stabilizatorului de tensiune, dupa cum prezentasem si in articolul initial, doar ca de data aceasta am pus un AM1117-3.3 in loc de XC6206 (662K)

si apoi un condensator SMD de 4,7μF pe ramura de 3,3V.

   Pentru a elimina problema contactelor imperfecte de pe breadboardd, am fost realizat un cablaj, care are si 2 comutatoare (pentru a realiza un ceas cu reglaj ora de vara/iarna, respectiv format de 12 ore sau de 24 ore).
   Schema este

   Am modificat programul pentru ceasul NTP sa am active cele 2 comutatoare, acesta  fiind acum NTPclock_12864_ST7566S_v2a.ino si am realizat niste filmulete:

    Functie de pozitia comutatorului de format ora vara /iarna, putem avea
- ora in format de 24 ore si ora de vara
- ora in format de 12 ore si ora de vara
- ora in format de 12 ore si ora de iarna
- ora in format de 24 ore si ora de iarna
   Din pacate, afisajul cu fundal negru (albastru inchis) testat primul cu cablajul a "cedat" destul de repede (cateva ore)
asa ca l-am pus pe cel cu fundal gri deschis, dar si acesta a aratat, dupa o perioada mai lunga de timp, ca alta e problema, ... ori driverul ori biblioteca grafica...
   Problema este in curs de investigare, si in functie de rezultat, o sa pun informatia aici... pana atunci, am pus un ceas cu program similar dar cu afisaj cu driver ST7920 sa functioneze langa acesta si...
- initial (ora 22:25, respetiv 10:25 PM, seara)
- dupa ceva timp (ora 5:38 dimineata)
- resetare ceas cu ST7567S, pentru remonitorizare
- dupa alt timp (ora 7:57 dimineata)

miercuri, 16 august 2023

Ceas NTP pe afisaj monocrom de 2,2" cu rezolutie de 128x64 (ST7567S - i2c) - 2

    Dupa ce am modificat programul ceasului NTP cu afisaj de 1.3" cu driver SH1107 pentru a afisa ora in format de 12 ore

 am zis sa revin si la afisajul buclucas de 2.2" cu driver ST7567S, ca tot au aceeasi rezolutie (128x64).

   Schema este identica

   Programul adaptat este NTPclock_12864_ST7566S_v1c.ino si functionarea ceasului este prezentata in filmuletele:
  Se observa din primele poze ca am pastrat partea de afisare a numelui zilei, la minutele impare in romana si la cele pare in engleza.

marți, 1 august 2023

Ceas NTP pe afisaj monocrom de 2,2" cu rezolutie de 128x64 (ST7567S - i2c)

    Dupa ce am testat cu succes cateva exemple pe acest afisaj, dupa cum am prezentat in articolul precedent, am scris un programior pentru a crea un pseudo-ceas dupa cum se vede in filmuleltele urmatoare:

pseudo-ceas pe afisaj i2c monocrom 128x64 (ST7567)

pseudo-clock on i2c monochrome 128x64 display (ST7567)

 in care am folosi schema clasica de conectare

    Prima versiune de ceas NTP foloseste programiorul NTPclock_12864_st7567s_v1.ino si modul de prezentare a inormatiilor e ca in filmuletele:
   Dupa teste de cateva ore am constatat ca apar moduri ciudate de afisare, cum ar fi
   In acelasi timp, a facut teste si Vlad Gheorghe observand tot felul de "balarii" pe ecran dupa un timp, asa ca am rescris programul, abordand altfel afisarea, programul devenind NTPclock_12864_st7567s_v2.ino si noa prezentare este ca in filmuletele
  Din pacate, dupa cateva ore aveam iar ciudatenii pe ecran
   Mi-am adus aminte ca in primul material unde am gasit informatii despre afisaj, ca se discuta de o montare in plus a 2 rezistente si 2 diode, am incercat si eu scoaterea lor, dar fara rezultate favorabile, 
dupa ce am studiat fisa de catalog a integratului ST7567S am realizat ca rezistentele R1 si R2 sunt de pe liniile i2c (rezistentele de pull-up)

    Am banuit ca stabilizatorul de 3,3V (notat 662k, capsula SO23) e de vina, asa ca m-am pus pe caudat si am dat destul de repede de fisa tehnica pentru XC6206
   Prima etapa a fost demontarea stabilizatorului si apoi montarea unui "strap" intre VCC si iesirea stabilizata de 3,3V:
apoi am alimentat afisajul din 3,3V de pe placa WemosD1, testul aratand ca dupa cca. 80 ore totul este in regula. Am facut comanda de cateva stabilizatoare pentru ca mai trebuie sa soseasca 3 afisaje, pe care le banui ca au aceeasi "buba".
   Vlad a gasit un AM1117-3.3, care are o capsula mai mare si l-a montat, putand alimenta afisajul din 5V:

PS1: Programiorul NTPclock_12864_st7567s_v1b1.ino e diferit de NTPclock_12864_st7567s_v1.ino prin definirea afisajului
//U8G2_ST7567_ENH_DG128064I_F_SW_I2C u8g2(U8G2_R0, SCL, SDA, U8X8_PIN_NONE);
U8G2_ST7567_ENH_DG128064I_1_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE);
dar functioneaza similar.