trigor_mortse/src/MortseGfx.h
2023-01-21 00:45:01 -05:00

57 lines
No EOL
1.3 KiB
C++

#ifndef MORTSE_GFX_H
#define MORTSE_GFX_H
#include <Arduino.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 32 // OLED display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
// The pins for I2C are defined by the Wire-library.
// On an arduino UNO: A4(SDA), A5(SCL)
// On an arduino MEGA 2560: 20(SDA), 21(SCL)
// On an arduino LEONARDO: 2(SDA), 3(SCL), ...
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32
//Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#define NUMFLAKES 10 // Number of snowflakes in the animation example
#define LOGO_HEIGHT 16
#define LOGO_WIDTH 16
//static const unsigned char PROGMEM
class MortseGfx
{
private:
byte cursor_x;
byte cursor_y;
enum cursorState cursor_state;
public:
void MortseGfx();
void MoveCursor(byte row, byte column);
void SetChar(byte row, byte column, char value);
void ClearChar(byte row, byte column);
void SetCursorState(cursorState state);
}
enum cursorState {
hidden,
below
}
#endif