Как я могу управлять 1,8-дюймовым цветным TFT LCD экраном, используя Arduino через Matlab? - PullRequest
0 голосов
/ 20 мая 2019

Я хочу отображать на экране черно-белые решетки (я использую 1,8-дюймовый TFT LCD ST7735). У меня есть Arduino Uno.

Я использую библиотеки Adafruit_GFX и Adafruit_ST7735.

У меня есть плата Arduino Uno, и я успешно отображаю ее с помощью программного обеспечения Arduino.

Я уже загрузил пакеты поддержки Arduino для Matlab (версия R2016a), и он запущен (проверено мигание встроенного светодиода в Arduino).

#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7735.h> // Hardware-specific library for ST7735
#include <SPI.h>

#define cs   10
#define dc   8
#define rst  9

Adafruit_ST7735 tft = Adafruit_ST7735(cs, dc, rst);

int count=0;

void setup() {
  Serial.begin(9600);
  // initialize the screen
  tft.initR(INITR_BLACKTAB);      // Init ST7735S chip, black tab

  // make the background black
  tft.fillScreen(ST77XX_BLACK);

  #define BACKCOLOR 0xFFFF // White
  #define BLACK 0x0000 // Black

}

void loop() {
  if (count<1) {
  //draw a rectangles
  delay(5000);
  tft.fillRect(75, 0, 25, 160, BACKCOLOR);
  tft.fillRect(25, 0, 25, 160, BACKCOLOR);
  delay(1000);
  tft.fillRect(75, 0, 25, 160, BLACK);
  tft.fillRect(25, 0, 25, 160, BLACK);
  delay(5000);
  tft.fillRect(0, 45, 160, 25, BACKCOLOR);
  tft.fillRect(0, 95, 160, 25, BACKCOLOR);
  delay(1000);
  tft.fillRect(0, 45, 160, 25, BLACK);
  tft.fillRect(0, 95, 160, 25, BLACK);
  delay(5000);
  count=count+1;
  }
}
...