The purpose of this page is to demonstrate how to interface a Cypress RF transceiver with a host microcontroller and to provide example code for the host microcontroller.
The PSoC family of devices from Cypress provide a huge amount of flexibility to the designer. They integrate configurable analog blocks with programmable digital blocks and interface them with a CPU and Flash memory. PSoC devices come in a wide variety of flavors and packages. So far, there has been 5 different PSoC device families introduced by Cypress. Cypress provides a free GUI-based software IDE for PSoC 1 devices called PSoC Designer. For all other PSoC devices, PSoC Creator is used. PSoC Creator is also GUI-based, but has a completely revamped appearance.
PSoC 1 was the first generation PSoC family from Cypress. It uses a proprietary M8C core and provides the designer flexibility with programmable digital and analog peripherals.
The next PSoC technology released was PSoC 3. PSoC 3 devices use a pipelined, high performance 8051 CPU along with programmable peripherals and flash memory. Most instructions are considered single-cycle on this CPU.
PSoC 5 / 5LP:
PSoC 5 was the first PSoC device to implement an ARM-Cortex CPU. This device family integrated an ARM Cortex-M3 CPU with configurable analog and digital blocks. PSoC 5LP was released shortly after PSoC 5 and has higher precision analog. PSoC 5LP is lower power than standard PSoC 5 devices, but utilizes the same CPU.
PSoC 4 is the latest PSoC technology released by Cypress. It implements an ARM Cortex-M0 CPU along with Cypress's programmable hardware IP.
CYRF7936 is a 2.4GHz ISM radio from Cypress. It is configured and controlled through a SPI interface by a host microcontroller. Cypress provides a proprietary star-network protocol software stack called CyFi. However, this is currently only supported on PSoC 1 devices. This page provides an example of setting up basic RF communication using these radios with PSoC 3 devices. The code written for this project could also be implemented on PSoC 4 or 5LP devices. However it does not comply with the CyFi Star Network protocol.
This project will demonstrate how to interface a CYRF7936 radio with a host microcontroller. For this project, the microcontroller used was a PSoC 3 device (CY8C3866AXI-040). The PSoC 3 FirstTouch Starter Kit (CY8CKIT-003) was used as the development platform for the microcontroller. The AW24MCHL-H2 module from Artaflex provides an easy way to interface the RF transceiver with the FirstTouch Starter Kit and includes an on-board chip antenna. For this project, a 2-node network was setup between the two boards, demonstrating simple point to point communication with the 7936 transceiver. One microcontroller was loaded with a Transmit application, while the second was loaded with a Receive application.
CY8CKIT-003: PSoC 3 FirstTouch Starter Kit
The two example projects provided below were loaded to the PSoC 3 device on each CY8CKIT-003 board. A character LCD was interfaced to each board to view the results. One node acts as a transmitter and one as a receiver. The receiver is constantly listening for frames from the transmitter. The transmitter uses a simple 8-bit counter as the sample data. It transmits the data, waits 250 ms, increments the counter, and transmits again. Download the following zip files to view example code for this project.
The purpose of this page was to provide example code for a simple point to point network. It does not achieve many of the functions available in the CyFi Star Network Protocol Stack which is meant for PSoC 1 devices. I hope this page was useful to you. I challenge you to add functionality to the devices. Try adding TX and RX functionality to each board. Maybe setup a UART connection for communication with a PC. If you have any questions, comments, or interesting breakthroughs, I would love to hear about them. You can contact me at firstname.lastname@example.org. I hope you enjoy experimenting with Cypress's RF devices!