Difference between revisions of "Component: I2C Free (Peripheral CAL)"

From Flowcode Help
Jump to navigationJump to search
Line 20: Line 20:
  
 
==Detailed description==
 
==Detailed description==
 +
 +
  
  
Line 38: Line 40:
  
 
==Examples==
 
==Examples==
 +
 +
  
  
Line 58: Line 62:
  
  
==Downloadable macro reference==
+
==Macro reference==
  
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"

Revision as of 14:11, 20 January 2023

Author Matrix Ltd
Version 1.3
Category Peripheral CAL


I2C Free component

Chip Abstraction Layer for Two Wire I2C Communications

Component Source Code

Please click here for the component source code: FC_Comp_Source_I2C_Free.fcfx

Detailed description

No detailed description exists yet for this component

Examples

Example showing how to build a component using a CAL component Using CAL Components.


Macro reference

Fc9-comp-macro.png Slave_Uninit
Uninitialise the Slave 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png GetValue
Get the Named property value.  
Fc9-string-icon.png - STRING Name
 
Fc9-string-icon.png - STRING Return


Fc9-comp-macro.png Master_Stop
Output a Master Stop 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Slave_Init
Initialise the Slave with the given Address, or range of Addresses. Only address bits that have a corresponding bit set in the Mask will be compared with the incoming bus address. 
Fc9-u8-icon.png - BYTE Address
7 Bit Address of this device (Bit 0 is ignored) 
Fc9-u8-icon.png - BYTE Mask
Bit mask used to compare addresses 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Master_Uninit
Uninitialise the Master 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Slave_Status
Returns the Slave Status. Bit 0 = 1 Indicates address/data byte available in the buffer to read Bit 5 = 1 Indicates that the last byte received or transmitted was data (else address)  
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png GetConsoleHandle
Obtains the CAL console handle 
Fc9-h32-icon.png - HANDLE Return


Fc9-comp-macro.png Slave_TxByte
Send a data byte, returns Ack/Nak from Master 0=Ack=More, 1=Nak=Last 
Fc9-u8-icon.png - BYTE Data
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png Slave_RxByte
Returns the data received, and sends either Ack or Nak Set parameter Last as: 1=Last=Nak, 0=Ack=More 
Fc9-u8-icon.png - BYTE Last
Sends Ack if 0, else Nak 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SetValue
Change Named property to new Value. If "CHANNEL" the ports will be also updated from the fcd  
Fc9-string-icon.png - STRING Name
 
Fc9-string-icon.png - STRING Value
port value as string 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Master_Init
Initialise the Master 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Master_Start
Output a Master Start sequence 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Master_TxByte
Send a data byte 
Fc9-u8-icon.png - BYTE Data
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png Master_Restart
Output a Master Restart sequence 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Master_RxByte
Returns a received data byte. Set Last=0 if there is following more Master_RxByte macros Set Last=1 if this is the last Master_RxByte and it is followed with Master_Stop. If Last = 1 the I2C bus will be presented with a 'Nack' condition. 
Fc9-u8-icon.png - BYTE Last
Range: 0-1 - 0 = Not the last byte to receive, 1 = last byte to receive 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png GetList
returns Named property List as filter string  
Fc9-string-icon.png - STRING Name
 
Fc9-string-icon.png - STRING Return



Property reference

Fc9-prop-icon.png Properties
Fc9-type-16-icon.png Channel
Channel selection 
Fc9-type-5-icon.png SDA
Pin used for SDA (data signal) 
Fc9-type-5-icon.png SCL
Pin used for SCL (clock signal) 
Fc9-type-16-icon.png Baud Select
Baud rate option selector 
Fc9-type-14-icon.png Baud Rate
Baud rate to be used 
Fc9-type-16-icon.png Slew Rate Control
Slew Rate Control Enabled or Disabled 
Fc9-type-16-icon.png SMBus Inputs
When Enabled input logic thresholds are compliant with SMBus specification 
Fc9-type-7-icon.png Stop Delay
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.  
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