Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
FT8XX reference API. More...
#include <stdint.h>
#include <zephyr/drivers/misc/ft8xx/ft8xx_copro.h>
#include <zephyr/drivers/misc/ft8xx/ft8xx_common.h>
#include <zephyr/drivers/misc/ft8xx/ft8xx_dl.h>
#include <zephyr/drivers/misc/ft8xx/ft8xx_memory.h>
Go to the source code of this file.
Macros | |
#define | OPT_3D FT8XX_OPT_3D |
Co-processor widget is drawn in 3D effect. | |
#define | OPT_RGB565 FT8XX_OPT_RGB565 |
Co-processor option to decode the JPEG image to RGB565 format. | |
#define | OPT_MONO FT8XX_OPT_MONO |
Co-processor option to decode the JPEG image to L8 format, i.e., monochrome. | |
#define | OPT_NODL FT8XX_OPT_NODL |
No display list commands generated for bitmap decoded from JPEG image. | |
#define | OPT_FLAT FT8XX_OPT_FLAT |
Co-processor widget is drawn without 3D effect. | |
#define | OPT_SIGNED FT8XX_OPT_SIGNED |
The number is treated as 32 bit signed integer. | |
#define | OPT_CENTERX FT8XX_OPT_CENTERX |
Co-processor widget centers horizontally. | |
#define | OPT_CENTERY FT8XX_OPT_CENTERY |
Co-processor widget centers vertically. | |
#define | OPT_CENTER FT8XX_OPT_CENTER |
Co-processor widget centers horizontally and vertically. | |
#define | OPT_RIGHTX FT8XX_OPT_RIGHTX |
The label on the Coprocessor widget is right justified. | |
#define | OPT_NOBACK FT8XX_OPT_NOBACK |
Co-processor widget has no background drawn. | |
#define | OPT_NOTICKS FT8XX_OPT_NOTICKS |
Co-processor clock widget is drawn without hour ticks. | |
#define | OPT_NOHM FT8XX_OPT_NOHM |
Co-processor clock widget is drawn without hour and minutes hands, only seconds hand is drawn. | |
#define | OPT_NOPOINTER FT8XX_OPT_NOPOINTER |
The Co-processor gauge has no pointer. | |
#define | OPT_NOSECS FT8XX_OPT_NOSECS |
Co-processor clock widget is drawn without seconds hand. | |
#define | OPT_NOHANDS FT8XX_OPT_NOHANDS |
Co-processor clock widget is drawn without hour, minutes and seconds hands. | |
#define | BITMAPS FT8XX_BITMAPS |
Rectangular pixel arrays, in various color formats. | |
#define | POINTS FT8XX_POINTS |
Anti-aliased points, point radius is 1-256 pixels. | |
#define | LINES FT8XX_LINES |
Anti-aliased lines, with width from 0 to 4095 1/16th of pixel units. | |
#define | LINE_STRIP FT8XX_LINE_STRIP |
Anti-aliased lines, connected head-to-tail. | |
#define | EDGE_STRIP_R FT8XX_EDGE_STRIP_R |
Edge strips for right. | |
#define | EDGE_STRIP_L FT8XX_EDGE_STRIP_L |
Edge strips for left. | |
#define | EDGE_STRIP_A FT8XX_EDGE_STRIP_A |
Edge strips for above. | |
#define | EDGE_STRIP_B FT8XX_EDGE_STRIP_B |
Edge strips for below. | |
#define | RECTS FT8XX_RECTS |
Round-cornered rectangles, curvature of the corners can be adjusted using LINE_WIDTH. | |
#define | BEGIN(prim) FT8XX_BEGIN(prim) |
Begin drawing a graphics primitive. | |
#define | CLEAR(c, s, t) FT8XX_CLEAR(c, s, t) |
Clear buffers to preset values. | |
#define | CLEAR_COLOR_RGB(red, green, blue) FT8XX_CLEAR_COLOR_RGB(red, green, blue) |
Specify clear values for red, green and blue channels. | |
#define | COLOR_RGB(red, green, blue) FT8XX_COLOR_RGB(red, green, blue) |
Set the current color red, green and blue. | |
#define | DISPLAY() FT8XX_DISPLAY() |
End the display list. | |
#define | END() FT8XX_END() |
End drawing a graphics primitive. | |
#define | LINE_WIDTH(width) FT8XX_LINE_WIDTH(width) |
Specify the width of lines to be drawn with primitive LINES. | |
#define | TAG(s) FT8XX_TAG(s) |
Attach the tag value for the following graphics objects. | |
#define | VERTEX2F(x, y) FT8XX_VERTEX2F(x, y) |
Start the operation of graphics primitives at the specified coordinate. | |
#define | VERTEX2II(x, y, handle, cell) FT8XX_VERTEX2II(x, y, handle, cell) |
Start the operation of graphics primitive at the specified coordinates. | |
Enumerations | |
enum | ft8xx_memory_map_t { RAM_G = FT810_RAM_G , RAM_DL = FT810_RAM_DL , REG_ = FT810_REG_ , RAM_CMD = FT810_RAM_CMD } |
Main parts of FT810 memory map. More... | |
enum | ft8xx_register_address_t { REG_TRIM = FT810_REG_TRIM , REG_ID = FT810_REG_ID , REG_FRAMES = FT810_REG_FRAMES , REG_CLOCK = FT810_REG_CLOCK , REG_FREQUENCY = FT810_REG_FREQUENCY , REG_RENDERMODE = FT810_REG_RENDERMODE , REG_SNAPY = FT810_REG_SNAPY , REG_SNAPSHOT = FT810_REG_SNAPSHOT , REG_CPURESET = FT810_REG_CPURESET , REG_TAP_CRC = FT810_REG_TAP_CRC , REG_TAP_MASK = FT810_REG_TAP_MASK , REG_HCYCLE = FT810_REG_HCYCLE , REG_HOFFSET = FT810_REG_HOFFSET , REG_HSIZE = FT810_REG_HSIZE , REG_HSYNC0 = FT810_REG_HSYNC0 , REG_HSYNC1 = FT810_REG_HSYNC1 , REG_VCYCLE = FT810_REG_VCYCLE , REG_VOFFSET = FT810_REG_VOFFSET , REG_VSIZE = FT810_REG_VSIZE , REG_VSYNC0 = FT810_REG_VSYNC0 , REG_VSYNC1 = FT810_REG_VSYNC1 , REG_DLSWAP = FT810_REG_DLSWAP , REG_ROTATE = FT810_REG_ROTATE , REG_OUTBITS = FT810_REG_OUTBITS , REG_DITHER = FT810_REG_DITHER , REG_SWIZZLE = FT810_REG_SWIZZLE , REG_CSPREAD = FT810_REG_CSPREAD , REG_PCLK_POL = FT810_REG_PCLK_POL , REG_PCLK = FT810_REG_PCLK , REG_TAG_X = FT810_REG_TAG_X , REG_TAG_Y = FT810_REG_TAG_Y , REG_TAG = FT810_REG_TAG , REG_VOL_PB = FT810_REG_VOL_PB , REG_VOL_SOUND = FT810_REG_VOL_SOUND , REG_SOUND = FT810_REG_SOUND , REG_PLAY = FT810_REG_PLAY , REG_GPIO_DIR = FT810_REG_GPIO_DIR , REG_GPIO = FT810_REG_GPIO , REG_GPIOX_DIR = FT810_REG_GPIOX_DIR , REG_GPIOX = FT810_REG_GPIOX , REG_INT_FLAGS = FT810_REG_INT_FLAGS , REG_INT_EN = FT810_REG_INT_EN , REG_INT_MASK = FT810_REG_INT_MASK , REG_PLAYBACK_START = FT810_REG_PLAYBACK_START , REG_PLAYBACK_LENGTH = FT810_REG_PLAYBACK_LENGTH , REG_PLAYBACK_READPTR = FT810_REG_PLAYBACK_READPTR , REG_PLAYBACK_FREQ = FT810_REG_PLAYBACK_FREQ , REG_PLAYBACK_FORMAT = FT810_REG_PLAYBACK_FORMAT , REG_PLAYBACK_LOOP = FT810_REG_PLAYBACK_LOOP , REG_PLAYBACK_PLAY = FT810_REG_PLAYBACK_PLAY , REG_PWM_HZ = FT810_REG_PWM_HZ , REG_PWM_DUTY = FT810_REG_PWM_DUTY , REG_CMD_READ = FT810_REG_CMD_READ , REG_CMD_WRITE = FT810_REG_CMD_WRITE , REG_CMD_DL = FT810_REG_CMD_DL , REG_TOUCH_MODE = FT810_REG_TOUCH_MODE , REG_TOUCH_ADC_MODE = FT810_REG_TOUCH_ADC_MODE , REG_TOUCH_CHARGE = FT810_REG_TOUCH_CHARGE , REG_TOUCH_SETTLE = FT810_REG_TOUCH_SETTLE , REG_TOUCH_OVERSAMPLE = FT810_REG_TOUCH_OVERSAMPLE , REG_TOUCH_RZTHRESH = FT810_REG_TOUCH_RZTHRESH , REG_TOUCH_RAW_XY = FT810_REG_TOUCH_RAW_XY , REG_TOUCH_RZ = FT810_REG_TOUCH_RZ , REG_TOUCH_SCREEN_XY = FT810_REG_TOUCH_SCREEN_XY , REG_TOUCH_TAG_XY = FT810_REG_TOUCH_TAG_XY , REG_TOUCH_TAG = FT810_REG_TOUCH_TAG , REG_TOUCH_TRANSFORM_A = FT810_REG_TOUCH_TRANSFORM_A , REG_TOUCH_TRANSFORM_B = FT810_REG_TOUCH_TRANSFORM_B , REG_TOUCH_TRANSFORM_C = FT810_REG_TOUCH_TRANSFORM_C , REG_TOUCH_TRANSFORM_D = FT810_REG_TOUCH_TRANSFORM_D , REG_TOUCH_TRANSFORM_E = FT810_REG_TOUCH_TRANSFORM_E , REG_TOUCH_TRANSFORM_F = FT810_REG_TOUCH_TRANSFORM_F , REG_TOUCH_CONFIG = FT810_REG_TOUCH_CONFIG , REG_SPI_WIDTH = FT810_REG_SPI_WIDTH , REG_TOUCH_DIRECT_XY = FT810_REG_TOUCH_DIRECT_XY , REG_TOUCH_DIRECT_Z1Z2 = FT810_REG_TOUCH_DIRECT_Z1Z2 , REG_CMDB_SPACE = FT810_REG_CMDB_SPACE , REG_CMDB_WRITE = FT810_REG_CMDB_WRITE , REG_TRACKER = FT810_REG_TRACKER , REG_TRACKER1 = FT810_REG_TRACKER1 , REG_TRACKER2 = FT810_REG_TRACKER2 , REG_TRACKER3 = FT810_REG_TRACKER3 , REG_TRACKER4 = FT810_REG_TRACKER4 , REG_MEDIAFIFO_READ = FT810_REG_MEDIAFIFO_READ , REG_MEDIAFIFO_WRITE = FT810_REG_MEDIAFIFO_WRITE } |
FT810 register addresses. More... | |
Functions | |
static void | wr8 (uint32_t address, uint8_t data) |
Write 1 byte (8 bits) to FT8xx memory. | |
static void | wr16 (uint32_t address, uint16_t data) |
Write 2 bytes (16 bits) to FT8xx memory. | |
static void | wr32 (uint32_t address, uint32_t data) |
Write 4 bytes (32 bits) to FT8xx memory. | |
static uint8_t | rd8 (uint32_t address) |
Read 1 byte (8 bits) from FT8xx memory. | |
static uint16_t | rd16 (uint32_t address) |
Read 2 bytes (16 bits) from FT8xx memory. | |
static uint32_t | rd32 (uint32_t address) |
Read 4 bytes (32 bits) from FT8xx memory. | |
static void | cmd (uint32_t command) |
Execute a display list command by co-processor engine. | |
static void | cmd_dlstart (void) |
Start a new display list. | |
static void | cmd_swap (void) |
Swap the current display list. | |
static void | cmd_text (int16_t x, int16_t y, int16_t font, uint16_t options, const char *s) |
Draw text. | |
static void | cmd_number (int16_t x, int16_t y, int16_t font, uint16_t options, int32_t n) |
Draw a decimal number. | |
static void | cmd_calibrate (uint32_t *result) |
Execute the touch screen calibration routine. | |
FT8XX reference API.