Documentation ¶
Overview ¶
Package st7735 implements a driver for the ST7735 TFT displays, it comes in various screen sizes.
Datasheet: https://www.crystalfontz.com/controllers/Sitronix/ST7735R/319/
Index ¶
- Constants
- func RGBATo565(c color.RGBA) uint16
- type Config
- type Device
- func (d *Device) Command(command uint8)
- func (d *Device) Configure(cfg Config)
- func (d *Device) Data(data uint8)
- func (d *Device) Display() error
- func (d *Device) DrawFastHLine(x0, x1, y int16, c color.RGBA)
- func (d *Device) DrawFastVLine(x, y0, y1 int16, c color.RGBA)
- func (d *Device) DrawRGBBitmap(x, y int16, data []uint16, w, h int16) error
- func (d *Device) DrawRGBBitmap8(x, y int16, data []uint8, w, h int16) error
- func (d *Device) EnableBacklight(enable bool)
- func (d *Device) FillRectangle(x, y, width, height int16, c color.RGBA) error
- func (d *Device) FillRectangleWithBuffer(x, y, width, height int16, buffer []color.RGBA) error
- func (d *Device) FillScreen(c color.RGBA)
- func (d *Device) InvertColors(invert bool)
- func (d *Device) IsBGR(bgr bool)
- func (d *Device) SetPixel(x int16, y int16, c color.RGBA)
- func (d *Device) SetRotation(rotation Rotation)
- func (d *Device) SetScroll(line int16)
- func (d *Device) SetScrollArea(topFixedArea, bottomFixedArea int16)
- func (d *Device) Size() (w, h int16)
- func (d *Device) StopScroll()
- func (d *Device) Tx(data []byte, isCommand bool)
- type Model
- type Rotation
Constants ¶
const ( NOP = 0x00 SWRESET = 0x01 RDDID = 0x04 RDDST = 0x09 SLPIN = 0x10 SLPOUT = 0x11 PTLON = 0x12 NORON = 0x13 INVOFF = 0x20 INVON = 0x21 DISPOFF = 0x28 DISPON = 0x29 CASET = 0x2A RASET = 0x2B RAMWR = 0x2C RAMRD = 0x2E PTLAR = 0x30 COLMOD = 0x3A MADCTL = 0x36 MADCTL_MY = 0x80 MADCTL_MX = 0x40 MADCTL_MV = 0x20 MADCTL_ML = 0x10 MADCTL_RGB = 0x00 MADCTL_BGR = 0x08 MADCTL_MH = 0x04 RDID1 = 0xDA RDID2 = 0xDB RDID3 = 0xDC RDID4 = 0xDD FRMCTR1 = 0xB1 FRMCTR2 = 0xB2 FRMCTR3 = 0xB3 INVCTR = 0xB4 DISSET5 = 0xB6 PWCTR1 = 0xC0 PWCTR2 = 0xC1 PWCTR3 = 0xC2 PWCTR4 = 0xC3 PWCTR5 = 0xC4 VMCTR1 = 0xC5 PWCTR6 = 0xFC GMCTRP1 = 0xE0 GMCTRN1 = 0xE1 VSCRDEF = 0x33 VSCRSADD = 0x37 GREENTAB Model = 0 MINI80x160 Model = 1 NO_ROTATION Rotation = 0 ROTATION_90 Rotation = 1 // 90 degrees clock-wise rotation ROTATION_180 Rotation = 2 ROTATION_270 Rotation = 3 )
Registers
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct { Width int16 Height int16 Rotation Rotation Model Model RowOffset int16 ColumnOffset int16 }
Config is the configuration for the display
type Device ¶
type Device struct {
// contains filtered or unexported fields
}
Device wraps an SPI connection.
func (*Device) Display ¶
Display does nothing, there's no buffer as it might be too big for some boards
func (*Device) DrawFastHLine ¶
DrawFastHLine draws a horizontal line faster than using SetPixel
func (*Device) DrawFastVLine ¶
DrawFastVLine draws a vertical line faster than using SetPixel
func (*Device) DrawRGBBitmap ¶
DrawRGBBitmap copies an RGB bitmap to the internal buffer at given coordinates
func (*Device) DrawRGBBitmap8 ¶
DrawRGBBitmap8 copies an RGB bitmap to the internal buffer at given coordinates
func (*Device) EnableBacklight ¶
EnableBacklight enables or disables the backlight
func (*Device) FillRectangle ¶
FillRectangle fills a rectangle at a given coordinates with a color
func (*Device) FillRectangleWithBuffer ¶
FillRectangle fills a rectangle at a given coordinates with a buffer
func (*Device) FillScreen ¶
FillScreen fills the screen with a given color
func (*Device) InvertColors ¶
InverColors inverts the colors of the screen
func (*Device) SetRotation ¶
SetRotation changes the rotation of the device (clock-wise)
func (*Device) SetScrollArea ¶
SetScrollWindow sets an area to scroll with fixed top and bottom parts of the display
func (*Device) StopScroll ¶
func (d *Device) StopScroll()
SpotScroll returns the display to its normal state