// STM32 Nucleo-C031C6 SPI LCD Example
// Simulation: https://wokwi.com/projects/365549388158011393
#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"
#include "datatypes.hpp"
#define TFT_DC 2
#define TFT_CS 3
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
List<unsigned short, 240> buffer;
void setup()
{
pinMode(A5, INPUT);
tft.begin();
}
constexpr const float delayInterval = 1000.0f / 240.0f;
unsigned short drawPixelX = 0;
void loop()
{
auto faderVal = -analogRead(A5) / 3.19;
if (drawPixelX == 240)
drawPixelX = 0;
tft.drawPixel(drawPixelX++, faderVal, ILI9341_WHITE);
tft.setCursor(0, 0);
tft.setTextColor(ILI9341_WHITE);
tft.setTextSize(1);
tft.println("Hello World!");
delay(delayInterval);
}