Pico e-Paper 2.9 B EPD-modul for Raspberry Pi Pico
Produktinformasjon
Spesifikasjoner
- Produktnavn: Pico e-Paper 2.9 (B)
- Bruksmiljø: Innendørs anbefales
- Bruksmiljø for e-blekkskjerm:
- Anbefalt relativ luftfuktighet: 35%~65%RH
- Maksimal lagringstid: 6 måneder under 55 % RF
- Transporttid: 10 dager
- Skjermkabelgrensesnittspesifikasjon: 0.5 mm pitch, 24Pin
Produktbruksinstruksjoner
Last opp demo på første gang
- Trykk og hold inne BOOTSET-knappen på Pico-brettet.
- Koble Pico til USB-porten på datamaskinen via Micro
USB-kabel. - Slipp knappen når datamaskinen gjenkjenner en flyttbar
harddisk (RPI-RP2). - Last ned demoen og åpne arduinoPWMD1-LED-banen under
D1LED.ino. - Klikk Verktøy -> Port og husk den eksisterende COM (forskjellig
datamaskiner viser forskjellig COM, husk den eksisterende COM på din
datamaskin). - Koble driverkortet til datamaskinen med en USB-kabel.
- Klikk Verktøy -> Porter og velg uf2 Board som det første
forbindelse. - Etter at opplastingen er fullført, vil tilkobling igjen resultere i
en ekstra COM-port. - Klikk Verktøy -> Dev Board -> Raspberry Pi Pico/RP2040 ->
Raspberry Pi Pico. - Etter innstillingen klikker du på høyrepilen for å laste opp.
- Hvis du støter på problemer, installer eller bytt ut Arduino IDE
versjon. - For å avinstallere Arduino IDE, avinstaller den rent.
- Slett alt innholdet i mappen manuelt
C:Users[name]AppDataLocalArduino15 (du må vise skjult
filefor å se det). - Installer Arduino IDE på nytt.
Åpen kildekode-demo
- MicroPython-demo (GitHub)
- MicroPython Firmware/Blink Demo (C)
- Offisiell Raspberry Pi C/C++-demo
- Offisiell Raspberry Pi MicroPython-demo
- Arduino offisielle C/C++-demo
FAQ
Spørsmål: Hva er bruksmiljøet til e-blekk
skjerm?
Svar: Den anbefalte relative fuktigheten for e-blekkskjermen
er 35%~65%RH. For lagring bør den være under 55 % RF, og den
maksimal lagringstid er 6 måneder. Under transport skal det
ikke overstige 10 dager.
Spørsmål: Hva er forholdsreglene for e-blekkskjerm
forfriske?
Svar: E-blekkskjermen anbefales for innendørs bruk. Hvis brukt
utendørs bør den beskyttes mot direkte sollys og UV-stråler.
Når du designer produkter med e-blekkskjermer, sørg for at
temperatur- og fuktighetskrav til skjermen er oppfylt.
Spørsmål: Hvorfor kan ikke kinesiske tegn vises på
e-blekk skjerm?
Svar: Det kinesiske tegnbiblioteket i rutinen vår bruker
GB2312-kodingsmetode. For å vise kinesiske tegn, vennligst
endre xxx_test.c file til GB2312-kodingsformatet, kompiler
og last det ned.
Spørsmål: Etter bruk i en periode oppdateres skjermen
(full oppdatering) har et alvorlig etterbildeproblem som ikke kan være det
reparert?
Svar: Etter hver oppdateringsoperasjon anbefales det å stille inn
skjermen til hvilemodus eller slå av enheten direkte til
forhindre at skjermen er i et høyt volumtage staten lenge
tid, noe som kan forårsake utbrenthet.
Spørsmål: Hvorfor viser e-papiret en svart kant?
Svar: Fargen på kantvisningen kan angis gjennom kantlinjen
Waveform Control register eller VCOM OG DATA INTERVAL SETTING
register.
Spørsmål: Hva er spesifikasjonen for skjermkabelen
grensesnitt?
Svar: Skjermkabelgrensesnittet har en stigning på 0.5 mm og 24
pinner.
Pico e-Paper 2.9 (B)
Overview
Pico e-Paper 2.9 (B)
2.9-tommers EPD-modul (elektronisk papirskjerm) for Raspberry Pi Pico, 296 × 128 piksler, svart/hvit/rød, SPI-grensesnitt.
Spesifikasjon
Størrelse: 2.9 tommer Konturdimensjoner (råpanel): 79.0 mm × 36.7 mm × 1.05 mm Konturdimensjon (driverkort): 82.0 mm × 38.0 mm Skjermstørrelse: 66.89 mm × 29.05 mm Driftsvolumtage: 3.3V/5V Grensesnitt: SPI Dot pitch: 0.138 × 0.138 Oppløsning: 296 × 128 Skjermfarge: Svart, Hvit, Rød Gråskala: 2 full oppdateringstid: 15s Oppdateringseffekt: 26.4mW (typ.) Standbystrøm: <0.01 uA (nesten ingen) Merk:
2.9 tommers EPD-modul for Raspberry Pi Pico,
296 × 128, svart / hvit / rød, SPI
1. Oppdateringstid: Oppdateringstiden er de eksperimentelle resultatene, den faktiske oppdateringstiden vil ha feil, og den faktiske effekten skal gjelde. Det vil være en flimrende effekt under den globale oppdateringsprosessen, dette er et normalt fenomen.
2. Strømforbruk: Strømforbruksdataene er de eksperimentelle resultatene. Det faktiske strømforbruket vil ha en viss feil på grunn av eksistensen av driverkortet og den faktiske brukssituasjonen. Den faktiske effekten skal gjelde.
SPI Kommunikasjon Timing
Siden blekkskjermen bare må vises, skjules datakabelen (MISO) som sendes fra maskinen og mottas av verten.
CS: Valg av slavebrikke, når CS er lav, er brikken aktivert. DC: data/kommando kontrollpinne, skrivekommando når DC=0; skriv data når DC=1. SCLK: SPI kommunikasjonsklokke. SDIN: SPI kommunikasjonsmaster sender, slaven mottar. Timing: CPHL=0, CPOL=0 (SPI0)
Merknader For spesifikk informasjon om SPI kan du søke etter informasjon på nettet. Arbeidsprotokoll
Dette produktet er en e-papirenhet som tar i bruk bildevisningsteknologien til Microencapsulated Electrophoretic Display, MED. Den første tilnærmingen er å lage små kuler, der de ladede fargepigmentene er suspendert i den gjennomsiktige oljen og vil bevege seg avhengig av den elektroniske ladningen. E-papirskjermen viser mønstre ved å reflektere omgivelseslyset, så den har ingen krav til bakgrunnslys. (Merk at e-papiret ikke støtter oppdatering direkte under sollys). Hvordan definere piksler I et monokromt bilde definerer vi piksler, 0 er svart og 1 er hvit.
Hvit: Bit 1
BlackBit 0
Prikken i figuren kalles en piksel. Som vi vet, brukes 1 og 0 til å definere fargen, derfor kan vi bruke en bit til å definere fargen på en piksel, og 1 byte = 8 piksler For eks.ample, Hvis vi setter de første 8 piksler til svart og de siste 8 piksler til hvit, viser vi det med koder, de vil være 16-bit som nedenfor:
For datamaskinen lagres dataene i MSB-format:
Så vi kan bruke to byte for 16 piksler. For 2.13-tommers e-papir B er skjermfargene rød, svart og hvit. Vi må dele bildet i 2 bilder, ett er et svart-hvitt-bilde, og et annet er et rødt-hvitt-bilde. Ved overføring, fordi ett register kontrollerer en svart eller hvit piksel, kontrollerer man en rød eller hvit skjerm. Den svarte og hvite delen av 2.13 bruker 1 byte til å kontrollere 8 piksler, og den røde og hvite delen bruker 1 byte til å kontrollere 8 piksler. For eksample, anta at det er 8 piksler, de 4 første er røde, og de 4 baksiden er svarte: De må demonteres til et svart-hvitt-bilde og et rødt-hvitt-bilde. Begge bildene har 8 piksler, men de første fire piksler i svart-hvitt-bildet er hvite, de siste 4 piksler er svarte, og de første 4 piksler av det røde og hvite bildet. En piksel er rød, og de siste fire piksler er hvite .
Hvis du definerer at dataene til den hvite pikselen er 1 og den svarte er 0, kan vi få:
Slik at vi kan bruke 1 byte til å kontrollere hver åttende piksel.
Forholdsregler
1. For skjermen som støtter delvis oppdatering, vær oppmerksom på at du ikke kan oppdatere skjermen med delvis modus hele tiden. Etter flere delvise oppdateringer, må du oppdatere skjermen en gang. Ellers vil skjermvisningseffekten være unormal, som ikke kan repareres!
2. På grunn av de forskjellige partiene har noen av dem aberrasjoner. Oppbevar e-papiret med høyre side opp for å redusere det. Og hvis e-papiret ikke ble frisket opp på lenge, vil det bli mer og mer rødlig/gulaktig. Vennligst bruk demokoden for å oppdatere e-avisen flere ganger i dette tilfellet.
3. Merk at skjermen ikke kan slås på på lenge. Når skjermen ikke er oppdatert, sett skjermen til hvilemodus, eller slå av e-Paper. Ellers vil skjermen forbli i høy volumtage tilstand i lang tid, noe som vil skade e-papiret og ikke kan repareres!
4. Når du bruker e-papiret, anbefales det at oppdateringsintervallet er minst 180 sekunder, og oppdateres minst en gang hver 24. time. Hvis e-papiret ikke brukes på lang tid, bør blekkskjermen børstes og oppbevares. (Se dataarket for spesifikke krav til lagringsmiljø)
5. Etter at skjermen går i hvilemodus, vil de sendte bildedataene bli ignorert, og de kan oppdateres normalt først etter initialisering på nytt.
6. Kontroller 0x3C- eller 0x50-registeret (se dataarket for detaljer) for å justere kantfargen. I rutinen kan du justere grensebølgeformkontrollregisteret eller VCOM AND DATA INTERVAL SETTING for å sette grensen.
7. Hvis du finner ut at de opprettede bildedataene vises feil på skjermen, anbefales det å sjekke om innstillingen for bildestørrelse er riktig, endre innstillingene for bredde og høyde på bildet og prøve på nytt.
8. Arbeidsvoltage av e-papiret er 3.3V. Hvis du kjøper råpanelet og må legge til en nivåkonverteringskrets for kompatibilitet med 5V voltage. Den nye versjonen av driverkortet (V2.1 og påfølgende versjoner) har lagt til en nivåbehandlingskrets, som kan støtte både 3.3V og 5V arbeidsmiljøer. Den gamle versjonen kan kun støtte et 3.3V arbeidsmiljø. Du kan bekrefte versjonen før du bruker den. (Den med 20-pins brikken på PCB er vanligvis den nye versjonen)
9. FPC-kabelen til skjermen er relativt skjør, vær oppmerksom på å bøye kabelen langs skjermens horisontale retning når du bruker den, og ikke bøy kabelen langs skjermens vertikale retning
10. Skjermen på e-Paper er relativt skjør, vennligst prøv å unngå å slippe, støte og trykke hardt.
11. Vi anbefaler at kundene bruker sample programmet levert av oss for å teste med det tilsvarende utviklingskortet etter at de får skjermen.
RPi Pico
Maskinvaretilkobling
Vennligst ta vare på retningen når du kobler til Pico. En logo for USB-porten er trykt for å indikere katalogen, du kan også sjekke pinnene. Hvis du vil koble til kortet med en 8-pinners kabel, kan du se tabellen nedenfor:
e-papir Pico
Beskrivelse
VCC VSYS
Strøminngang
GND GND
Bakke
DIN GP11 MOSI-pinne til SPI-grensesnitt, data overføres fra Master til Slave.
CLK GP10
SCK-pinne til SPI-grensesnitt, klokkeinngang
CS GP9
Chip select pin for SPI-grensesnitt, Low Active
DC GP8
Data/kommandokontrollpinne (Høy: Data; Lav: Kommando)
RST GP12
Tilbakestill pinne, lav aktiv
OPPTATT GP13
Opptatt utgangspinne
NØKKEL0 GP2
Brukernøkkel 0
NØKKEL1 GP3
Brukernøkkel 1
LØP LØP
Tilbakestill
Du kan bare feste brettet til Pico som Pico-ePaper-7.5.
Oppsettmiljø
Du kan se veiledningene for Raspberry Pi: https://www.raspberrypi.org/documentation/pico/getting-started/ Last ned demokoder
Åpne en terminal av Pi og kjør følgende kommando:
cd ~ sudo wget https://files.waveshare.com/upload/2/27/Pico_ePaper_Code.zip pakke ut Pico_ePaper_Code.zip -d Pico_ePaper_Code cd ~/Pico_ePaper_Code
Du kan også klone kodene fra Github.
cd ~ git-klone https://github.com/waveshare/Pico_ePaper_Code.git cd ~/Pico_ePaper_Code
Om eksenamples
Guidene er basert på Raspberry Pi. C-koder
Eksamplen som følger med er kompatibel med flere typer, må du endre hoved.c file, avkommenter definisjonen i henhold til den faktiske typen skjerm du får. For eksample, hvis du har Pico-ePaper-2.13, vennligst endre main.c file, avkommenter linje 18 (eller kanskje det er linje 19).
Sett prosjektet:
cd ~/Pico_ePaper_Code/c
Opprett byggemappe og legg til SDK. ../../pico-sdk er standardbanen til SDK, hvis du lagrer SDK i andre kataloger, vennligst endre den til den faktiske banen.
mkdir bygge cd bygge eksport PICO_SDK_PATH=../../pico-sdk
Kjør cmake-kommandoen for å generere Makefile file.
cm lage..
Kjør kommandoen make for å kompilere kodene.
lage -j9
Etter kompilering vil epd.uf2 file er generert. Deretter trykker du og holder inne BOOTSEL-knappen på Pico-kortet, kobler Pico til Raspberry Pi ved hjelp av Micro USB-kabelen, og slipper knappen. På dette tidspunktet vil enheten gjenkjenne en flyttbar disk (RPI-RP2). Kopier epd.uf2 file Nettopp generert til den nylig gjenkjente flyttbare disken (RPI-RP2), vil Pico automatisk starte det kjørende programmet på nytt. Python Trykk først og hold inne BOOTSEL-knappen på Pico-kortet, bruk Micro USB-kabelen til å koble Pico til Raspberry Pi, og slipp deretter knappen. På dette tidspunktet vil enheten gjenkjenne en flyttbar disk (RPI-RP2). Kopier rp2-pico-20210418-v1.15.uf2 file i python-katalogen til den flyttbare disken (RPI-RP2) som nettopp ble identifisert. Oppdater Thonny IDE.
sudo apt oppgradering thonny
Åpne Thonny IDE (klikk på Raspberry-logoen -> Programmering -> Thonny Python IDE ), og velg tolken:
Velg Verktøy -> Alternativer... -> Tolk. Velg MicroPython (Raspberry Pi Pico og ttyACM0-port). Åpne Pico_ePaper-xxx.py file i Thonny IDE, kjør deretter gjeldende skript (klikk på den grønne trekanten).
C-kodeanalyse
Bunn maskinvaregrensesnitt Vi pakker maskinvarelaget for enkel portering til de forskjellige maskinvareplattformene. DEV_Config.c(.h) i katalogen: Pico_ePaper_CodeclibConfig.
Datatype:
#define UBYTE uint8_t #define UWORD uint16_t #define UDOUBLE uint32_t
Modul initialisering og avslutt:
void DEV_Module_Init(void); void DEV_Module_Exit(void); Merknad 1. Funksjonene ovenfor brukes til å initialisere displayet eller utgangshåndtaket.
GPIO skrive/lese:
void DEV_Digital_Write(UWORD-pin, UBYTE-verdi); UBYTE DEV_Digital_Read(UWORD Pin);
SPI overfører data:
void DEV_SPI_WriteByte(UBYTE-verdi);
EPD-driver Driverkodene til EPD er lagret i katalogen: Pico_ePaper_CodeclibePaper Åpne .h-overskriften file, kan du sjekke alle funksjonene som er definert.
Initialiser e-Paper, denne funksjonen brukes alltid i begynnelsen og etter at skjermen vekkes.
//2.13 tommer e-papir, 2.13 tommer e-papir V2, 2.13 tommer e-papir (D), 2.9 tommer e-papir, 2.9 tommer e-papir (D) void EPD_xxx_Init(UBYTE-modus); // Modus = 0 fullstendig oppdatering, Modus = 1 delvis oppdatering e //Andre typer void EPD_xxx_Init(void);
xxx bør endres av typen e-papir, f.eksample, hvis du bruker 2.13 tommer e-Paper (D), for å oppdatere fullstendig, bør det være EPD_2IN13D_Init(0) og EPD_2IN13D_Init(1) for den delvise oppdateringen;
Clear: Denne funksjonen brukes til å tømme skjermen til hvit.
void EPD_xxx_Clear(void);
xxx bør endres av typen e-papir, f.eksample, hvis du bruker 2.9 tommer ePaper (D), bør det være EPD_2IN9D_Clear();
Send bildedataene (én ramme) til EPD og vis
//Tofarget versjon void EPD_xxx_Display(UBYTE *Bilde); //Tricolor versjon void EPD_xxx_Display(const UBYTE *svartbilde, const UBYTE *ryimage);
Det er flere typer som er forskjellige fra andre
//Delvis oppdatering for 2.13 tommer e-papir (D), 2.9 tommer e-papir (D) void EPD_2IN13D_DisplayPart(UBYTE *Image); void EPD_2IN9D_DisplayPart(UBYTE *Bilde);
//For 2.13 tommers e-paper V2 må du først brukeEPD_xxx_DisplayPartBaseImage for å vise en statisk bakgrunn og deretter delvis oppdatering med funksjonen EPD_xxx_Dis playPart() void EPD_2IN13_V2_DisplayPart(UBYTE *Image); void EPD_2IN13_V2_DisplayPartBaseImage(UBYTE *Image);
Gå inn i dvalemodus
void EPD_xxx_Sleep(void);
Merk, du bør bare tilbakestille maskinvare eller bruke initialiseringsfunksjonen for å vekke ePaper fra hvilemodus xxx er typen e-Paper, f.eks.ample, hvis du bruker 2.13 tommer e-Paper D, bør det være EPD_2IN13D_Sleep(). Applikasjonsprogrammeringsgrensesnitt Vi tilbyr grunnleggende GUI-funksjoner for testing, som tegnepunkt, linje, streng og så videre. GUI-funksjonen finner du i katalogen: RaspberryPi_JetsonNanoclibGUIGUI_Paint.c(.h).
Fontene som brukes finner du i katalogen: RaspberryPi_JetsonNanoclibFonts.
Opprett et nytt bilde, du kan angi bildenavn, bredde, høyde, rotasjonsvinkel og farge.
void Paint_NewImage(UBYTE *image, UWORD Width, UWORD Height, UWORD Rotate, UWOR D Color) Parametere:
image: Navnet på bildebufferen, dette er en peker; Width: Bredde på bildet; Høyde: Høyde på bildet; Roter: Roter vinkelen på bildet; Farge: Startfargen på bildet;
Velg bildebuffer: Du kan lage flere bildebuffere samtidig og velge den bestemte og tegne med denne funksjonen.
void Paint_SelectImage(UBYTE *image) Parametere:
image: Navnet på bildebufferen, dette er en peker;
Roter bilde: Du må angi rotasjonsvinkelen til bildet, denne funksjonen bør brukes etter Paint_SelectImage(). Vinkelen kan være 0, 90, 180 eller 270.
void Paint_SetRotate(UWORD Rotate) Parametere:
Roter: Roter vinkelen på bildet, parameteren kan være ROTATE_0, R OTATE_90, ROTATE_180, ROTATE_270.
Merk Etter å ha rotert, er stedet for den første pikselen annerledes, vi tar en 1.54-tommers
e-papir som eksample.
Bildespeil: Denne funksjonen brukes til å stille inn bildespeilet.
void Paint_SetMirroring(UBYTE mirror) Parametere:
speil: Speiltype hvis bildet kan parameteren være MIRROR_NONE, MIR ROR_HORIZONTAL, MIRROR_VERTICAL, MIRROR_ORIGIN.
Angi posisjonen og fargen til piksler: Dette er den grunnleggende funksjonen til GUI, den brukes til å angi posisjonen og fargen til en piksel i bufferen.
void Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD Color) Parametere:
Xpoint: X-akseverdien til punktet i bildebufferen Ypoint: Y-akseverdien til punktet i bildebufferen Farge: Fargen på punktet
Tøm visning: For å angi fargen på bildet, brukes denne funksjonen alltid til å tømme skjermen.
void Paint_Clear(UWORD Color) Parametere:
Farge: Fargen på bildet
Farge på vinduene: Denne funksjonen brukes til å angi fargen på vinduene, den brukes alltid til å oppdatere deler av områder som å vise en klokke.
void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWO RD Color) Parametere:
Xpoint: X-akseverdien til startpunktet i bildebufferen Ypoint: Y-akseverdien til startpunktet i bildebufferen Xend: X-akseverdien til sluttpunktet i bildebufferen Yend: Y- akseverdi for endepunktet i bildebufferen Farge: Fargen på vinduene
Tegnepunkt: Tegn et punkt ved posisjonen X-punktet, Y-punktet i bildet
buffer, kan du konfigurere farge, størrelse og stil.
void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD Color, DOT_PIXEL Dot_Pix
el, DOT_STYLE Dot_Style)
Parametere:
Xpoint: X-akseverdien til punktet.
Y-punkt: Y-akseverdien til punktet.
Farge: Farge på punktet
Dot_Pixel: Størrelsen på punktet, 8 størrelser er tilgjengelige.
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Dot_Style: Stil for punktet, definer den utvidede modusen til punktet.
typedef enum {
DOT_FILL_AROUND = 1,
DOT_FILL_RIGHTUP,
} DOT_STYLE;
Tegn linjen: Tegn en linje fra (Xstart, Ystart) til (Xend, Yend) i bildebufferen, du kan konfigurere farge, bredde og stil.
void Paint_DrawLine(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD C
olor, LINE_STYLE Line_Style , LINE_STYLE Line_Style)
Parametere:
Xstart: Xstart av linjen
Ystart: Ystart av linjen
Xend: Xend of the line
Yend: Yend of the line
Farge: Farge på linjen
Line_width: Bredde på linjen, 8 størrelser er tilgjengelige.
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Line_Style: Stil på linjen, solid eller prikket.
typedef enum {
LINE_STYLE_SOLID = 0,
LINE_STYLE_DOTTED,
} LINE_STYLE;
Tegn et rektangel: Tegn et rektangel fra (Xstart, Ystart) til (Xend, Yend), du kan konfigurere farge, bredde og stil.
void Paint_DrawRectangle(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UW
ORD-farge, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill)
Parametere:
Xstart: Xstart av rektangelet.
Ystart: Ystart av rektangelet.
Xend: Xend av rektangelet.
Yend: Yend av rektangelet.
Farge: Farge på rektangelet
Line_width: Bredden på kantene. 8 størrelser er tilgjengelige.
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Draw_Fill: Stil på rektangelet, tomt eller fylt.
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
Tegn sirkel: Tegn en sirkel i bildebufferen, bruk (X_Center Y_Center) som sentrum og Radius som radius. Du kan konfigurere fargen, bredden på linjen og stilen til sirkelen.
void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD Radius, UWORD Colo
r, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill)
Parametere:
X_Center: X-aksen til sentrum
Y_Center: Y-aksen til sentrum
Radius: Radius av sirkelen
Farge: Farge på sirkelen
Line_width: Bredden på buen, 8 størrelser er tilgjengelige.
typedef enum {
DOT_PIXEL_1X1 = 1, // 1 x 1
DOT_PIXEL_2X2 ,
// 2 X 2
DOT_PIXEL_3X3 ,
// 3 X 3
DOT_PIXEL_4X4 ,
// 4 X 4
DOT_PIXEL_5X5 ,
// 5 X 5
DOT_PIXEL_6X6 ,
// 6 X 6
DOT_PIXEL_7X7 ,
// 7 X 7
DOT_PIXEL_8X8 ,
// 8 X 8
} DOT_PIXEL;
Draw_Fill: Stil for sirkelen: tom eller fylt.
typedef enum {
DRAW_FILL_EMPTY = 0,
DRAW_FILL_FULL,
} DRAW_FILL;
Vis Ascii-karakter: Vis en karakter i (Xstart, Ystart) posisjon, du kan
konfigurere font, forgrunn og bakgrunn.
void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Ascii_Char, sFONT* F ont, UWORD Color_Foreground, UWORD Color_Background) Parametere:
Xstart: Xstart av karakteren Ystart: Ystart av karakteren Ascii_Char: Ascii char Font: fem fonter er tilgjengelige
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Forgrunn: forgrunnsfarge Color_Background: bakgrunnsfarge
Tegn strengen: Tegn strengen ved (Xstart Ystart), du kan konfigurere
fonter, forgrunn og bakgrunn
void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFON T* Font, UWORD Color_Foreground, UWORD Color_Background) Parametere:
Xstart: Xstart av strengen Ystart: Ystart av strengen pString: String Font: fem fonter er tilgjengelige:
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Color_Forgrunn: forgrunnsfarge Color_Background: bakgrunnsfarge
Tegn kinesisk streng: Tegn den kinesiske strengen ved (Xstart Ystart) av bildet
buffer. Du kan konfigurere fonter (GB2312), forgrunn og bakgrunn.
void Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFON T* font, UWORD Color_Foreground, UWORD Color_Background) Parametere:
Xstart: Xstart av streng Ystart: Ystart av streng pString: string Font: GB2312 fonter, to fonter er tilgjengelige
font12CN: ascii 11*21kinesisk 16*21 font24CN: ascii 24*41kinesisk 32*41 Farge_Forgrunn: Forgrunnsfarge Color_Background: Bakgrunnsfarge
Tegn nummer: Tegn tall ved (Xstart Ystart) av bildebufferen. Du kan
velg font, forgrunn og bakgrunn.
void Paint_DrawNum(UWORD Xpoint, UWORD Ypoint, int32_t nummer, sFONT* Font, UW ORD Color_Foreground, UWORD Color_Background) Parametere:
Xstart: Xstart av tall Ystart: Ystart av tall Nummer: tall som vises. Den støtter int type og 2147483647 er den maksimale støttede fonten: Ascii-fonter, fem fonter er tilgjengelige:
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Farge_Forgrunn: forgrunn Farge_bakgrunn: bakgrunn
Visningstid: Vis tid ved (Xstart Ystart) av bildebufferen, du kan
konfigurere fonter, forgrunn og bakgrunn.
Denne funksjonen brukes til delvis oppdatering. Merk at noen av e-papirene ikke gjør det
støtter delvise oppdateringer og du kan ikke bruke delvise oppdateringer hele tiden, som
vil ha spøkelsesproblemer og ødelegge skjermen.
void Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* Font, UWORD Color_Background, UWORD Color_Foreground) Parametere:
Xstart: Xstart av tid Ystart: Ystart av tid pTid: Tidsstruktur Font: Ascii-font, fem fonter er tilgjengelige
font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 Farge_Forgrunn: forgrunn Farge_bakgrunn: bakgrunn
Ressurs
Document Schematic 2.9 tommers e-Paper (B) spesifikasjon
Demokoder
Demokoder Github-lenke
Utviklingsprogramvare
Thonny Python IDE (Windows V3.3.3) Zimo221.7z Image2Lcd.7z
Pico Quick Start Last ned fastvare
MicroPython Firmware Last ned C_Blink Firmware Last ned videoopplæring
[Utvid] [Utvid]Pico Tutorial I – Grunnleggende introduksjon
Pico Tutorial II – GPIO
Pico Tutorial III – PWM
Pico Tutorial IV – ADC
Pico Tutorial V – UART
Pico Tutorial VI – Fortsetter …
MicroPython-serien
MicroPython-maskin.Pin-funksjon MicroPython-maskin.PWM-funksjon MicroPython-maskin.ADC-funksjon MicroPython-maskin.UART-funksjon MicroPython-maskin.I2C-funksjon MicroPython-maskin.SPI-funksjon MicroPython rp2.StateMachine
C/C++-serien
C/C++ Windows Tutorial 1 – Miljøinnstilling C/C++ Windows Tutorial 1 – Opprett nytt prosjekt
Arduino IDE-serien Installer Arduino IDE 1. Last ned Arduino IDE-installasjonspakken fra Arduino webnettstedet .
2. Bare klikk på "BARE LAST NED".
3. Klikk for å installere etter nedlasting.
4. Merk: Du vil bli bedt om å installere driveren under installasjonsprosessen, vi kan klikke på Installer.
Installer Arduino-Pico Core på Arduino IDE 1. Åpne Arduino IDE, klikk på File i venstre hjørne og velg "Innstillinger".
2. Legg til følgende lenke i styrelederen for tilleggsutvikling URL, og klikk deretter OK. https://github.com/earlephilhower/arduino-pico/releases/download/globa l/package_rp2040_index.json
Merk: Hvis du allerede har ESP8266-kortet URL, kan du skille URLs med kommaer som dette:
https://dl.espressif.com/dl/package_esp32_index.json,https://github.co m/earlephilhower/arduino-pico/releases/download/global/package_rp2040_ index.json 3. Click on Tools -> Dev Board -> Dev Board Manager -> Søk etter pico, den viser installert siden datamaskinen min allerede har installert den.
Last opp demo på første gang
1. Trykk og hold inne BOOTSET-knappen på Pico-kortet, koble Pico til USB-porten på datamaskinen via Micro USB-kabelen, og slipp knappen når datamaskinen gjenkjenner en flyttbar harddisk (RPI-RP2).
2. Last ned demoen, åpne arduinoPWMD1-LED-banen under D1LED.ino.
3. Klikk Verktøy -> Port, husk eksisterende COM, trenger ikke klikke på denne COM (forskjellige datamaskiner viser forskjellig COM, husk eksisterende COM på datamaskinen).
4. Koble driverkortet til datamaskinen med en USB-kabel, klikk deretter Verktøy -> Porter, velg uf2 Board for den første tilkoblingen, og etter at opplastingen er fullført, vil tilkobling igjen resultere i en ekstra COM-port.
5. Klikk Verktøy -> Dev Board -> Raspberry Pi Pico/RP2040 -> Raspberry Pi Pico.
6. Etter innstillingen klikker du på høyrepilen for å laste opp.
Hvis du støter på problemer i løpet av perioden, må du installere eller erstatte Arduino IDE-versjonen på nytt, avinstallere Arduino IDE må avinstalleres rent, etter avinstallering av programvaren må du manuelt slette alt innholdet i mappen C:Users [navn] AppDataLocalArduino15 (du må vise den skjulte files for å se den) og installer deretter på nytt. Pico-W-seriens veiledning (fortsetter...)
Åpen kildekode-demo
MicroPython Demo (GitHub) MicroPython Firmware/Blink Demo (C) Offisiell Raspberry Pi C/C++ Demo Offisiell Raspberry Pi MicroPython Demo Arduino Offisiell C/C++ Demo
FAQ
Spørsmål: Hva er bruksmiljøet til e-ink-skjermen? Svar:
Driftsforhold Temperaturområde: 0~50°C; Fuktighetsområde:
35%~65%RH.
Lagringsforhold Temperaturområde: under 30°C; Fuktighetsområde:
under 55% RH; Maksimal lagringstid: 6 måneder.
Transportforhold Temperaturområde: -25~70°C; Maksimum
transporttid: 10 dager.
Etter utpakking Temperaturområde: 20°C±5°C; Fuktighetsområde:
50±5%RH; Maksimal lagringstid: Monter innen 72 timer.
Spørsmål: Forholdsregler for oppdatering av e-blekkskjerm? Svar:
Oppdateringsmodus Full oppdatering: Den elektroniske blekkskjermen vil flimre flere ganger under oppdateringsprosessen (antall flimring avhenger av oppdateringstiden), og flimringen er for å fjerne etterbildet for å oppnå best mulig visningseffekt. Delvis oppdatering: Den elektroniske blekkskjermen har ingen flimrende effekt under oppdateringsprosessen. Brukere som bruker funksjonen for delvis børsting legger merke til at etter å ha oppdatert flere ganger, bør en full børsteoperasjon utføres for å fjerne gjenværende bilde, ellers vil problemet med gjenværende bilde bli mer og mer alvorlig, eller til og med skade skjermen (for øyeblikket er det bare noe svart og hvite e-blekkskjermer støtter delvis børsting, se produktsidebeskrivelsen).
Oppdateringshastighet Under bruk anbefales det at kundene setter oppdateringsintervallet til e-ink-skjermen til minst 180 sekunder (bortsett fra produkter som støtter den lokale børstefunksjonen) Under standby-prosessen (det vil si etter oppdateringsoperasjonen), det anbefales at kunden setter e-blekkskjermen i hvilemodus, eller slår av (strømforsyningsdelen av blekkskjermen kan kobles fra med en analog bryter) for å redusere strømforbruket og forlenge levetiden til e-blekket skjerm. (Hvis noen e-blekk-skjermer er slått på i lang tid, vil skjermen bli skadet uten å repareres.) Under bruk av tre-farge e-ink-skjermen, anbefales det at kundene oppdaterer skjermbildet minst én gang pr. 24 timer (hvis skjermen forblir den samme skjermen i lang tid, vil skjermbrenningen være vanskelig å reparere).
Bruksscenarier E-blekkskjermen anbefales for innendørs bruk. Hvis du bruker den utendørs, må du unngå direkte sollys på e-blekkskjermen og samtidig iverksette UV-beskyttelsestiltak. Når du designer eink screen-produkter, bør kundene være oppmerksomme på å avgjøre om bruksmiljøet oppfyller kravene til temperatur og fuktighet til e-ink-skjermen.
Spørsmål: Kinesisk kan ikke vises på e-ink-skjermen? Svar: Det kinesiske tegnbiblioteket i rutinen vår bruker GB2312-kodingsmetoden, vennligst endre xxx_test.c file til GB2312-kodingsformat, kompiler og last det ned, og så kan det vises normalt.
Spørsmål: Etter bruk i en periode har skjermoppdateringen (full oppdatering) et alvorlig etterbildeproblem som ikke kan repareres? Svar: Slå på utviklingskortet i lang tid, etter hver oppdateringsoperasjon anbefales det å sette skjermen til hvilemodus eller slå av behandlingen direkte, ellers kan skjermen brenne ut når skjermen er i høy volumtage tilstand i lang tid.
Spørsmål: e-papir viser svart kant? Svar: Fargen på kantskjermen kan stilles inn gjennom grensebølgeformkontrollregisteret eller VCOM AND DATA INTERVAL SETTING registeret.
Spørsmål: Hva er spesifikasjonen for skjermkabelgrensesnittet? Svar: 0.5 mm pitch, 24Pin.
I dette tilfellet må kunden redusere posisjonen til rundbørsten og tømme skjermen etter 5 runder med børsting (øke volumtage av VCOM kan forbedre fargen, men det vil øke etterbildet).
Spørsmål: Kan den oppdateres igjen etter at blekkskjermen går inn i dyp hvilemodus? Svar: Ja, men du må re-initialisere det elektroniske papiret med programvare.
Spørsmål: Når 2.9-tommers EPD er i dyp hvilemodus, vil skjermoppdateringen være uren første gang den våkner. Hvordan kan jeg løse det? Svar: Prosessen med å vekke e-ink-skjermen på nytt er faktisk prosessen med å slå på igjen, så når EPD-en våkner, må skjermen tømmes først, for å unngå etterbilde-fenomenet i størst grad.
Spørsmål: Leveres bare skjermprodukter med overflatebelegg? Svar: med film.
Spørsmål: Har e-Paper en innebygd temperatursensor? Svar: Ja, du kan også bruke IIC pin ekstern LM75 temperatursensor.
Spørsmål: Når du tester programmet, holder programmet seg fast på et e-papir opptatt? Svar: Det kan være forårsaket av den mislykkede spi-driveren 1. Sjekk om ledningen er riktig 2. Sjekk om spi-en er slått på og om parameterne er riktig konfigurert (spi-baudrate, spi-modus og andre parametere).
Spørsmål: Hva er oppdateringsfrekvensen/levetiden til denne e-blekkskjermen? Svar: Ideelt sett kan den ved normal bruk oppdateres 1,000,000 1 XNUMX ganger (XNUMX million ganger).
Støtte
Teknisk støtte
Hvis du trenger teknisk støtte eller har tilbakemeldinger/review, klikk på Send nå-knappen for å sende inn en billett. Vårt brukerstøtteteam vil sjekke og svare deg innen 1 til 2 virkedager. Vær tålmodig mens vi gjør vårt ytterste for å hjelpe deg med å løse problemet. Arbeidstid: 9–6 GMT+8 (mandag til fredag)
Send inn nå
Dokumenter / Ressurser
![]() |
WAVESHARE Pico e-Paper 2.9 B EPD-modul for Raspberry Pi Pico [pdfBrukerhåndbok Pico e-Paper 2.9 B EPD-modul for Raspberry Pi Pico, Pico e-Paper 2.9 B, EPD-modul for Raspberry Pi Pico, Modul for Raspberry Pi Pico, for Raspberry Pi Pico, Raspberry Pi Pico, Pi Pico, Pico |




