Pular para o conteúdo principal

Small e-Paper Shield V2

e-paper talvez seja o material mais confortável para leitura. Ele reflete a luz em vez de emiti-la para imitar a experiência de leitura em papel convencional. E, dessa forma, muito menos energia é consumida. O Small e-Paper Shield é um shield driver para e-papers de pequeno tamanho. Ele é capaz de controlar e-papers de 1,44 polegada, 2,0 polegadas e 2,7 polegadas e suporta mais de 170 idiomas. A superfície superior deste shield é deixada plana e limpa para dar um ótimo suporte ao e-paper fixado nele. Se você está considerando um display leve e confortável para ler, o e-paper será uma boa escolha.

Atenção: Como esta placa driver suporta e-papers de tamanhos diferentes, o e-paper não está incluído neste produto. Temos e-paper de 2,0 polegadas e 2,7 polegadas à venda simultaneamente. Vá e adicione o mais adequado ao seu carrinho agora!

Escolher a biblioteca

Para escolher a biblioteca correta, você deve saber a versão do seu painel.

Preste atenção ao rótulo do seu painel:

  • se o nome do modelo for 'EG020AS012' ou 'EM027AS011', então você deve escolher a biblioteca antiga, clique aqui Small e-Paper Library.

  • se o nome do modelo for 'EG020BS011' ou 'EM027BS013', então você deve escolher a nova biblioteca, clique aqui New Panel Library【EPD_V230】.

Especificações


Placa compatível: Arduino Uno/Leonardo/Arduino Mega/Linkit ONE

Tensão de operação: 3,3/5VDC

Corrente de operação (atualizar tela): 40mA

Tipo de interface: SPI

Pinos no Arduino
ArduinoE-paper
D2M_EPD_PANEL_ON
D3M_EPD_BORDER
D4M_/SD_CS
D5M_EPD_PWM
D6M_EPD_/RESET
D7M_EPD_BUSY
D8M_EPD_DISCHARGE
D9M_/WORD_STOCK_CS
D10M_/EPD_CS
ICSP PORTM_MOSI , M_SCK , M_MISO
A0M_TEMP_SEN
A1M_OE123
A2M_CKV
A3M_STV_IN
3.3VM_VCC_3V3
5VM_VCC_5V

Demonstração


O Small e-Paper Shield pode exibir imagens, vários gráficos e textos. Há muitos exemplos na biblioteca que lhe dão algumas ideias de como usar o módulo. Agora vamos experimentar a forte biblioteca e o amplo ângulo de visualização do e-Paper.

Instalação de Hardware

  • Conecte o e-Paper à interface FFC do Small e-Paper Shield.
  • Conecte o Small e-Paper Shield ao Arduino/Seeeduino e conecte-o ao PC usando um cabo USB.

Agora é hora de mostrar demos usando a biblioteca, que precisa ser baixada a partir de aqui. Depois de baixar, você precisa colocá-la na pasta de bibliotecas da Arduino IDE pelo caminho:...\arduino-1.0.1\libraries.

Exibição de Demo

Aqui selecionamos a tela de 2,0 polegadas como exemplo para mostrar suas funções de exibição.

Demo 1: Exibir textos

  • Abra o código: File- >Examples- >ePaper->text como mostrado abaixo:

Nota importante:

Precisamos reforçar esta nota:

  • Se você usar um Arduino UNO, Seeeduino 3.0 e qualquer placa que use Atmega 328P ou Atmega32U4 como controlador, você deve inserir um cartão SD usando este demo. O cartão SD é usado para armazenar dados temporários por causa do pequeno espaço de armazenamento do Atmega328p e do Atmega32U4.
  • Se você usar um Arduino Mega ou qualquer outra placa que use Atmega1280 ou Atmega2560, não precisa inserir um cartão SD.
  • Altere o parâmetro para corresponder ao tamanho da sua tela. Você precisa mudar 200 para 270 se a sua tela for de 2,7 polegadas. E você precisa fazer essa alteração ao usar outros exemplos.
#define SCREEN_SIZE 200 // choose screen size: 144, 200, 270
  • Envie o código para o seu microcontrolador. Por favor, clique aqui se você não sabe como fazer isso.

  • Agora você pode ver isto:

  • Tente mudar o texto exibido e a posição de exibição. Você pode aprender o uso de cada função.

Demo 2: Exibir gráfico

O exemplo: draw será um bom exemplo para exibir uma variedade de gráficos. Você precisa abrir este código: draw como no demo 1. Lembre-se da nota sobre se você precisa de um cartão SD para concluir o demo. Certifique-se se o cartão SD é necessário ou não, dependendo do tipo do seu microcontrolador. E altere o parâmetro para corresponder ao tamanho da sua tela.

Depois de concluir as modificações e enviar o código, um belo padrão será exibido na tela:

A imagem é criada chamando as funções de desenho gráfico. Você pode criar o seu próprio padrão e testá-lo na tela. Cada função de desenho possui uma descrição específica na referência.

Demo 3: Exibir imagem

Semelhante aos displays TFT e displays OLED, o Small e-Paper Shield suporta a exibição de imagens.

Agora você precisa abrir o exemplo de imagem: File- >Examples- >ePaper->image.

Você precisa enviar o código para ver o resultado.

Nota: Como você pode ver, o tamanho de tela padrão neste sketch "image" é definido como 2,7 polegadas. Por favor, modifique a configuração do tamanho de tela em caso de exibição incorreta.

  #define SCREEN_SIZE 200         // choose screen size here: 144, 200, 270 

É claro, você pode mudar a imagem exibida alterando os dados de matriz da imagem.

Por exemplo, seu e-Paper é de 2,7 polegadas, então você precisa obter os dados de matriz de 264 X176 pixels e copiar o código para 'static unsigned char image_270[] PROGMEM =' em picture.h. Você precisa copiar o código para dados de matriz de 200x96 pixels para 'static unsigned char image_200[] PROGMEM =' ao usar uma tela de 2,0 polegadas.

Como exibir uma imagem

Graças à contribuição de Muchiri John, obtivemos uma ferramenta muito útil e fácil de usar. Com esta ferramenta, exibir uma imagem não é mais uma coisa difícil.

Você pode baixar a ferramenta aqui

Referência


A biblioteca Small e-Paper fornece interfaces de software completas para exercer as capacidades do display e-Paper. Há descrições específicas sobre as funções.

Descrição das Funções

1. void begin(EPD_size sz);

A função configura o tamanho da tela.

  • sz: pode ser EPD_1_44, EPD_2_0, EPD_2_7.
2. void setDirection(EPD_DIR dir);

A função é usada para definir a direção de exibição.

  • dir: pode ser DIRLEFT,DIRRIGHT,DIRNORMAL,DIRDOWN
3. int drawChar(char c, int x, int y);

A função pode ser usada para exibir um caractere.

  • c: o caractere que você deseja exibir.

  • x: a coordenada X inicial do caractere.

  • y: a coordenada Y inicial do caractere.

4. int drawString(char *string, int poX, int poY);

A função pode ser usada para exibir uma string.

  • *string: a string que você deseja exibir.

  • poX: a coordenada X inicial da string.

  • poY: a coordenada Y inicial da string.

5. int drawNumber(long long_num,int poX, int poY);

A função pode ser usada para exibir um número inteiro longo.

  • long_num: os dados do número inteiro longo que você deseja exibir. O máximo é

  • poX: a coordenada X inicial dos dados

  • poY: a coordenada Y inicial dos dados

6. int drawFloat(float floatNumber,int decimal,int poX, int poY);

A função pode ser usada para exibir um número de ponto flutuante. O número de ponto flutuante exibido é arredondado de acordo com a casa decimal definida.

  • floatNumber: o número de ponto flutuante que você deseja exibir.

  • decimal: define a casa decimal.

  • poX: a coordenada X inicial dos dados.

  • poY: a coordenada Y inicial dos dados.

7. int drawUnicode(unsigned int uniCode, int x, int y);

A função pode ser usada para exibir um caractere ou um caractere chinês usando unicode. Veja as páginas 18 a 24 do datasheet GT20L16P1Y para encontrar o unicode do caractere; os caracteres incluem Latim, Hebraico, Tailandês, Grego, Cirílico e Árabe. O unicode chinês pode ser visto em tabela de códigos de caracteres GB2312 (Chinês Simplificado).

  • uniCode: o código de máquina correspondente a um caractere ou a um caractere chinês.

  • x: a coordenada X inicial.

  • y: a coordenada Y inicial.

Nota: o unicode de caracteres entre 0x0020 e 0x007E pode ser inserido diretamente via teclado. Por exemplo, para exibir o caractere 'G', a função pode ser drawUnicode(0x0047, 3,10) ou displayChar ('s',3,10);

8. int drawUnicodeString(unsigned int *uniCode, int len, int x, int y);

A função pode ser usada para exibir vários caracteres e chinês.

  • *uniCode: um array unicode.

  • len: comprimento da string.

  • x: a coordenada X inicial da string.

  • y: a coordenada Y inicial da string.

9. void drawLine(int x0, int y0, int x1, int y1);

A função pode ser usada para exibir uma linha.

  • x0: a coordenada X inicial da linha

  • y0: a coordenada Y inicial da linha

  • x1: a coordenada X final da linha

  • y1: a coordenada Y final da linha

10. void drawCircle(int poX, int poY, int r);

A função pode ser usada para desenhar um círculo.

  • poX: a coordenada X do centro

  • poY: a coordenada Y do centro

  • r: o raio do centro

11. void drawHorizontalLine( int poX, int poY, int len);

A função pode ser usada para desenhar uma linha horizontal.

  • poX: a coordenada X inicial da linha.

  • poY: a coordenada Y inicial da linha.

  • len: o comprimento da linha

12. void drawVerticalLine( int poX, int poY, int len);

A função pode ser usada para desenhar uma linha vertical.

  • poX: a coordenada X inicial da linha.

  • poY: a coordenada Y inicial da linha.

  • len: o comprimento da linha.

13. void drawRectangle(int poX, int poY, int len, int width);

A função pode ser usada para desenhar um retângulo.

  • poX: a coordenada X inicial do retângulo.

  • poY: a coordenada Y inicial do retângulo.

  • len: o comprimento do retângulo.

  • width: a largura do retângulo.

14. void fillRectangle(int poX, int poY, int len, int width);

A função pode ser usada para desenhar um retângulo preenchido.

  • poX: a coordenada X inicial do retângulo.

  • poY: a coordenada Y inicial do retângulo.

  • len: o comprimento do retângulo.

  • width: a largura do retângulo.

15. void fillCircle(int poX, int poY, int r);

A função pode ser usada para desenhar um círculo preenchido.

  • poX: a coordenada X do centro.

  • poY: a coordenada Y do centro.

  • r: o raio do centro Exemplo:

    EPAPER.drawRectangle(10, 10, 100, 80);
EPAPER.fillCircle(50, 50, 30);
EPAPER.fillRectangle(50, 65, 50, 20);
EPAPER.drawCircle(150, 50, 10);
EPAPER.fillCircle(150, 50, 5);
EPAPER.drawHorizontalLine(120, 50, 60);
EPAPER.drawVerticalLine(150, 20, 60);
16. void drawTraingle( int poX1, int poY1, int poX2, int poY2, int poX3, int poY3);

A função pode ser usada para desenhar um triângulo. Ele é formado por três pontos.

  • poX1(poX2,poX3): a coordenada X de um ponto do triângulo.

  • poY1(poY2,poY3): a coordenada Y de um ponto do triângulo.

Visualizador de Esquemático Online

Recursos


Suporte Técnico e Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...