Ik ben momenteel bezig met een projectje. Helaas ben ik echter een beetje aan het vastlopen met het programmeren van een E-paper display. Het betreft een 4.2 inch kleuren display van E-paper. Hier de link naar de library: GitHub - waveshare/e-Paper .
Nu heb ik het volgende geprogrammeerd:
#include <SPI.h>
#include <mcp_can.h>
#include "epd4in2b_V2.h"
#include "imagedata.h"
#include "epdpaint.h"
#define COLORED 0
#define UNCOLORED 1
Epd epd;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
if (epd.Init() != 0) {
Serial.print("e-Paper init failed");
return;
}
}
void loop()
{
Serial.print("begin loop");
unsigned char image [1500];
Paint paint(image, 400, 28);
Epd epd;
epd.ClearFrame();
int minvolt = 147;
String een = String(minvolt) + "milliVolts";
char const *voltmin = een.c_str();
int maxvolt = 245;
String twee = String(maxvolt) + "milliVolts";
char const *voltmax = twee.c_str();
int gemvolt = 197;
String drie = String(gemvolt) + "milliVolts";
char const *voltgem = drie.c_str();
paint.Clear(UNCOLORED);
paint.DrawStringAt(7, 0, voltmin, &Font16, COLORED);
epd.SetPartialWindowBlack(paint.GetImage(), 0, 60, paint.GetWidth(), paint.GetHeight());
paint.Clear(UNCOLORED);
paint.DrawStringAt(7, 0, voltmax, &Font16, COLORED);
epd.SetPartialWindowBlack(paint.GetImage(), 0, 100, paint.GetWidth(), paint.GetHeight());
paint.Clear(UNCOLORED);
paint.DrawStringAt(7, 0, voltgem, &Font16, COLORED);
epd.SetPartialWindowBlack(paint.GetImage(), 0, 140, paint.GetWidth(), paint.GetHeight());
epd.DisplayFrame();
epd.Sleep();
delay(1000);
}
De output op het scherm is nu leeg.
Als ik de code nu aanpas om alleen de waardes zonder eenheden te versturen worden deze wel netjes weergegeven op het scherm.
Zou iemand weten hoe dit is op te lossen? Bij voorbaat alvast heel erg bedankt.