Component: RF ISM (EB063, MRF49XA) (Wireless): Difference between revisions
Appearance
m Text replacement - "class="wikitable" style="width:60%; background-color:#FFFFFF;"" to "class="mtx-class-macrotable wikitable"" |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 92: | Line 92: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ActivateRXMode''' | ||
|- | |- | ||
| colspan="2" | Enables the receiver interface, allowing data to be received. The transmitter interface is automatically disabled. | | colspan="2" | Enables the receiver interface, allowing data to be received. The transmitter interface is automatically disabled. | ||
| Line 106: | Line 106: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ActivateTXMode''' | ||
|- | |- | ||
| colspan="2" | Enables the transmitter interface, allowing data to be sent. The receiver interface is automatically disabled. | | colspan="2" | Enables the transmitter interface, allowing data to be sent. The receiver interface is automatically disabled. | ||
| Line 120: | Line 120: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''CheckBuffer''' | ||
|- | |- | ||
| colspan="2" | Checks for incoming data for a specific period of time. Returns a value greater then 250 to indicate a failure. Returns the length of the incoming data buffer to indicate success. | | colspan="2" | Checks for incoming data for a specific period of time. Returns a value greater then 250 to indicate a failure. Returns the length of the incoming data buffer to indicate success. | ||
| Line 139: | Line 139: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''FSKRead''' | ||
|- | |- | ||
| colspan="2" | Reads the FSK (frequency shift key) data pin. | | colspan="2" | Reads the FSK (frequency shift key) data pin. | ||
| Line 153: | Line 153: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''FSKWrite''' | ||
|- | |- | ||
| colspan="2" | Writes to the FSK (frequency shift key) data pin. | | colspan="2" | Writes to the FSK (frequency shift key) data pin. | ||
| Line 172: | Line 172: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetBufferData''' | ||
|- | |- | ||
| colspan="2" | Returns a value from the incoming receive data buffer. | | colspan="2" | Returns a value from the incoming receive data buffer. | ||
| Line 191: | Line 191: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetDataCount''' | ||
|- | |- | ||
| colspan="2" | Returns the number of bytes in the received data buffer. | | colspan="2" | Returns the number of bytes in the received data buffer. | ||
| Line 205: | Line 205: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Initialise''' | ||
|- | |- | ||
| colspan="2" | Starts up and configures the RF module ready for use. The macro will return a value greater then 0 if the module has been started correctly, otherwise the macro will return a 0. | | colspan="2" | Starts up and configures the RF module ready for use. The macro will return a value greater then 0 if the module has been started correctly, otherwise the macro will return a 0. | ||
| Line 219: | Line 219: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''RXTune''' | ||
|- | |- | ||
| colspan="2" | Used to specify and adjust the RF receiver properties during runtime. | | colspan="2" | Used to specify and adjust the RF receiver properties during runtime. | ||
| Line 248: | Line 248: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadRXSignalStrength''' | ||
|- | |- | ||
| colspan="2" | Returns the current received signal strength. | | colspan="2" | Returns the current received signal strength. | ||
| Line 262: | Line 262: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveByte''' | ||
|- | |- | ||
| colspan="2" | Puts the RF module in data mode and attempts to receive a single byte from the RF connection. Only packets containing a single data byte will be accepted. | | colspan="2" | Puts the RF module in data mode and attempts to receive a single byte from the RF connection. Only packets containing a single data byte will be accepted. | ||
| Line 281: | Line 281: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveString''' | ||
|- | |- | ||
| colspan="2" | Puts the RF module in data mode and attempts to receive a string of bytes from the RF connection. | | colspan="2" | Puts the RF module in data mode and attempts to receive a string of bytes from the RF connection. | ||
| Line 305: | Line 305: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendBuffer''' | ||
|- | |- | ||
| colspan="2" | Sends the contents of the transmit buffer. | | colspan="2" | Sends the contents of the transmit buffer. | ||
| Line 324: | Line 324: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendByte''' | ||
|- | |- | ||
| colspan="2" | Puts the RF module in data mode and transmits a packet containing a single data byte through the RF connection. A packet consists of Sync information, Data and Checksum. | | colspan="2" | Puts the RF module in data mode and transmits a packet containing a single data byte through the RF connection. A packet consists of Sync information, Data and Checksum. | ||
| Line 343: | Line 343: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendString''' | ||
|- | |- | ||
| colspan="2" | Puts the RF module in data mode and transmits a packet containing the data string through the RF connection. A packet consists of Sync information, Data and Checksum. | | colspan="2" | Puts the RF module in data mode and transmits a packet containing the data string through the RF connection. A packet consists of Sync information, Data and Checksum. | ||
| Line 362: | Line 362: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetBufferData''' | ||
|- | |- | ||
| colspan="2" | Allows a value to be loaded into the transmit buffer, | | colspan="2" | Allows a value to be loaded into the transmit buffer, | ||
| Line 386: | Line 386: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetDataRate''' | ||
|- | |- | ||
| colspan="2" | Allows the RF data rate to be adjusted during runtime. | | colspan="2" | Allows the RF data rate to be adjusted during runtime. | ||
| Line 405: | Line 405: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetSyncPattern''' | ||
|- | |- | ||
| colspan="2" | Allows the sync pattern to be modified during runtime to allow for switching between several different RF connections. | | colspan="2" | Allows the sync pattern to be modified during runtime to allow for switching between several different RF connections. | ||
| Line 429: | Line 429: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''TXTune''' | ||
|- | |- | ||
| colspan="2" | Used to specify and adjust the RF transmitter properties during runtime. | | colspan="2" | Used to specify and adjust the RF transmitter properties during runtime. | ||
| Line 453: | Line 453: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Uninitialise''' | ||
|- | |- | ||
| colspan="2" | Powers down the RF module. The module must be re-initialised before it can be used again. | | colspan="2" | Powers down the RF module. The module must be re-initialised before it can be used again. | ||
| Line 467: | Line 467: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''UpdateCenterFrequency''' | ||
|- | |- | ||
| colspan="2" | Allows the RF center frequency to be adjusted during runtime to allow multiple RF channels to be scanned or multiplexed. | | colspan="2" | Allows the RF center frequency to be adjusted during runtime to allow multiple RF channels to be scanned or multiplexed. | ||
| Line 487: | Line 487: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Connections | ||
|- | |- | ||
|- | |- | ||
| Line 525: | Line 525: | ||
| colspan="2" | RF Mode selection pin | | colspan="2" | RF Mode selection pin | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | RF Settings | ||
|- | |- | ||
|- | |- | ||
| Line 584: | Line 584: | ||
| colspan="2" | Selects if an additional fixed sync byte is to be used. | | colspan="2" | Selects if an additional fixed sync byte is to be used. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Receiver Settings | ||
|- | |- | ||
|- | |- | ||
| Line 603: | Line 603: | ||
| colspan="2" | The signal to noise threshold used to control the sensitivity | | colspan="2" | The signal to noise threshold used to control the sensitivity | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Transmitter Settings | ||
|- | |- | ||
|- | |- | ||
| Line 617: | Line 617: | ||
| colspan="2" | The amount of power to use when transmitting | | colspan="2" | The amount of power to use when transmitting | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix Ltd. |
| Version | 2.0 |
| Category | Wireless |
RF ISM (EB063, MRF49XA) component
A simple RF-ISM communications module based on the Microchip Alpha MRF49XA device. Also available in the form of the EB063 RF E-block.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_RF-ISM.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_RF-ISM.fcfx
Detailed description
No detailed description exists yet for this component
Examples
The example attempts to send and receive data from a remote board. You will need two RF modules to allow the communications to work.
The example can be used to drive both ends of the RF communications as it will send out data but also print out any data received onto the LCD. Pins RA0 and RA1 can be used for diagnostics on the program.
RF Example
Macro reference
ActivateRXMode
| ActivateRXMode | |
| Enables the receiver interface, allowing data to be received. The transmitter interface is automatically disabled. | |
| Return | |
ActivateTXMode
| ActivateTXMode | |
| Enables the transmitter interface, allowing data to be sent. The receiver interface is automatically disabled. | |
| Return | |
CheckBuffer
FSKRead
| FSKRead | |
| Reads the FSK (frequency shift key) data pin. | |
| Return | |
FSKWrite
| FSKWrite | |
| Writes to the FSK (frequency shift key) data pin. | |
| State | |
| Return | |
GetBufferData
| GetBufferData | |
| Returns a value from the incoming receive data buffer. | |
| Index | |
| Specifies which position in the buffer to read data from | |
| Return | |
GetDataCount
| GetDataCount | |
| Returns the number of bytes in the received data buffer. | |
| Return | |
Initialise
RXTune
ReadRXSignalStrength
| ReadRXSignalStrength | |
| Returns the current received signal strength. | |
| Return | |
ReceiveByte
ReceiveString
SendBuffer
| SendBuffer | |
| Sends the contents of the transmit buffer. | |
| Count | |
| Specifies how many bytes to transfer from the transmit buffer | |
| Return | |
SendByte
SendString
SetBufferData
| SetBufferData | |
| Allows a value to be loaded into the transmit buffer, | |
| Index | |
| The current location in the transmit buffer starting from 0 | |
| Data | |
| The data value to pass | |
| Return | |
SetDataRate
| SetDataRate | |
| Allows the RF data rate to be adjusted during runtime. | |
| Rate | |
| Specifies the new data rate | |
| Return | |
SetSyncPattern
TXTune
Uninitialise
| Uninitialise | |
| Powers down the RF module. The module must be re-initialised before it can be used again. | |
| Return | |
UpdateCenterFrequency