Browse Source

Start of ILI9488 example

James Bowman 6 years ago
parent
commit
47ccd59b09
1 changed files with 62 additions and 0 deletions
  1. 62 0
      ili9488.ino

+ 62 - 0
ili9488.ino

@@ -0,0 +1,62 @@
+#include <EEPROM.h> //' A{
+#include <SPI.h>
+#include <GD2.h>
+
+#define CSX 6   // chip select, active low
+#define DCX 2   // data/command select
+#define SCL 3   // clock, rising edge
+#define SDA 4   // data in to ILI9488
+#define SDO 5   // data out from ILI9488
+
+void setup()
+{
+  Serial.begin(1000000); // JCB
+  // GD.begin(0);
+
+  pinMode(CSX, OUTPUT);
+  pinMode(DCX, OUTPUT);
+  pinMode(SCL, OUTPUT);
+  pinMode(SDA, OUTPUT);
+  pinMode(SDO, INPUT);
+
+  digitalWrite(CSX, HIGH);
+}
+
+void loop2()
+{
+  GD.ClearColorRGB(0x103000);
+  GD.Clear();
+  GD.cmd_text(GD.w / 2, GD.h / 2, 31, OPT_CENTER, "Hello world");
+  GD.swap();
+}
+
+
+void out_8(uint8_t b)
+{
+  digitalWrite(CSX, LOW);
+  for (int i = 0; i < 8; i++) {
+    digitalWrite(SCL, LOW);
+    digitalWrite(SDA, (b >> 7) & 1);
+    digitalWrite(SCL, HIGH);
+    b <<= 1;
+  }
+  digitalWrite(CSX, HIGH);
+}
+
+void loop()
+{
+  digitalWrite(DCX, LOW);
+  out_8(0xda);  // RDID1
+
+  Serial.println();
+  digitalWrite(DCX, HIGH);
+  digitalWrite(CSX, LOW);
+  for (int i = 0; i < 8; i++) {
+    digitalWrite(SCL, LOW);
+    digitalWrite(SCL, HIGH);
+    Serial.println(digitalRead(SDO), DEC);
+  }
+  digitalWrite(CSX, HIGH);
+
+  delay(3000);
+}