TFT Internal Library

The mikroPascal PRO for ARM provides a library for working with Liquid Crystal Display (LCD) Controller which supports a variety of LCD and OLED panels.

Library Routines

TFTIntern_ModeSet

Прототип

function TFTIntern_ModeSet(ui8Mode : byte; ui32PixClk : dword; ui32SysClk : dword) : dword;

Описание

This function sets the basic operating mode of the LCD controller and also its master clock.

Параметры
  • ui8Mode: specifies the basic operating mode to be used. Valid values :
    Value Описание
    _TFT_INTERN_MODE_LIDD Used to select Lcd Interface Display Driver mode for character panels connected via an asynchronous interface (CS, WE, OE, ALE, data).
    _TFT_INTERN_MODE_RASTER Used to communicate with panels via a synchronous video interface using data and sync signals.
  • ui32PixClk:specifies the desired LCD controller pixel or master clock rate in Hz.
  • ui32SysClk: specifies the current system clock rate in Hz.
Возвращает

The actual LCD controller pixel clock or MCLK rate set.

Требует

Ничего.

Замечания

None.

TFTIntern_ClockReset

Прототип

function TFTIntern_ClockReset(ui32Clocks : dword) : byte;

Описание

This function allows sub-modules of the LCD controller to be reset under software control.

Параметры
  • ui8Mode: defines the subset of clock domains to be reset. Valid value is the logical OR of the following :
    Value Описание
    _TFT_INTERN_CLOCK_MAIN causes the entire LCD controller module to be reset.
    _TFT_INTERN_CLOCK_DMA causes the DMA controller submodule to be reset.
    _TFT_INTERN_CLOCK_LIDD causes the LIDD submodule to be reset.
    _TFT_INTERN_CLOCK_CORE causes the core module, including the raster logic, to be reset.

In all cases, LCD controller register values are preserved across these resets.

Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

None.

TFTIntern_LIDDConfigSet

Прототип

function TFTIntern_LIDDConfigSet(ui32Config : dword) : byte;

Описание

This function is used when the LCD controller is configured in LIDD mode and specifies the configuration of the interface between the controller and the display panel.

Параметры
  • ui8Mode: ddefines the display interface configuration. Valid values :
    Value Описание
    _LIDD_CONFIG_SYNC_MPU68 selects Sync MPU68 mode. LCDCP = EN, LCDLP = DIR, LCDFP = ALE, LCDAC = CS0, LCDMCLK = MCLK.
    _LIDD_CONFIG_ASYNC_MPU68 selects Async MPU68 mode. LCDCP = EN, LCDLP = DIR, LCDFP = ALE, LCDAC = CS0, LCDMCLK = CS1
    _LIDD_CONFIG_SYNC_MPU80 selects Sync MPU80 mode. LCDCP = RS, LCDLP = WS, LCDFP = ALE, LCDAC = CS0, LCDMCLK = MCLK.
    _LIDD_CONFIG_ASYNC_MPU80 selects Async MPU80 mode. LCDCP = RS, LCDLP = WS, LCDFP = ALE, LCDAC = CS0, LCDMCLK = CS1.
    _LIDD_CONFIG_ASYNC_HITACHI selects Hitachi (async) mode. LCDCP = N/C, LCDLP = DIR, LCDFP = ALE, LCDAC = E0, LCDMCLK = E1.

    Additional flags may be ORed with this parameter to control the polarities of various control signals :
    Value Описание
    _LIDD_CONFIG_INVERT_ALE Address Latch Enable (ALE) polarity control. By default, ALE is active low. If this flag is set, it becomes active high.
    _LIDD_CONFIG_INVERT_RS_EN Read Strobe/Enable polarity control. By default, RS is active low and Enable is active high. If this flag is set, RS becomes active high and Enable active low.
    _LIDD_CONFIG_INVERT_WS_DIR Write Strobe/Direction polarity control. By default, WS is active low and Direction write low/read high. If this flag is set, WS becomes active high and Direction becomes write high/read low.
    _LIDD_CONFIG_INVERT_CS0 Chip Select 0/Enable 0 polarity control. By default, CS0 and E0 are active high. If this flag is set, they become active low.
    _LIDD_CONFIG_INVERT_CS1 Chip Select 1/Enable 1 polarity control. By default, CS1 and E1 are active high. If this flag is set, they become active low.

Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

None.

TFTIntern_LIDDTimingSet

Прототип

function TFTIntern_LIDDTimingSet(ui32CS : dword; const pTiming : ^TLCDIDDTiming) : byte;

Описание

This function is used in LIDD mode to set the setup, strobe and hold times for the various interface control signals.
Independent timings are stored for each of the two supported chip selects offered by the LCD controller.

Параметры
  • ui32CS: specifies the chip select whose timings are to be set.
  • pTiming: points to a record containing the desired timing Параметры. Definition of this record
    type TLCDIDDTiming = record
      // Write Strobe Set-Up cycles.  When performing a write access, this
      // field defines the number of MCLK cycles that Data Bus/Pad Output
      // Enable, ALE, the Direction bit, and Chip Select have to be ready before
      // the Write Strobe is asserted.  Valid values are from 0 to 31.
      writeStrobeSetupCycles : byte;
    
      // Write Strobe Duration cycles.  Field value defines the number of MCLK
      // cycles for which the Write Strobe is held active when performing a
      // write access.  Valid values are from 1 to 63.
      writeStrobeDurationCycles : byte;
    
      // Write Strobe Hold cycles.  Field value defines the number of MCLK
      // cycles for which Data Bus/Pad Output Enable, ALE, the Direction bit,
      // and Chip Select are held after the Write Strobe is deasserted when
      // performing a write access.  Valid values are from 1 to 15.
      writeStrobeHoldCycles : byte;
    
      // Read Strobe Set-Up cycles.  When performing a read access, this field
      // defines the number of MCLK cycles that Data Bus/Pad Output Enable, ALE,
      // the Direction bit, and Chip Select have to be ready before the Read
      // Strobe is asserted.  Valid values are from 0 to 31.
      readStrobeSetupCycles : byte;
    
      // Read Strobe Duration cycles.  Field value defines the number of MCLK
      // cycles for which the Read Strobe is held active when performing a read
      // access.  Valid values are from 1 to 63.
      readStrobeDurationCycles : byte;
    
      // Read Strobe Hold cycles.  Field value defines the number of MCLK cycles
      // for which Data Bus/Pad Output Enable, ALE, the Direction bit, and Chip
      // Select are held after the Read Strobe is deasserted when performing a
      // read access.  Valid values are from 1 to 15.
      readStrobeHoldCycles : byte;
    
      // Field value defines the number of MCLK cycles between the end of one
      // device access and the start of another device access using the same
      // Chip Select unless the two accesses are both Reads.  In this case,
      // this delay is not incurred.  Valid vales are from 1 to 4.
      delayCycles : byte;
    end;
    
Возвращает
  • non-zero - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDDMADisable

Прототип

function TFTIntern_LIDDDMADisable() : byte;

Описание

When the LCD controller is operating in LCD Interface Display Driver mode, this function must be called after completion of a DMA transaction and before calling
TFTIntern_LIDDCommandWrite, TFTIntern_LIDDDataWrite, TFTIntern_LIDDStatusRead, TFTIntern_LIDDIndexedWrite, TFTIntern_LIDDIndexedRead or TFTIntern_LIDDDataRead to disable DMA mode and allow CPU-initiated transactions to the display.

Параметры

None.

Возвращает
  • 0 - if successful.
Требует

Ничего.

Замечания

LIDD DMA mode is enabled automatically when TFTIntern_LIDDDMAWrite) is called.

TFTIntern_LIDDCommandWrite

Прототип

function TFTIntern_LIDDCommandWrite(ui32CS : dword; ui16Cmd : word) : byte;

Описание

This function writes a 16 bit command word to the display when the LCD controller is in LIDD mode. A command write occurs with the ALE signal active.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
  • ui16Cmd: the 16 bit command word to write.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDDataWrite

Прототип

function TFTIntern_LIDDDataWrite(ui32CS : dword; ui16Data : word) : byte;

Описание

This function writes a 16 bit data word to the display when the LCD controller is in LIDD mode. A data write occurs with the ALE signal inactive.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
  • ui16Cmd: the 16 bit data to write.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDIndexedWrite

Прототип

function TFTIntern_LIDDIndexedWrite(ui32CS : dword; ui16Addr : word; ui16Data : word) : byte;

Описание

This function writes a 16 bit data word to a register in the display when the LCD controller is in LIDD mode and
configured to use either the Motorola or Intel modes which employ an external address latch.

When configured in Hitachi mode, this function should not be used.
In this case the functions TFTIntern_LIDDCommandWrite and TFTIntern_LIDDDataWrite may be used to transfer command and data bytes to the panel.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
  • ui16Addr: address of the display register to write.
  • ui16Data: data to write.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDStatusRead

Прототип

function TFTIntern_LIDDStatusRead(ui32CS : dword) : word;

Описание

This function reads the 16 bit status word from the display when the LCD controller is in LIDD mode. A status read occurs with the ALE signal active.
If the interface is configured in Hitachi mode, this operation corresponds to a command mode read.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
Возвращает

The status word read from the display panel.

Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDDataRead

Прототип

function TFTIntern_LIDDDataRead(ui32CS : dword) : byte;

Описание

This function reads the 16 bit data word from the display when the LCD controller is in LIDD mode. A data read occurs with the ALE signal inactive.
If the interface is configured in Hitachi mode, this operation corresponds to a command mode read.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
Возвращает

The data word read from the display panel.

Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDIndexedRead

Прототип

function TFTIntern_LIDDIndexedRead(ui32CS : dword; ui16Addr : word) : word;

Описание

This function reads 16 bit word from a register in the display when the LCD controller is in LIDD mode
and configured to use either the Motorola or Intel modes which employ an external address latch.

When configured in Hitachi mode, this function should not be used.
In this case the functions TFTIntern_LIDDStatusRead and TFTIntern_LIDDDataRead may be used to read status and data bytes from the panel.

This function must not be called if the LIDD interface is currently configured to expect DMA transactions.
If DMA was previously used to write to the panel, TFTIntern_LIDDDMADisable must be called before this function can be used.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_LIDDDMAWrite

Прототип

function TFTIntern_LIDDDMAWrite(ui32CS : dword; const pui32Data : ^dword; ui32Count : dword) : byte;

Описание

This function writes a block of 16-bit data words to the display using DMA. It is only valid when the LCD controller is in LIDD mode.

When configured in Hitachi mode, this function should not be used.
In this case the functions TFTIntern_LIDDStatusRead and TFTIntern_LIDDDataRead may be used to read status and data bytes from the panel.

This function enables DMA mode prior to starting the transfer.
The caller is responsible for ensuring that any earlier DMA transfer has completed before initiating another transfer.

During the time that DMA is enabled, none of the other LCD LIDD data transfer functions may be called.
When the DMA transfer is complete and the application wishes to use the CPU to communicate with the display, TFTIntern_LIDDDMADisable must be called to disable DMA access prior to calling TFTIntern_LIDDCommandWrite, TFTIntern_LIDDDataWrite, TFTIntern_LIDDStatusRead, TFTIntern_LIDDIndexedWrite, TFTIntern_LIDDIndexedRead or TFTIntern_LIDDDataRead.

Параметры
  • ui32CS: specifies the chip select to use. Valid values are 0 and 1.
  • pui32Data: address of the first 16-bit word to write. This address must be aligned on a 32-bit word boundary.
  • ui32Count: number of 16-bit words to write. This value must be a multiple of 2.
Возвращает
  • non-zero - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

CS1 is not available when operating in Sync MPU68 or Sync MPU80 modes.

TFTIntern_RasterConfigSet

Прототип

function TFTIntern_RasterConfigSet(ui32Config : dword; ui8PalLoadDelay : byte) : byte;

Описание

This function configures the basic operating mode of the raster interface and specifies the type of panel that the controller is to drive.

This function enables DMA mode prior to starting the transfer.
The caller is responsible for ensuring that any earlier DMA transfer has completed before initiating another transfer.

During the time that DMA is enabled, none of the other LCD LIDD data transfer functions may be called.
When the DMA transfer is complete and the application wishes to use the CPU to communicate with the display,
TFTIntern_LIDDDMADisable must be called to disable DMA access prior to calling TFTIntern_LIDDCommandWrite, TFTIntern_LIDDDataWrite, TFTIntern_LIDDStatusRead, TFTIntern_LIDDIndexedWrite, TFTIntern_LIDDIndexedRead or TFTIntern_LIDDDataRead.

Параметры
  • ui32Config: specifies properties of the raster interface and the attached display panel. Valid values :
    Value Описание
    _RASTER_FMT_ACTIVE_24BPP_PACKED selects an active matrix display and uses a packed 24-bit per pixel packet frame buffer where 4 pixels are described within 3 consecutive 32-bit words.
    _RASTER_FMT_ACTIVE_24BPP_UNPACKED selects an active matrix display and uses an unpacked 24-bit per pixel packet frame buffer where each 32-bit word contains a single pixel and 8 bits of padding.
    _RASTER_FMT_ACTIVE_16BPP selects an active matrix display and uses a 16-bit per pixel frame buffer with 2 pixels in each 32-bit word.
    _RASTER_FMT_ACTIVE_PALETTIZED_12BIT selects an active matrix display and uses a 1, 2, 4 or 8bpp frame buffer with palette lookup. Output color data is described in 12-bit format using bits 11:0 of the data bus. The frame buffer pixel format is defined by the value passed in the ui32Type parameter to TFTIntern_RasterPaletteSet.
    _RASTER_FMT_ACTIVE_PALETTIZED_16BIT selects an active matrix display and uses a 1, 2, 4 or 8bpp frame buffer with palette lookup. Output color data is described in 16-bit 5:6:5 format. The frame buffer pixel format is defined by the value passed in the ui32Type parameter to TFTIntern_RasterPaletteSet.
    _RASTER_FMT_PASSIVE_MONO_4PIX selects a monochrome, passive matrix display which outputs 4 pixels on each pixel clock.
    _RASTER_FMT_PASSIVE_MONO_8PIX selects a monochrome, passive matrix display which outputs 8 pixels on each pixel clock.
    _RASTER_FMT_PASSIVE_COLOR_12BIT selects a passive matrix display and uses a 12bpp frame buffer. The palette is bypassed and 12-bit pixel data is sent to the grayscaler for the display.
    _RASTER_FMT_PASSIVE_COLOR_16BIT selects a passive matrix display and uses a 16bpp frame buffer with pixels in 5:6:5 format. Only the 4 significant bits of each color component are sent to the grayscaler for the display.

    Additionally, the following flags may be ORed with this parameter :
    Value Описание
    RASTER_ACTVID_DURING_BLANK sets Actvid to toggle during vertical blanking.
    RASTER_NIBBLE_MODE_ENABLED enables nibble mode. This works with _RASTER_READ_ORDER_REVERSED to determine how 1, 2 and 4bpp pixels are extracted from words read from the frame buffer. If specified, words read from the frame buffer are byte swapped prior to individual pixels being parsed from them.
    RASTER_LOAD_DATA_ONLY Tells the controller to read only pixel data from the frame buffer and to use the last palette read. No palette load is performed.
    RASTER_LOAD_PALETTE_ONLY tells the controller to read only the palette data from the frame buffer.
    RASTER_READ_ORDER_REVERSED when using 1, 2, 4 and 8bpp frame buffers, this option reverses the order in which frame buffer words are parsed.
    When this option is specified, the leftmost pixel in a word is taken from the most significant bits.
    When absent, the leftmost pixel is parsed from the least significant bits.

  • ui8PalLoadDelay: specifies the number of system clocks to wait between each 16 halfword (16-bit) burst when loading the palette from SRAM into the internal palette RAM of the controller.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

If the LCD controller's raster engine is enabled when this function is called, it is disabled as a side effect of the call.

TFTIntern_RasterTimingSet

Прототип

function TFTIntern_RasterTimingSet(const pTiming : ^TLCDRasterTiming) : byte;

Описание

This function is used in raster mode to set the panel size and sync timing Параметры.

Параметры
  • pTiming: points to a record containing the desired timing Параметры :
    type TLCDRasterTiming = record
      // Flags configuring the polarity and active edges of the various signals
      // in the raster interface.  This field is comprised of a logical OR of
      // the labels with prefix  ``RASTER_TIMING_''.
      config : dword;
    
      // The number of pixels contained within each line on the LCD display.
      // Valid values are multiple of 16 less than or equal to 2048.
      displayWidth : word;
    
      // The number of lines on the LCD display.  Valid values are from 1 to
      // 2048.
      displayHeight : word;
    
      // A value from 1 to 1024 that specifies the number of pixel clock periods
      // to add to the beginning of a line transmission before the first set of
      // pixels is output to the display.
      horizontalFrontPorch : word;
    
      // A value from 1 to 1024 that specifies the number of pixel clock periods
      // to add to the end of a line transmission before line clock is asserted.
      horizontalBackPorch : word;
    
      // A value from 1 to 1024 that specifies the number of pixel clock periods
      // to pulse the line clock at the end of each line.
      horizontalSyncWidth : word;
    
      // A value from 0 to 255 that specifies the number of line clock periods
      // to add to the beginning of a frame before the first set of pixels is
      // output to the display.
      verticalFrontPorch : byte;
    
      // A value from 0 to 255 that specifies the number of line clock periods
      // to add to the end of each frame.
      verticalBackPorch : byte;
    
      // In active mode, a value from 1 to 64 that specifies the number of
      // line clock periods to set the lcd_fp pin active at the end of each
      // frame after the vertical front porch period elapses.  The number of
      // The frame clock is used as the VSYNC signal in active mode.
      //
      // In passive mode, a value from 1 to 64 that specifies the number of
      // extra line clock periods to insert after the vertical front porch
      // period has elapsed.  Note that the width of lcd_fp is not affected by
      // this value in passive mode.
      verticalSyncWidth : byte;
    
      // A value from 0 to 255 that specifies the number of line clocks to
      // count before transitioning the AC Bias pin.  This pin is used to
      // periodically invert the polarity of the power supply to prevent DC
      // charge build-up within the display.
      biasLineCount : word;
    end;
    
Возвращает
  • non-zero - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

None.

TFTIntern_RasterACBiasIntCountSet

Прототип

function TFTIntern_RasterACBiasIntCountSet(ui8Count : byte) : byte;

Описание

This function is used to set the number of AC bias transitions between each AC bias count interrup.

Параметры
  • ui8Count: number of AC bias pin transitions to count before the AC bias count interrupt is asserted. Valid values are from 0 to 15.
    If zero, AC bias count interrupt is generated.
Возвращает
  • 1 - if an error occurred.
  • 0 - if successful.
Требует

Ничего.

Замечания

None.

TFTIntern_RasterEnable

Прототип

function TFTIntern_RasterEnable() : byte;

Описание

This function enables the LCD controller raster output and starts displaying the content of the current frame buffer on the attached panel.

Параметры

None.

Возвращает
  • 0 - if successful.
Требует

Prior to enabling the raster output, TFTIntern_ModeSet, TFTIntern_LIDDConfigSet, TFTIntern_RasterConfigSet, TFTIntern_RasterTimingSet, TFTIntern_RasterPaletteSet and TFTIntern_RasterFrameBufferSet must have been called.

Замечания

None.

TFTIntern_RasterEnabled

Прототип

function TFTIntern_RasterEnabled() : byte;

Описание

This function may be used to query whether or not the raster output is currently enabled.

Параметры

None.

Возвращает
  • 0 - if successful.
  • 1 - if an error occured.
Требует

Ничего.

Замечания

None.

TFTIntern_RasterDisable

Прототип

function TFTIntern_RasterDisable() : byte;

Описание

This function disables the LCD controller raster output and stops driving the attached display.

Параметры

None.

Возвращает
  • 0 - if successful.
Требует

Ничего.

Замечания

Once disabled, the raster engine continues to scan data until the end of the current frame. If the display is to be re-enabled, this must not be done until after the final
_TFT_INTERN_INT_RASTER_FRAME_DONE has been received, indicating that the raster engine has stopped.

TFTIntern_RasterSubPanelConfigSet

Прототип

function TFTIntern_RasterSubPanelConfigSet(ui32Flags : dword; ui32BottomLines : dword; ui32DefaultPixel : dword) : byte;

Описание

The LCD controller provides a feature which allows a portion of the display to be filled with a default color rather than image data from the frame buffer.
This may be used to reduce SRAM bandwidth requirements since no data is fetched for lines containing the default color.

This feature is only available when the LCD controller is in raster mode and configured to drive an active matrix display.

Параметры
  • ui32Flags: position of the sub panel. Valid values :
    Value Описание
    _TFT_INTERN_SUBPANEL_AT_TOP Set subpanel area containing image data in the top portion of the display and default color in the bottom portion.
    _TFT_INTERN_SUBPANEL_AT_BOTTOM Set subpanel area containing image data in the bottom portion of the display and default color in the top portion.
  • ui32BottomLines: defines the number of lines comprising the bottom portion of the display. If _TFT_INTERN_SUBPANEL_AT_TOP is set in ui32Flags parameter,
    these lines contain the default pixel color when the subpanel is enabled, otherwise they contain image data.
  • ui32DefaultPixel: the 24-bit RGB color to show in the portion of the display not configured to show image data.
Возвращает
  • 0 - if successful.
  • non-zero - if an error occured.
Требует

Ничего.

Замечания

The subpanel display mode is not enabled using this function. To enable the subpanel once it has been configured, call TFTIntern_RasterSubPanelEnable.

TFTIntern_RasterSubPanelEnable

Прототип

function TFTIntern_RasterSubPanelEnable() : byte;

Описание

This function enables subpanel display mode and displays a default color rather than image data in the number of lines and at the position specified by a previous call to TFTIntern_RasterSubPanelConfigSet.

Параметры

None.

Возвращает
  • 0 - if successful.
Требует

Prior to calling this function, the frame buffer should have been reconfigured to match the desired subpanel size using a call to TFTIntern_RasterFrameBufferSet.

Замечания

Subpanel display is only possible when the LCD controller is in raster mode and is configured to drive an active matrix display.

TFTIntern_RasterSubPanelDisable

Прототип

function TFTIntern_RasterSubPanelDisable() : byte;

Описание

This function disables subpanel display mode and reverts to showing the entire frame buffer image on the display.
After the subpanel is disabled, the frame buffer size must be reconfigured to match the full dimensions of the display area by calling TFTIntern_RasterFrameBufferSet with an appropriate value for the ui32NumBytes parameter.

Параметры

None.

Возвращает
  • 0 - if successful.
Требует

Prior to calling this function, the frame buffer should have been reconfigured to match the desired subpanel size using a call to TFTIntern_RasterFrameBufferSet.

Замечания

Subpanel display is only possible when the LCD controller is in raster mode and is configured to drive an active matrix display.

TFTIntern_DMAConfigSet

Прототип

function TFTIntern_DMAConfigSet(ui32Config : dword) : byte;

Описание

This function is used to configure the DMA engine within the LCD controller. This engine is responsible for performing bulk data transfers to the display
when in LIDD mode or for transferring palette and pixel data from SRAM to the display panel when in raster mode.

Параметры
  • ui32Config: this parameter is a logical OR of various flags. It must contain one value from each of the following groups :

    DMA Priority

    Value DMA engine's bus priority with higher numbers representing higher priorities.
    _LCD_DMA_PRIORITY_0 Priority 0.
    _LCD_DMA_PRIORITY_1 Priority 1.
    _LCD_DMA_PRIORITY_2 Priority 2.
    _LCD_DMA_PRIORITY_3 Priority 3.
    _LCD_DMA_PRIORITY_4 Priority 4.
    _LCD_DMA_PRIORITY_5 Priority 5.
    _LCD_DMA_PRIORITY_6 Priority 6.
    _LCD_DMA_PRIORITY_7 Priority 7.

    FIFO Words

    Value The number of words that have to be in the FIFO before it signals that it is ready.
    LCD_DMA_FIFORDY_8_WORDS 8 words in FIFO.
    LCD_DMA_FIFORDY_16_WORDS 16 words in FIFO.
    LCD_DMA_FIFORDY_32_WORDS 32 words in FIFO.
    LCD_DMA_FIFORDY_64_WORDS 64 words in FIFO.
    LCD_DMA_FIFORDY_128_WORDS 128 words in FIFO.
    LCD_DMA_FIFORDY_256_WORDS 256 words in FIFO.
    LCD_DMA_FIFORDY_512_WORDS 512 words in FIFO.

    DMA Burst Words

    Value The number of 32-bit words in each DMA burst transfer.
    LCD_DMA_BURST_1 1 word in DMA burst transfer.
    LCD_DMA_BURST_2 2 words in DMA burst transfer.
    LCD_DMA_BURST_4 4 words in DMA burst transfer.
    LCD_DMA_BURST_8 8 words in DMA burst transfer.
    LCD_DMA_BURST_16 16 words in DMA burst transfer.

    Byte Order

    Value Set internal byte lane controls and allow byte swapping within the DMA engine.
    LCD_DMA_BYTE_ORDER_0123 0123 order.
    LCD_DMA_BYTE_ORDER_1023 1023 order.
    LCD_DMA_BYTE_ORDER_3210 3210 order.
    LCD_DMA_BYTE_ORDER_2301 2300 order.

    Additionally, _LCD_DMA_PING_PONG may be specified. This flag configures the controller to operate in double-buffered mode.
    When data is scanned out from the first frame buffer, the DMA engine immediately moves to the second frame buffer and scan from there before moving back to the first.

    If this flag is clear, the DMA engine uses a single frame buffer, restarting the scan from the beginning of the buffer each time it completes a frame.

Возвращает
  • 0 - if successful.
Требует

Ничего.

Замечания

DMA burst sizes _LCD_DMA_BURST_1 and LCD_DMA_BURST_2 are only supported when the source data is in external, EPI-connected memory.
If used when the source is internal SRAM, the DMA operation does not complete correctly.

TFTIntern_RasterPaletteSet

Прототип

function TFTIntern_RasterPaletteSet(ui32Type : dword; pui32Addr : ^dword; const pui32SrcColors : ^dword; ui32Start : dword; ui32Count : dword) : byte;

Описание

Эта функция используется для инициализации цветовой палитры, хранящейся в начале буфера кадра.
Он записывает соответствующий тип пикселя в первую запись буфера кадра и копирует запрошенное количество цветов из исходного буфера в палитру, начиная с требуемого индекса,
опционально преобразовывая их из 24-битного цветового формата в 12-битный формат, используемый контроллером ЖК-дисплея

Параметры
  • ui32Type: specifies the type of pixel data to be held in the frame buffer and also the format of the source color values passed. It must must be set to one of the following values :
    Value DMA engine's bus priority with higher numbers representing higher priorities.
    _TFT_INTERN_PALETTE_TYPE_1BPP настраивает как 1-битный (монохромный) буфер кадров. Этот формат Требует 2 палитры ввода.
    _TFT_INTERN_PALETTE_TYPE_2BPP configures this as a 2 bit per pixel frame buffer. This format Требует a 4 entry palette.
    _TFT_INTERN_PALETTE_TYPE_4BPP configures this as a 4 bit per pixel frame. This format Требует a 16 entry palette.
    _TFT_INTERN_PALETTE_TYPE_8BPP configures this as an 8 bit per pixel frame buffer. This format Требует a 256 entry palette.
    _TFT_INTERN_PALETTE_TYPE_DIRECT configures this as a direct color (12, 16 or 24 bit per pixel). The color palette is not used in these modes but the
    frame buffer type must still be initialized to ensure that the hardware uses the correct pixel type.

    When this value is used, the format of the pixels in the frame buffer is defined by the ui32Config parameter
    previously passed to TFTIntern_RasterConfigSet.

  • pui32Addr: points to the start of the frame buffer into which the palette information is to be written.
  • pui32SrcColors: points to the first color value which is to be written into the frame buffer palette
  • ui32Start: specifies the index of the first color in the palette to update.
  • ui32Count: pecifies the number of source colors to be copied into the frame buffer palette.

Optionally, the _TFT_INTERN_PALETTE_SRC_24BIT flag may be ORed into ui32Type to indicate that the supplied colors in the pui32SrcColors array
are in the 24-bit format as used by the TivaWare Graphics Library with one color stored in each 32-bit word.

In this case, the colors read from the source array are converted to the 12-bit format used by the LCD controller before being written into the frame buffer palette.

Возвращает
  • 0 - if successful.
  • non-zero - if an error occured.
Требует

Ничего.

Замечания

If _TFT_INTERN_PALETTE_SRC_24BIT is not present, it is assumed that the pui32SrcColors array contains 12-bit colors in the format required by the LCD controller with 2 colors stored in each 32-bit word.
In this case the values are copied directly into the frame buffer palette without any reformatting.

TFTIntern_RasterFrameBufferSet

Прототип

function TFTIntern_RasterFrameBufferSet(ui8Buffer : byte; pui32Addr : ^dword; ui32NumBytes : dword) : byte;

Описание

This function is used to configure the position and size of one of the two supported frame buffers while in raster mode. The second frame buffer (configured when ui8Buffer is set to 1)
is only used if the controller is set to operate in ping-pong mode (by specifying the _LCD_DMA_PING_PONG configuration flag on a call to TFTIntern_LIDDConfigSet).

Параметры
  • ui8Buffer: specifies which frame buffer to configure. Valid values are 0 and 1.
  • ui32Addr: points to the first byte of the frame buffer. This pointer must be aligned on a 32-bit (word) boundary.
  • ui32NumBytes: specifies the size of the frame buffer in bytes. This value must be a multiple of 4.

The format of the frame buffer depends upon the image type in use and the current raster configuration settings.
If _RASTER_LOAD_DATA_ONLY was specified in a previous call to TFTIntern_RasterConfigSet the frame buffer contains only packed pixel data in the required bit depth and format.

In other cases, the frame buffer comprises a palette of either 8 or 128 32-bit words followed by the packed pixel data.
The palette size is 8 words (16 16-bit entries) for all pixel formats other than 8bpp which uses a palette of 128 words (256 16-bit entries).

Note that the 8 word palette is still present even for 12, 16 and 24-bit formats which do not use the lookup table.

The frame buffer size, specified using the ui32NumBytes parameter, must be the palette size (if any) plus the size of the image bitmap required for the currently configured display resolution :
ui32NumBytes = (Palette Size) + ((Width * Height) * BPP) / 8).

Возвращает
  • 0 - if successful.
  • non-zero - if an error occured.
Требует

Ничего.

Замечания

If _RASTER_LOAD_DATA_ONLY is not specified, frame buffers passed to this function must be initialized using a call to TFTIntern_RasterPaletteSet prior to nabling the raster output.
If this is not done, the pixel format identifier and color table required by the hardware is not present and the results are unpredictable.

TFTIntern_IntEnable

Прототип

function TFTIntern_IntEnable(ui32IntFlags : dword) : byte;

Описание

Эта функция позволяет указанным источникам прерывания контроллера LCD. Только источники, которые включены, могут отражаться на прерывании процессора; отключенные источники не влияют на процессор.

Параметры
  • ui32IntFlags:битовая маска источников прерываний должна быть включена; это логическое ИЛИ любого из следующего:
    Value Описание.
    _TFT_INTERN_INT_DMA_DONE Это прерывание указывает, что передача LIDD DMA завершена.
    _TFT_INTERN_INT_RASTER_FRAME_DONE Это прерывание указывает, что кадр растрового режима завершен.
    _TFT_INTERN_INT_SYNC_LOST Это прерывание указывает на то, что синхронизация кадров была потеряна.
    _TFT_INTERN_INT_AC_BIAS_CNT This interrupt is valid for passive matrix panels only and indicates that that AC bias transition counter has decremented to zero.
    The counter, set by a call to TFTIntern_RasterACBiasIntCountSet, is reloaded but remains disabled until this interrupt is cleared.
    _TFT_INTERN_INT_UNDERFLOW Это прерывание указывает на то, что произошло переполнение данных. Внутренний FIFO был пуст, когда логика вывода попыталась прочитать данные для отправки на дисплей.
    _TFT_INTERN_INT_PAL_LOAD Это прерывание указывает, что палитра цветов загружена.
    _TFT_INTERN_INT_EOF0 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 0.
    _TFT_INTERN_INT_EOF1 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 1.
Возвращает
  • 0 - в случае успеха.
  • 1 - если произошла ошибка.
Требует

Ничего.

Замечания

None.

TFTIntern_IntDisable

Прототип

function TFTIntern_IntDisable(ui32IntFlags : dword) : byte;

Описание

Эта функция отключает указанные источники прерываний ЖК-монитора. Только источники, которые включены, могут отражаться на прерывании процессора; отключенные источники не влияют на процессор.

Параметры
  • ui32IntFlags:битовая маска источников прерываний должна быть включена; это логическое ИЛИ любого из следующего:
    Value Описание.
    _TFT_INTERN_INT_DMA_DONE Это прерывание указывает, что передача LIDD DMA завершена.
    _TFT_INTERN_INT_RASTER_FRAME_DONE Это прерывание указывает, что кадр растрового режима завершен.
    _TFT_INTERN_INT_SYNC_LOST Это прерывание указывает на то, что синхронизация кадров была потеряна.
    _TFT_INTERN_INT_AC_BIAS_CNT This interrupt is valid for passive matrix panels only and indicates that that AC bias transition counter has decremented to zero.
    The counter, set by a call to TFTIntern_RasterACBiasIntCountSet, is reloaded but remains disabled until this interrupt is cleared.
    _TFT_INTERN_INT_UNDERFLOW Это прерывание указывает на то, что произошло переполнение данных. Внутренний FIFO был пуст, когда логика вывода попыталась прочитать данные для отправки на дисплей.
    _TFT_INTERN_INT_PAL_LOAD Это прерывание указывает, что палитра цветов загружена.
    _TFT_INTERN_INT_EOF0 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 0.
    _TFT_INTERN_INT_EOF1 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 1.
Возвращает
  • 0 - в случае успеха.
  • 1 - если произошла ошибка.
Требует

Ничего.

Замечания

None.

TFTIntern_IntStatus

Прототип

function TFTIntern_IntStatus(bMasked : byte);

Описание

Эта функция возвращает статус прерывания для контроллера LCD. Можно вернуть исходный статус прерывания или состояние прерываний, которые могут отражаться на процессоре.

Параметры
  • bMasked: состояние исходного прерывания (0) или состояние маскированного прерывания (1).
Возвращает

Возвращает текущий статус прерывания как логического ИЛИ любого из следующих:

Value Описание.
_TFT_INTERN_INT_DMA_DONE Это прерывание указывает, что передача LIDD DMA завершена.
_TFT_INTERN_INT_RASTER_FRAME_DONE Это прерывание указывает, что кадр растрового режима завершен.
_TFT_INTERN_INT_SYNC_LOST Это прерывание указывает на то, что синхронизация кадров была потеряна.
_TFT_INTERN_INT_AC_BIAS_CNT This interrupt is valid for passive matrix panels only and indicates that that AC bias transition counter has decremented to zero.
The counter, set by a call to TFTIntern_RasterACBiasIntCountSet, is reloaded but remains disabled until this interrupt is cleared.
_TFT_INTERN_INT_UNDERFLOW Это прерывание указывает на то, что произошло переполнение данных. Внутренний FIFO был пуст, когда логика вывода попыталась прочитать данные для отправки на дисплей.
_TFT_INTERN_INT_PAL_LOAD Это прерывание указывает, что палитра цветов загружена.
_TFT_INTERN_INT_EOF0 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 0.
_TFT_INTERN_INT_EOF1 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 1.
Требует

Ничего.

Замечания

None.

TFTIntern_IntClear

Прототип

function TFTIntern_IntClear(bMasked : dword) : byte;

Описание

The specified LCD controller interrupt sources are cleared so that they no longer assert.
This function must be called in the interrupt handler to keep the interrupt from being triggered again immediately upon exit.

Параметры
  • ui32IntFlags: e bit mask of the interrupt sources to be enabled; it is the logical OR of any of the following :
    Value Описание.
    _TFT_INTERN_INT_DMA_DONE Это прерывание указывает, что передача LIDD DMA завершена.
    _TFT_INTERN_INT_RASTER_FRAME_DONE Это прерывание указывает, что кадр растрового режима завершен.
    _TFT_INTERN_INT_SYNC_LOST Это прерывание указывает на то, что синхронизация кадров была потеряна.
    _TFT_INTERN_INT_AC_BIAS_CNT This interrupt is valid for passive matrix panels only and indicates that that AC bias transition counter has decremented to zero.
    The counter, set by a call to TFTIntern_RasterACBiasIntCountSet, is reloaded but remains disabled until this interrupt is cleared.
    _TFT_INTERN_INT_UNDERFLOW Это прерывание указывает на то, что произошло переполнение данных. Внутренний FIFO был пуст, когда логика вывода попыталась прочитать данные для отправки на дисплей.
    _TFT_INTERN_INT_PAL_LOAD Это прерывание указывает, что палитра цветов загружена.
    _TFT_INTERN_INT_EOF0 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 0.
    _TFT_INTERN_INT_EOF1 Это прерывание указывает на то, что сигнализируется необработанный Конец кадра 1.
Возвращает
  • 0 - в случае успеха.
  • 1 - если произошла ошибка.
Требует

Ничего.

Замечания

Поскольку в процессоре Cortex-M имеется буфер записи, может потребоваться несколько тактовых циклов, прежде чем источник прерывания будет фактически очищен.
Поэтому рекомендуется, чтобы источник прерывания был удален в начале обработчика прерываний (в отличие от самого последнего действия)
чтобы избежать возврата из обработчика прерываний до того, как источник прерывания фактически очищен.

Несоблюдение этого требования может привести к немедленному вводу обработчика прерываний (поскольку контроллер прерываний все еще видит, что источник прерывания утверждается).

TFTIntern_SetMemoryStartAddr

Прототип

procedure TFTIntern_SetMemoryStartAddr(Aptr : ^word);

Описание

Эта функция устанавливает начальный адрес графической ОЗУ.

Параметры
  • Aptr: указатель на начальный адрес графической ОЗУ.
Возвращает

Ничего.

Требует

Ничего.

Замечания

None.

TFTIntern_Move_Cursor

Прототип

procedure TFTIntern_Move_Cursor(x : word; y : word);

Описание

Эта функция перемещает курсор на нужный пиксель в графическом ОЗУ.

Параметры
  • x: x-положение оси x желаемого пикселя в графическом ОЗУ.
  • y: y-положение оси x желаемого пикселя в графическом ОЗУ.
Возвращает

Ничего.

Требует

Ничего.

Замечания

None.

TFTIntern_Get_Cursor

Прототип

procedure TFTIntern_Get_Cursor(_x : ^word; _y : ^word);

Описание

Эта функция извлекает позицию курсора из графической ОЗУ.

Параметры
  • _x: указатель на позицию x.
  • _y: указатель на позицию y.
Возвращает

Ничего.

Требует

Ничего.

Замечания

None.

TFTIntern_SetDefaultMode

Прототип

procedure TFTIntern_SetDefaultMode();

Описание

Эта функция устанавливает отображение в режиме по умолчанию (вращение нуля градусов).

Параметры

None.

Возвращает

Ничего.

Требует

Ничего.

Замечания

None.

TFTIntern_SetDisplaySize

Прототип

function TFTIntern_SetDisplaySize(DispWidth, DispHeight : word) : byte;

Описание

Эта функция устанавливает размер экрана (ширина и высота).

Параметры
  • DispWidth: ширина экрана (в пикселях).
  • DispHeight: высота дисплея (в пикселях).
Возвращает
  • 1 - если ширина выходит за пределы диапазона (больше 2048 или ноль).
  • 2 - если heght находится вне диапазона (больше 2048, или ноль).
Требует

Ничего.

Замечания

None.

TFTIntern_CurrentDisplayWidth

Прототип

function TFTIntern_CurrentDisplayWidth() : word;

Описание

Эта функция получает текущую ширину экрана.

Параметры

None.

Возвращает

Текущая ширина дисплея.

Требует

Ничего.

Замечания

Нет.

TFTIntern_CurrentDisplayHeight

Прототип

function TFTIntern_CurrentDisplayHeight() : word;

Описание

Эта функция получает текущую высоту дисплея.

Параметры

Нет.

Возвращает

Текущая высота дисплея.

Требует

Ничего.

Замечания

Нет.

TFTIntern_Rotate

Прототип

procedure TFTIntern_Rotate(rotate : byte);

Возвращает

Ничего.

Описание

Поворачивает TFT дисплей.

Параметры :

  • rotate: parameter for rotating display. Valid values :
    Value Описание.
    _TFT_INTERN_ROTATE_0 Поворот на 0 градусов
    _TFT_INTERN_ROTATE_90 Поворот на 90 градусов
    _TFT_INTERN_ROTATE_180 Поворот на 180 градусов
    _TFT_INTERN_ROTATE_270 Поворот на 270 градусов
Требует

Ничего.

Пример
// Разворачиваем TFT дисплей на 180 градусов
TFTIntern_Rotate(_TFT_INTERN_ROTATE_180);

TFTIntern_Set_Ext_Buffer

Прототип

procedure TFTIntern_Set_Ext_Buffer(getExtDataPtr : ^TTFTIntern_Get_Ext_Data_Ptr);

Возвращает

Ничего.

Описание

Функция устанавливает указатель на пользовательскую функцию, которая управляет внешним ресурсом.

Параметры:

  • TTFTIntern_Get_Ext_Data_Ptr - указатель на пользовательскую функцию.

Прототип функции пользователя должен быть в следующем формате: function External(offset : dword; count : dword; var num : dword) : ^byte;

Параметры, используемые в функции, имеют следующие значения:

  • offset - смещение от начала ресурса, откуда запрашиваются данные.
  • count - запрошенное количество байтов.
  • num - переменная для хранения возвращаемого количества байтов (меньше или равна количеству полученных байтов).
Требует

Ничего.

Пример
TFTIntern_Set_Ext_Buffer(ReadExternalBuffer);

TFTIntern_Set_Font

Прототип

procedure TFTIntern_Set_Font(const activeFont : ^byte; font_color : word; font_orientation : byte);

Возвращает

Ничего.

Описание

Устанавливает шрифт, его цвет и ориентацию шрифта.

Параметры:

  • activeFont: желаемый шрифт. В настоящее время толькоTFT_16bit_defaultFont (Tahoma14x16) поддерживается.
  • font_color: sets font color:
  • Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

  • font_orientation:устанавливает ориентацию шрифта:

    Value Описание
    FO_HORIZONTAL_Intern Горизонтальная ориентация
    FO_VERTICAL_Intern Вертикальная ориентация
    FO_VERTICAL_COLUMN_Intern Вертикальная ориентация столбца

Требует

Ничего.

Пример
TFTIntern_Set_Font(@TFTIntern_defaultFont, CL_BLACK_Intern, FO_HORIZONTAL_Intern);

TFTIntern_Set_Ext_Font

Прототип

procedure TFTIntern_Set_Ext_Font(activeFont : dword; font_color : word; font_orientation : byte);

Возвращает

Ничего.

Описание

Устанавливает шрифт, его цвет и ориентацию шрифта. Шрифт находится во внешнем ресурсе

Параметры:

  • activeFont: желаемый шрифт. Этот параметр представляет адрес во внешнем ресурсе, откуда начинаются данные шрифта.
  • font_color: устанавливает цвет шрифта:

  • Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

  • font_orientation: устанавливает ориентацию шрифта:

    Value Описание
    FO_HORIZONTAL_Intern Горизонтальная ориентация
    FO_VERTICAL_Intern Вертикальная ориентация
    FO_VERTICAL_COLUMN_Intern Вертикальная ориентация столбца

Требует

Ничего.

Пример
TFTIntern_Set_Ext_Font(173296, CL_BLACK_Intern, FO_HORIZONTAL_Intern);

TFTIntern_Write_Char

Прототип

procedure TFTIntern_Write_Char(ch, x, y : word);

Возвращает

Ничего.

Описание

Отображает символ на TFT в координатах (x, y).

  • c: символ, который должен быть отображен.
  • x: позиция символа по оси x.
  • y: позиция символа по оси y.
Требует

Ничего.

Пример
TFTIntern_Write_Char('A',22,23);

TFTIntern_Write_Text

Прототип

procedure TFTIntern_Write_Text(var text : string; x, y : word);

Возвращает

Ничего.

Описание

Отображает текст на TFT в координатах (x, y).

Параметры:

  • text: текст, который будет отображен.
  • x: позиция начала текста по координате x.
  • y: позиция начала текста по координате y.
Требует

Ничего.

Пример
TFTIntern_Write_Text("TFT LIBRARY DEMO, WELCOME !", 0, 0);	

TFTIntern_Fill_Screen

Прототип

procedure TFTIntern_Fill_Screen(color : word);

Возвращает

Ничего.

Описание

Заполняет блок памяти экрана заданным цветом.

Параметры:

  • color: цвет заполнения:
  • Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

Требует

Ничего.

Пример
TFTIntern_Fill_Screen(CL_BLACK_Intern);

TFTIntern_Dot

Прототип

procedure TFTIntern_Dot(x, y : integer; color : word);

Возвращает

Ничего.

Описание

Рисует точку на TFT в координатах (x, y).

Параметры:

  • x: позиция точки по оси x.
  • y: позиция точки по оси y.
  • color: параметр цвета. Допустимые значения:
  • Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

Требует

Ничего.

Пример
TFTIntern_Dot(50, 50, CL_BLACK_Intern);

TFTIntern_Set_Pen

Прототип

procedure TFTIntern_Set_Pen(pen_color : word; pen_width : byte);

Возвращает

Ничего.

Описание

Устанавливает параметр цвета и толщины для рисования линий, кругов и прямоугольников.

Параметры :

  • pen_color: устанавливает цвет.

    Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

  • pen_width: устанавливает толщину.

Требует

Ничего.

Пример
TFTIntern_Set_Pen(CL_BLACK_Intern, 10);

TFTIntern_Set_Brush

Прототип

procedure TFTIntern_Set_Brush(brush_enabled : byte; brush_color : word; gradient_enabled, gradient_orientation : byte; gradient_color_from, gradient_color_to : word);

Возвращает

Ничего.

Описание

Устанавливает цвет и градиент, которые будут использоваться для заполнения кругов или прямоугольников.

Параметры :

  • brush_enabled: enable brush fill.

    Value Описание
    1 Активировать кисть
    0 Деактивировать кисть

  • brush_color:устанавливает цвет заливки.

    Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

  • gradient_enabled: управление режимом градиентной заливки

    Value Описание
    1 Активировать градиентную заливку
    0 Деактивировать градиентную заливку

  • gradient_orientation: устанавливает ориентацию градиента:

    Value Описание
    _TFT_INTERN_LEFT_TO_RIGHT Ориентация слева направо
    _TFT_INTERN_TOP_TO_BOTTOM Ориентация сверху вниз

  • gradient_color_from: устанавливает цвет начала градиента.

    Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

  • gradient_color_to:устанавливает цвет конца градиента.

    Value Описание
    CL_AQUA_Intern Цвет аква
    CL_BLACK_Intern Черный цвет
    CL_BLUE_Intern Синий цвет
    CL_FUCHSIA_Intern Цвет фуксии
    CL_GRAY_Intern Серый цвет
    CL_GREEN_Intern Зеленый цвет
    CL_LIME_Intern Цвет лайма
    CL_MAROON_Intern Темно-бордовый цвет
    CL_NAVY_Intern Темно-синий цвет
    CL_OLIVE_Intern Оливковый цвет
    CL_PURPLE_Intern Фиолетовый цвет
    CL_RED_Intern Красный цвет
    CL_SILVER_Intern Серебристый цвет
    CL_TEAL_Intern Цвет тика
    CL_WHITE_Intern Белый цвет
    CL_YELLOW_Intern Желтый цвет

Требует

Ничего.

Пример
// Включаем градиент от черного до белого цвета, ориентация влево-вправо
TFTIntern_Set_Brush(0, 0, 1, _TFT_INTERN_LEFT_TO_RIGHT, CL_BLACK_Intern, CL_WHITE_Intern);

TFTIntern_Line

Прототип

procedure TFTIntern_Line(x1, y1, x2, y2 : integer);

Возвращает

Ничего.

Описание

Рисует прямую линию из точки с координатами (x1, y1) в точку с координатами (x2, y2).

Параметры:

  • x1: x-координата начала прямой линии.
  • y1: y-координата начала прямой линии.
  • x2: x-координата конца прямой линии.
  • y2: y-координата конца прямой линии.
Требует

Ничего.

Пример
TFTIntern_Line(0, 0, 239, 127);

TFTIntern_H_Line

Прототип

procedure TFTIntern_H_Line(x_start, x_end, y_pos : integer);

Возвращает

Ничего.

Описание

Рисует горизонтальную линию на TFT.

Параметры:

  • x_start: x-координата начала линии.
  • x_end: x-координата конца линии.
  • y_pos: y-координата горизонтальной линии.

Требует

Ничего.

Пример
// Рисуем горизонтальную линию между точками (10,20) и (50,20)
TFTIntern_H_Line(10, 50, 20);

TFTIntern_V_Line

Прототип

procedure TFTIntern_V_Line(y_start, y_end, x_pos : integer);

Возвращает

Ничего.

Описание

Рисует вертикальную линию на TFT.

Параметры:

  • y_start: y-координата начала линии.
  • y_end: y-координата конца линии.
  • x_pos: x-координата вертикальной линии.

Требует

Ничего.

Пример
// Рисуем вертикальную линию между точками (10,5) и (10,25)
TFTIntern_V_Line(5, 25, 10);

TFTIntern_Rectangle

Прототип

procedure TFTIntern_Rectangle(x_upper_left, y_upper_left, x_bottom_right, y_bottom_right : integer);

Возвращает

Ничего.

Описание

Рисует прямоугольник на TFT.

Параметры:

  • x_upper_left: x-координата верхнего левого угла прямоугольника.
  • y_upper_left: y-координата верхнего левого угла прямоугольника.
  • x_bottom_right: x-координата нижнего правого угла прямоугольника.
  • y_bottom_right: y-координата нижнего правого угла прямоугольника.

Требует

Ничего.

Пример
TFTIntern_Rectangle(20, 20, 219, 107);

TFTIntern_Rectangle_Round_Edges

Прототип

procedure TFTIntern_Rectangle_Round_Edges(x_upper_left, y_upper_left, x_bottom_right, y_bottom_right, round_radius : word);

Возвращает

Ничего.

Описание

Рисует скругленный прямоугольник на TFT.

Параметры:

  • x_upper_left: x-координата верхнего левого угла прямоугольника.
  • y_upper_left: y-координата верхнего левого угла прямоугольника.
  • x_bottom_right: x-координата нижнего правого угла прямоугольника.
  • y_bottom_right: y-координата нижнего правого угла прямоугольника.
  • round_radius: радиус скругления

Требует

Ничего.

Пример
TFTIntern_Rectangle_Round_Edges(20, 20, 219, 107, 12);

TFTIntern_Circle

Прототип

procedure TFTIntern_Circle(x_center, y_center, radius : integer);

Возвращает

Ничего.

Описание

Рисует круг на TFT.

Параметры:

  • x: x-координата центра окружности.
  • y: y-координата центра окружности.
  • r: радиус

Требует

Ничего.

Пример
TFTIntern_Circle(120, 64, 110);

TFTIntern_Image

Прототип

procedure TFTIntern_Image(left, top : word; image : ^const byte; stretch : byte);

Возвращает

Ничего.

Описание

Отображает изображение в нужном месте.

Параметры:

  • left: положение левого края изображения.
  • top: положение верхнего края изображения.
  • image: изображение, которое будет отображаться. Этот параметр представляет адрес во внешнем ресурсе, откуда начинаются данные изображения.
  • stretch: растяжение изображение на заданный множитель (если 2, то удваивает изображение).
Требует

Ничего.

Пример
TFTIntern_Image(0, 0, @image, 1);

TFTIntern_Ext_Image

Прототип

procedure TFTIntern_Ext_Image(left, top : word; image : dword; stretch : byte);

Возвращает

Ничего.

Описание

Отображает изображение с внешнего ресурса по желаемому адресу.

Параметры:

  • left: положение левого края изображения.
  • top: положение верхнего края изображения.
  • image: изображение, которое будет отображаться. Этот параметр представляет адрес во внешнем ресурсе, откуда начинаются данные изображения.
  • stretch: растяжение изображение на заданный множитель (если 2, то удваивает изображение).
Требует

Ничего.

Пример
TFTIntern_Image(0, 0, 153608, 1);

TFTIntern_Partial_Image

Прототип

procedure TFTIntern_Partial_Imag(left, top, width, height : word; image : ^const byte; stretch : byte);

Возвращает

Ничего.

Описание

Отображает частичную область изображения в нужном месте.

Параметры:

  • left: левая координата изображения..
  • top: верхняя координата изображения.
  • width: желаемая ширина изображения.
  • height: желаемая высота изображения.
  • image: изображение, которое будет отображаться. Этот параметр представляет адрес во внешнем ресурсе, с укоторогоначинаются данные изображения.
  • stretch: растяжение изображение на заданный множитель (если 2, то удваивает изображение).

Требует

Ничего.

Пример
// Рисуем 10x15 часть изображения, начиная с верхнего левого угла по координате (10,12) 
TFTIntern_Partial_Image(10, 12, 10, 15, image, 1);

TFTIntern_Ext_Partial_Image

Прототип

procedure TFTIntern_Ext_Partial_Image(left, top, width, height : word; image : dword; stretch : byte) ;

Возвращает

Ничего.

Описание

Отображает частичную область изображения, расположенную на внешнем ресурсе, в нужном месте экрана.

Параметры:

  • left: левая координата изображения.
  • top: верхняя координата изображения.
  • width: желаемая ширина изображения.
  • height: желаемая высота изображения.
  • image: изображение, которое будет отображаться. Этот параметр представляет адрес во внешнем ресурсе, с укоторогоначинаются данные изображения.
  • stretch: растяжение изображение на заданный множитель (если 2, то удваивает изображение).

Требует

Ничего.

Пример
TFTIntern_Ext_Partial_Image(159,0,160,120,image,1);

TFTIntern_Image_Jpeg

Прототип

function TFTIntern_Image_Jpeg(left, top : word; image : ^const byte) : byte;

Возвращает
  • 0 - если изображение загружено и отображается успешно.
  • 1 - если произошла ошибка.
Описание

Отображает изображение JPEG в нужном месте.

Параметры:

  • left: левая координата изображения.
  • top: верхняя координата изображения.
  • image: изображение, которое будет отображаться. Растровый массив находится в памяти.
Требует

Ничего.

Пример
TFTIntern_Image_Jpeg(0, 0, image);

TFTIntern_RGBToColor16bit

Прототип

function TFTIntern_RGBToColor16bit(rgb_red, rgb_green, rgb_blue : byte) : word;

Возвращает

Возвращает значение цвета в следующем битовом порядке: 5 бит красный, 6 бит зеленый и 5 бит синий цвет.

Описание

Преобразует формат 5: 6: 5 RGB в формат истинного цвета.

Параметры:

  • rgb_red: красный компонент изображения.
  • rgb_green: зеленый компонент изображения.
  • rgb_blue: синий компонент изображения.
Требует

Ничего.

Пример
color16 = TFTIntern_RGBToColor16bit(150, 193, 65);

TFTIntern_Color16bitToRGB

Прототип

procedure TFTIntern_Color16bitToRGB(color : word; rgb_red, rgb_green, rgb_blue : ^byte);

Возвращает

Ничего.

Описание

Преобразует истинный цвет в формат 5: 6: 5 RGB.

Параметры:

  • color: истинный цвет, который нужно преобразовать.
  • rgb_red: красный компонент входного цвета.
  • rgb_green: зеленый компонент входного цвета.
  • rgb_blue: синий компонент входного цвета.
Требует

Ничего.

Пример
TFTIntern_Color16bitToRGB(start_color, @red_start, @green_start, @blue_start);
Want more Примерs and libraries? 
Find them on