Carte à clic IqRF
Carte à clic IqRF
Key Features
- Bande RF sélectionnable 868 / 916 MHz, plusieurs canaux
- Basé sur l'émetteur-récepteur RF DCTR-76DA d'IQRF
- Connectivité sans fil point à point ou réseau, télémétrie, AMR (relevé automatique de compteurs), WSN (réseau de capteurs sans fil), automatisation des bâtiments, contrôle de l'éclairage public, etc.
- mikroBUS : interfaces SPI, UART, analogiques et GPIO
Le Click Board™ IQRF est basé sur l'émetteur-récepteur RF DCTR-76DA, fonctionnant sur la fréquence 868/916 MHz. Le Click Board™ est conçu pour fonctionner sur une alimentation 3,3 V. Il communique avec le microcontrôleur cible via une interface SPI ou UART, avec des fonctionnalités supplémentaires fournies par les broches suivantes sur la ligne MikroBUS : AN, RST, PWM, INT.
The IQRF Click Board™ is based on the DCTR-76DA RF transceiver, operating in the 868/916 MHz frequency. The click is designed to run on a 3.3V power supply. It communicates with the target microcontroller over SPI or UART interface, with additional functionality provided by the following pins on the mikroBUS™ line: AN, RST, PWM, INT.
Module Features
DTCR-76DA is an RF transceiver operating in the 868/916 MHz license-free ISM (Industry, Scientific, and Medical) frequency band. Its highly integrated ready-to-use design containing MCU, RF circuitry, serial EEPROM and optional onboard antenna requires no external components.
How Does The IQRF Click Board™ Work?
RF transceiver modules DCTR-72DA fit in the SIM connector. They are fully programmable under IQRF OS operating system and allow to utilize hardware profiles under DPA framework.
To upload application codes in DCTRs and configure DCTR parameters, CK-USB-04A kit is intended. When the application is uploaded to the IQRF it can be put in microBUS™ socket and communicate with it with MCU.
Specifications
Type | Sub-1 GHz Transceievers |
Applications | Point-to-point or network wireless connectivity, Telemetry, AMR (automatic meter reading), WSN (wireless sensor network), Building automation, Street lighting control, etc. |
On-board modules | DCTR-76DA RF transceiver |
Key Features | Selectable RF band 868 / 916 MHz, multiple channels |
Interface | Analog,GPIO,SPI,UART |
Compatibility | mikroBUS |
Click board size | S (28.6 x 25.4 mm) |
Input Voltage | 3.3V |
Pinout
This table shows how the pinout on the IQRF Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
Analog pin | ADC | 1 | AN | PWM | 16 | DIN | General I/O pin |
General I/O pin | GPIO | 2 | RST | INT | 15 | INT | Interrupt |
SPI enable | SPI_CS | 3 | CS | TX | 14 | TXD | UART transmit |
SPI Clock | SPI_SCK | 4 | SCK | RX | 13 | RXD | UART receive |
SPI Master Input Slave Output | SPI_MISO | 5 | MISO | SCL | 12 | NC | |
SPI Master Output Slave Input | SPI_MOSI | 6 | MOSI | SDA | 11 | NC | |
Power supply | +3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
Software Support
Code examples for the IQRF Click Board™, written for MikroElektronika hardware and compilers are available on Libstock.
Code Snippet
This code snippet contains receiver and transmitter code for the IQRF Click Board™ working with the Thermo K Click Board™. When in transmit mode, MCU reads the temperature from Thermo K and if a certain threshold has been reached, byte data is sent to IQRF board via UART communication. Then, IQRF is broadcasting that byte to every other IQRF within range. Every Other IQRF click board is receiving that byte via RF communication and sending data to his local MCU via UART. Every event is displayed on easyTFT.
01 while(1) 02 { 03 #ifdef __TX__ 04 05 status = &Read_MCP9600_Status; 06 Temp_Data_Ready = (status & 0x40); 07 08 temp = Read_Temperature(); 09 10 if (Temp_Data_Ready) 11 { // Check is Temperature Data ready 12 sprintf(txt, "%2.1f C", temp); // Format Temperature Data and store it to txt 13 res = strcmp(txt,old_txt); // Compare old_txt and txt 14 15 if(res != 0) // If old_txt and txt are not equal 16 { 17 updateLabel(txt, 135, 90, lab1); // Write temperature value on display 18 strcpy(old_txt,txt); // Copy txt to old_txt string array 19 } 20 } 21 22 if (temp <= LOW_TEMP_POINT) // If low temperature point has been reached 23 { 24 if (!low_point_reached) 25 { 26 UART3_Write_Text("L"); // Send byte via UART 27 } 28 low_point_reached = true; 29 30 } 31 else if (temp >= HIGH_TEMP_POINT) // If high temperature point has been reached 32 { 33 if(!high_point_reached) 34 { 35 UART3_Write_Text("H"); // Send byte via UART 36 } 37 high_point_reached = true; 38 39 } 40 else 41 { 42 low_point_reached = false; 43 high_point_reached = false; 44 } 45 Delay_ms(500); 46 #endif 47 48 #ifdef __RX__ 49 50 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_BLACK, FO_HORIZONTAL); 51 52 // Writing warnings on display 53 if(high_point_reached) 54 { 55 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_RED, FO_HORIZONTAL); 56 high_point_reached = false; 57 TFT_Write_Text("HIGH ", 130, 100); 58 Delay_ms(2000); 59 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_WHITE, FO_HORIZONTAL); 60 TFT_Write_Text("HIGH ", 130, 100); 61 } 62 if(low_point_reached) 63 { 64 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_BLUE, FO_HORIZONTAL); 65 low_point_reached = false; 66 TFT_Write_Text("LOW", 130, 100); 67 Delay_ms(2000); 68 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_WHITE, FO_HORIZONTAL); 69 TFT_Write_Text("LOW ", 130, 100); 70 } 71 #endif 72 } 73 74 }
Software Support
Code examples for the IQRF Click Board™, written for MikroElektronika hardware and compilers are available on Libstock.
Code Snippet
This code snippet contains receiver and transmitter code for the IQRF Click Board™ working with the Thermo K Click Board™. When in transmit mode, MCU reads the temperature from Thermo K and if a certain threshold has been reached, byte data is sent to IQRF board via UART communication. Then, IQRF is broadcasting that byte to every other IQRF within range. Every Other IQRF click board is receiving that byte via RF communication and sending data to his local MCU via UART. Every event is displayed on easyTFT.
01 while(1) 02 { 03 #ifdef __TX__ 04 05 status = &Read_MCP9600_Status; 06 Temp_Data_Ready = (status & 0x40); 07 08 temp = Read_Temperature(); 09 10 if (Temp_Data_Ready) 11 { // Check is Temperature Data ready 12 sprintf(txt, "%2.1f C", temp); // Format Temperature Data and store it to txt 13 res = strcmp(txt,old_txt); // Compare old_txt and txt 14 15 if(res != 0) // If old_txt and txt are not equal 16 { 17 updateLabel(txt, 135, 90, lab1); // Write temperature value on display 18 strcpy(old_txt,txt); // Copy txt to old_txt string array 19 } 20 } 21 22 if (temp <= LOW_TEMP_POINT) // If low temperature point has been reached 23 { 24 if (!low_point_reached) 25 { 26 UART3_Write_Text("L"); // Send byte via UART 27 } 28 low_point_reached = true; 29 30 } 31 else if (temp >= HIGH_TEMP_POINT) // If high temperature point has been reached 32 { 33 if(!high_point_reached) 34 { 35 UART3_Write_Text("H"); // Send byte via UART 36 } 37 high_point_reached = true; 38 39 } 40 else 41 { 42 low_point_reached = false; 43 high_point_reached = false; 44 } 45 Delay_ms(500); 46 #endif 47 48 #ifdef __RX__ 49 50 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_BLACK, FO_HORIZONTAL); 51 52 // Writing warnings on display 53 if(high_point_reached) 54 { 55 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_RED, FO_HORIZONTAL); 56 high_point_reached = false; 57 TFT_Write_Text("HIGH ", 130, 100); 58 Delay_ms(2000); 59 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_WHITE, FO_HORIZONTAL); 60 TFT_Write_Text("HIGH ", 130, 100); 61 } 62 if(low_point_reached) 63 { 64 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_BLUE, FO_HORIZONTAL); 65 low_point_reached = false; 66 TFT_Write_Text("LOW", 130, 100); 67 Delay_ms(2000); 68 TFT_Set_Font(&HandelGothic_BT21x22_Regular, CL_WHITE, FO_HORIZONTAL); 69 TFT_Write_Text("LOW ", 130, 100); 70 } 71 #endif 72 } 73 74 }
Carte à clic IqRF
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.