Difference between revisions of "Component: FTDI (FT800) (FT800) (Misc)"

From Flowcode Help
Jump to navigationJump to search
Line 17: Line 17:
 
==Component Source Code==
 
==Component Source Code==
  
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_FTDI-FT800.fcfx FC_Comp_Source_FTDI-FT800.fcfx]
+
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/FTDI-FT800.fcfx FC_Comp_Source_temp/FTDI-FT800.fcfx]
  
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_FTDI-FT800.fcfx FC_Comp_Source_FTDI-FT800.fcfx]
+
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/FTDI-FT800.fcfx FC_Comp_Source_temp/FTDI-FT800.fcfx]
  
 
==Detailed description==
 
==Detailed description==
Line 72: Line 72:
  
 
''<span style="color:red;">No additional examples</span>''
 
''<span style="color:red;">No additional examples</span>''
 +
 +
  
  
Line 78: Line 80:
  
 
==Macro reference==
 
==Macro reference==
 +
 +
===CommandWrite===
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CommandWrite'''
 +
|-
 +
| colspan="2" | Sends FT800 command&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Command
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
  
 
===IncrementCommandOffset===
 
===IncrementCommandOffset===
Line 99: Line 120:
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
===Initialise===
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
 +
|-
 +
| colspan="2" | System initialization routines.  Executed once on reset. Returns 0 if device not detected or 1 if device is correctly initialised.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}
Line 122: Line 157:
  
  
===MemRead8===
+
===MemRead32===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemRead8'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemRead32'''
 
|-
 
|-
| colspan="2" | Reads a single data byte from the FT800 internal address space&nbsp;
+
| colspan="2" | Reads a single unsigned long from the FT800 internal address space&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 136: Line 171:
 
| colspan="2" | &nbsp;
 
| colspan="2" | &nbsp;
 
|-
 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
+
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u32-icon.png]] - ULONG
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}
  
  
===MemRead32===
+
===MemRead8===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemRead32'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemRead8'''
 
|-
 
|-
| colspan="2" | Reads a single unsigned long from the FT800 internal address space&nbsp;
+
| colspan="2" | Reads a single data byte from the FT800 internal address space&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 155: Line 190:
 
| colspan="2" | &nbsp;
 
| colspan="2" | &nbsp;
 
|-
 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u32-icon.png]] - ULONG
+
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}
Line 184: Line 219:
  
  
===MemWrite8===
+
===MemWrite32===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemWrite8'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemWrite32'''
 
|-
 
|-
| colspan="2" | Writes a byte value to the FT800 internal address space&nbsp;
+
| colspan="2" | Writes a unsigned long value to the FT800 internal address space&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 198: Line 233:
 
| colspan="2" | &nbsp;
 
| colspan="2" | &nbsp;
 
|-
 
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
+
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
 
| width="90%" | Data
 
| width="90%" | Data
 
|-
 
|-
Line 208: Line 243:
  
  
===CommandWrite===
+
===MemWrite8===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CommandWrite'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemWrite8'''
 
|-
 
|-
| colspan="2" | Sends FT800 command&nbsp;
+
| colspan="2" | Writes a byte value to the FT800 internal address space&nbsp;
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Command
 
|-
 
| colspan="2" | &nbsp;
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
===MemWrite32===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MemWrite32'''
 
|-
 
| colspan="2" | Writes a unsigned long value to the FT800 internal address space&nbsp;
 
 
|-
 
|-
 
|-
 
|-
Line 241: Line 257:
 
| colspan="2" | &nbsp;
 
| colspan="2" | &nbsp;
 
|-
 
|-
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
+
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Data
 
| width="90%" | Data
 
|-
 
|-
Line 247: Line 263:
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
===Initialise===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
 
|-
 
| colspan="2" | System initialization routines.  Executed once on reset. Returns 0 if device not detected or 1 if device is correctly initialised.&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}

Revision as of 12:00, 3 February 2023

Author MatrixTSL
Version 2.0
Category Misc


FTDI (FT800) component

The FT800 provides a powerful feature set in a small package to create dynamic HMI interfaces. The device supports line by line graphics rendering to 1/16 of a pixel on displays with resolution up to 512 x 512 with 262K colours. The chip includes a touch controller for sensing touch feedback from a TFT display with a resistive touch panel as well as a sound synthesizer and audio playback with a PWM output to drive a speaker.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_temp/FTDI-FT800.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_temp/FTDI-FT800.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples




Macro reference

CommandWrite

Fc9-comp-macro.png CommandWrite
Sends FT800 command 
Fc9-u8-icon.png - BYTE Command
 
Fc9-void-icon.png - VOID Return


IncrementCommandOffset

Fc9-comp-macro.png IncrementCommandOffset
Adds commandSize to the currentOffset. Checks for 4K ring-buffer offset roll-over  
Fc9-u16-icon.png - UINT currentOffset
graphics processor command list pointer 
Fc9-u8-icon.png - BYTE commandSize
number of bytes to increment the offset 
Fc9-u16-icon.png - UINT Return


Initialise

Fc9-comp-macro.png Initialise
System initialization routines. Executed once on reset. Returns 0 if device not detected or 1 if device is correctly initialised. 
Fc9-u8-icon.png - BYTE Return


MemRead16

Fc9-comp-macro.png MemRead16
Reads a single unsigned int from the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u16-icon.png - UINT Return


MemRead32

Fc9-comp-macro.png MemRead32
Reads a single unsigned long from the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u32-icon.png - ULONG Return


MemRead8

Fc9-comp-macro.png MemRead8
Reads a single data byte from the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u8-icon.png - BYTE Return


MemWrite16

Fc9-comp-macro.png MemWrite16
Writes a unsigned int value to the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u16-icon.png - UINT Data
 
Fc9-void-icon.png - VOID Return


MemWrite32

Fc9-comp-macro.png MemWrite32
Writes a unsigned long value to the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u32-icon.png - ULONG Data
 
Fc9-void-icon.png - VOID Return


MemWrite8

Fc9-comp-macro.png MemWrite8
Writes a byte value to the FT800 internal address space 
Fc9-u32-icon.png - ULONG Address
 
Fc9-u8-icon.png - BYTE Data
 
Fc9-void-icon.png - VOID Return



Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png SPI Properties
Fc9-type-16-icon.png Channel
SPI Channel selector 
Fc9-type-16-icon.png Prescale
Prescale option selector 
Fc9-type-5-icon.png MOSI
SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode. 
Fc9-type-5-icon.png MISO
SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode. 
Fc9-type-5-icon.png CLK
SPI Clock Pin CLK - The Clock signal is driven by the SPI master. 
Fc9-conn-icon.png Pin Connections
Fc9-type-5-icon.png Power Pin
 
Fc9-type-5-icon.png CS Pin
 
Fc9-conn-icon.png Display Properties
Fc9-type-21-icon.png Width
Active width of LCD display 
Fc9-type-21-icon.png Height
Active height of LCD display 
Fc9-type-21-icon.png HCycle
Total number of clocks per line 
Fc9-type-21-icon.png HOffset
Start of active line 
Fc9-type-21-icon.png HSync0
Start of horizontal sync pulse 
Fc9-type-21-icon.png HSync1
End of horizontal sync pulse 
Fc9-type-21-icon.png VCycle
Total number of lines per screen 
Fc9-type-21-icon.png VOffset
Start of active screen 
Fc9-type-21-icon.png VSync0
Start of vertical sync pulse 
Fc9-type-21-icon.png VSync1
End of vertical sync pulse 
Fc9-type-21-icon.png PixelClock
Pixel Clock  
Fc9-type-21-icon.png Swizzle
Define RGB output pins 
Fc9-type-21-icon.png Clock Polarity
Define active edge of PCLK  
Fc9-conn-icon.png Simulation
Fc9-type-7-icon.png Scope Traces
Selects if the scope traces are automatically generated or not 
Fc9-type-7-icon.png Console Data
Selects if the console data is automatically generated or not 
Fc9-type-16-icon.png API