hx8357

package
v1.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 8, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NOP      = 0x00 // No operation / dummy command
	SWRESET  = 0x01 // Software reset
	SLPIN    = 0x10 // Sleep In
	SLPOUT   = 0x11 // Sleep Out
	PTLON    = 0x12 // Partial mode on
	NORON    = 0x13 // Normal display mode on
	INVOFF   = 0x20 // Display inversion off
	INVON    = 0x21 // Display inversion on
	ALLPOFF  = 0x22 // All pixel off
	ALLPON   = 0x23 // All pixel on
	GAMSET   = 0x26 // Set Gamma curve
	DISPOFF  = 0x28 // Display off
	DISPON   = 0x29 // Display on
	CASET    = 0x2A // Set starting column address
	PASET    = 0x2B // Set starting row address
	RAMWR    = 0x2C // Memory write
	PLTAR    = 0x30 // Partial area
	VSCRDEF  = 0x33 // Vertical scrolling definition
	TEOFF    = 0x34 // Tearing effect line off
	TEON     = 0x35 // Tearing effect line on
	MADCTL   = 0x36 // Memory access control
	VSCRSADD = 0x37 // Vertical scrolling start address
	IDMOFF   = 0x38 // Idle mode off
	IDMON    = 0x39 // Idle mode on
	COLMOD   = 0x3A // Interface pixel format
	RAMWRCON = 0x3C // Memory write (continue)
	TESL     = 0x44 // Set tear effect scan lines
	WRDISBV  = 0x51 // Write display brightness
	WRCTRLD  = 0x53 // Write CTRL display
	WRCABC   = 0x55 // Write adaptive brightness control
	WRCABCMB = 0x5E // Write adapt. bright. control minimum brightness

	SETOSC       = 0xB0 // Set internal oscillator
	SETPOWER     = 0xB1 // Set power control
	SETDISPLAY   = 0xB2 // Set display control
	SETRGB       = 0xB3 // Set RGB interface
	SETCYC       = 0xB4 // Set display cycle
	SETBGP       = 0xB5 // Set BGP voltage
	SETVCOM      = 0xB6 // Set VCOM voltage
	SETOTP       = 0xB7 // Set OTP
	SETEXTC      = 0xB9 // Enter extension command
	SETDGC       = 0xC1 // Set digital gamma correction
	SETSTBA      = 0xC0 // Set source option
	SETDDB       = 0xC4 // Set DDB
	SETCABC      = 0xC9 // Set CABC
	SETPANEL     = 0xCC // Set panel characteristics
	SETGAMMA     = 0xE0 // Set gamma
	SETIMAGEI    = 0xE9 // Set image type
	SETMESSI     = 0xEA // Set command type
	SETCOLOR     = 0xEB // Set color
	SETREADINDEX = 0xFE // Set SPI read command address

	LONG_SIDE  = 480
	SHORT_SIDE = 320

	SPI_BLOCK_SIZE = 4096
)

Konstanten für den Display-Chip HX8357. Dies sind die Codes aller Befehle, welche der ILI-Chip unterstützt. Mehr Infos zu den einzelnen Befehlen findet man in den Dokumentationen.

Variables

View Source
var (
	SpiDevFile = "/dev/spidev0.0"
	DatCmdPin  = "GPIO25"
)

Die Variablen SpiDevFile und DatCmdPin enthalten die Verbindungsparameter zum Display-Chip über den Main-Kanal des SPI-Buses.

Functions

This section is empty.

Types

type HX8357

type HX8357 struct {
	// contains filtered or unexported fields
}

Dies ist der Datentyp, welche für die Verbindung zum HX8357 via SPI steht. Im Wesentlichen handelt es sich dabei um den Filedescriptor auf das Device-File für die SPI-Verbindung und den Pin, welcher für die Command/Data-Leitung verwendet wird.

func Open

func Open(speedHz physic.Frequency) *HX8357

Damit wird die Verbindung zum HX8357 geöffnet. Die Initialisierung des Chips wird in einer separaten Funktion (Init()) durchgeführt!

func (*HX8357) Close

func (d *HX8357) Close()

Schliesst die Verbindung zum HX8357.

func (*HX8357) Cmd

func (d *HX8357) Cmd(cmd uint8)

Sende den Befehl in 'cmd' zum HX8357.

func (*HX8357) Data32

func (d *HX8357) Data32(value uint32)

Sende die Daten in 'value' (4 Bytes) als Datenpaket zum HX8357.

func (*HX8357) Data8

func (d *HX8357) Data8(value uint8)

Sende die Daten in 'value' (1 Byte) als Datenpaket zum HX8357.

func (*HX8357) DataArray

func (d *HX8357) DataArray(buf []byte)

Sendet die Daten aus dem Slice 'buf' als Daten zum HX8357. Dies ist bloss eine Hilfsfunktion, damit das Senden von Daten aus einem Slice einfacher aufzurufen ist und die ganzen Konvertierungen nicht im Hauptprogramm sichtbar sind.

func (*HX8357) Init

func (d *HX8357) Init(initParams []any)

Führt die Initialisierung des Chips durch. initParams ist ein Slice von Hardware-spezifischen Einstellungen. Beim HX8357 sind dies:

{ initMinimal, madctlParam }

type HX8357Dummy

type HX8357Dummy struct {
	// contains filtered or unexported fields
}

Dies ist der Datentyp, welche für die Verbindung zum ILI9341 via SPI steht. Im Wesentlichen handelt es sich dabei um den Filedescriptor auf das Device-File für die SPI-Verbindung und den Pin, welcher für die Command/Data-Leitung verwendet wird.

func OpenDummy

func OpenDummy(speedHz physic.Frequency) *HX8357Dummy

Damit wird die Verbindung zum HX8357 geöffnet. Die Initialisierung des Chips wird in einer separaten Funktion (Init()) durchgeführt!

func (*HX8357Dummy) Close

func (d *HX8357Dummy) Close()

Schliesst die Verbindung zum HX8357.

func (*HX8357Dummy) Cmd

func (d *HX8357Dummy) Cmd(cmd uint8)

Sende den Befehl in 'cmd' zum HX8357.

func (*HX8357Dummy) Data32

func (d *HX8357Dummy) Data32(value uint32)

Sende die Daten in 'value' (4 Bytes) als Datenpaket zum HX8357.

func (*HX8357Dummy) Data8

func (d *HX8357Dummy) Data8(value uint8)

Sende die Daten in 'value' (1 Byte) als Datenpaket zum HX8357.

func (*HX8357Dummy) DataArray

func (d *HX8357Dummy) DataArray(buf []byte)

Sendet die Daten aus dem Slice 'buf' als Daten zum HX8357. Dies ist bloss eine Hilfsfunktion, damit das Senden von Daten aus einem Slice einfacher aufzurufen ist und die ganzen Konvertierungen nicht im Hauptprogramm sichtbar sind.

func (*HX8357Dummy) Init

func (d *HX8357Dummy) Init(initParams []any)

Führt die Initialisierung des Chips durch. initParams ist ein Slice von Hardware-spezifischen Einstellungen. Beim HX8357 sind dies:

{ initMinimal, madctlParam }

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL