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
- type Color
- type Config
- type Device
- type DeviceOf
- func (d *DeviceOf[T]) Command(command uint8)
- func (d *DeviceOf[T]) Configure(cfg Config)
- func (d *DeviceOf[T]) Data(data uint8)
- func (d *DeviceOf[T]) Display() error
- func (d *DeviceOf[T]) DrawBitmap(x, y int16, bitmap pixel.Image[T]) error
- func (d *DeviceOf[T]) DrawFastHLine(x0, x1, y int16, c color.RGBA)
- func (d *DeviceOf[T]) DrawFastVLine(x, y0, y1 int16, c color.RGBA)
- func (d *DeviceOf[T]) DrawRGBBitmap8(x, y int16, data []uint8, w, h int16) errordeprecated
- func (d *DeviceOf[T]) EnableBacklight(enable bool)
- func (d *DeviceOf[T]) FillRectangle(x, y, width, height int16, c color.RGBA) error
- func (d *DeviceOf[T]) FillRectangleWithBuffer(x, y, width, height int16, buffer []color.RGBA) error
- func (d *DeviceOf[T]) FillScreen(c color.RGBA)
- func (d *DeviceOf[T]) InvertColors(invert bool)
- func (d *DeviceOf[T]) IsBGR(bgr bool)
- func (d *DeviceOf[T]) Rotation() drivers.Rotation
- func (d *DeviceOf[T]) SetPixel(x int16, y int16, c color.RGBA)
- func (d *DeviceOf[T]) SetRotation(rotation drivers.Rotation) error
- func (d *DeviceOf[T]) SetScroll(line int16)
- func (d *DeviceOf[T]) SetScrollArea(topFixedArea, bottomFixedArea int16)
- func (d *DeviceOf[T]) Size() (w, h int16)
- func (d *DeviceOf[T]) Sleep(sleepEnabled bool) error
- func (d *DeviceOf[T]) StopScroll()
- func (d *DeviceOf[T]) Tx(data []byte, isCommand bool)
- type Model
- type Rotationdeprecated
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 = drivers.Rotation0 ROTATION_90 = drivers.Rotation90 // 90 degrees clock-wise rotation ROTATION_180 = drivers.Rotation180 ROTATION_270 = drivers.Rotation270 )
Registers
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Width int16 Height int16 Rotation drivers.Rotation Model Model RowOffset int16 ColumnOffset int16 }
Config is the configuration for the display
type DeviceOf ¶
type DeviceOf[T Color] struct { // contains filtered or unexported fields }
DeviceOf is a generic version of Device, which supports different pixel formats.
func NewOf ¶
NewOf creates a new ST7735 connection with a particular pixel format. The SPI wire must already be configured.
func (*DeviceOf[T]) Display ¶
Display does nothing, there's no buffer as it might be too big for some boards
func (*DeviceOf[T]) DrawBitmap ¶
DrawBitmap copies the bitmap to the internal buffer on the screen at the given coordinates. It returns once the image data has been sent completely.
func (*DeviceOf[T]) DrawFastHLine ¶
DrawFastHLine draws a horizontal line faster than using SetPixel
func (*DeviceOf[T]) DrawFastVLine ¶
DrawFastVLine draws a vertical line faster than using SetPixel
func (*DeviceOf[T]) EnableBacklight ¶
EnableBacklight enables or disables the backlight
func (*DeviceOf[T]) FillRectangle ¶
FillRectangle fills a rectangle at a given coordinates with a color
func (*DeviceOf[T]) FillRectangleWithBuffer ¶
FillRectangle fills a rectangle at a given coordinates with a buffer
func (*DeviceOf[T]) FillScreen ¶
FillScreen fills the screen with a given color
func (*DeviceOf[T]) InvertColors ¶
InverColors inverts the colors of the screen
func (*DeviceOf[T]) SetRotation ¶
SetRotation changes the rotation of the device (clock-wise)
func (*DeviceOf[T]) SetScrollArea ¶
SetScrollWindow sets an area to scroll with fixed top and bottom parts of the display
func (*DeviceOf[T]) Sleep ¶
Set the sleep mode for this LCD panel. When sleeping, the panel uses a lot less power. The LCD won't display an image anymore, but the memory contents will be kept.
func (*DeviceOf[T]) StopScroll ¶
func (d *DeviceOf[T]) StopScroll()
SpotScroll returns the display to its normal state