Welcome to my Getting Started with Cheep (4$) Cypress PSoC 4 - CY8CKIT-049 prototyping platform Series. In this post I will talk about setting up the Environment for PSoC4- CY8CKIT-049 42xx prototyping platform, getting and setting up the platform itself. From next posts onwards I will talk about getting started with programming . Let's begin
1.1. What is the Cypress PSoC 4 ?
The simplest answer is that PSoC is a programmable system on chip i.e. you can think of it as a mixture of microcontroller, FPGA and configurable analog :). That simply means that you now have the ability to configure the design to the hardware level (somewhat !) and as with other MCU's you can anyways continue with the software configuration.
To understand this more clearly, let's assume you have a project where you need to configure an analog temperature sensor at pin 12 of your device. and by mistake/due to old design's you made a board in which pin 2 of your MCU was connected to temperature sensor !! Now, the only way you can correct the mistake is wither my manually doing the rework on the board (which is messy) or by making a new board (Lots of money gone !!). With PSoC you simply just have to reroute the temperature sensor signal to the appropriate pin (i.e. pin 2) and voila you are done. No hazels what so ever.
For more information on Cypress PSoC please visit:
1.2. What is PSoC4 Prototyping board ?
Cypress PSoC4 CY8CKIT-049 42xx/41xx are Cypress's Lowest cost and moderately featured DevBoards. These Boards cost about 4$ and are well suited for learning Embedded Systems, using them in one of your designs or evaluation of PSoC4 42xx/41xx SoC . These kit's are based on Cypress's PSoC4 technology, i.e. Programmable System on Chip (4 signifies the family : in this case 4 means the base MCU is ARM Cortex M0) and has everything you need to get started.
For More information about the Kit's please visit :
1.3. Why is it good for beginners, hobbyist, Makers and educators?
There are couple of reasons why I would prefer these kits for beginners, hobbyist, makers and educators.
1. Easy to understand and Learn : The PSoC Creator IDE has a drag and drop based interface, with easy graphical configuration of the Modules. For Example, if you want to control a GPIO , Just drag the Pin Module to the workspace and configure the module graphically.
2. Flexibility of use : As discussed previously, if you have loads of connections or wiring and you want to change one or two of them, no problem just do a Software Fix. PSoC Creator gives a pin map of the PSoC you are using, You can drag the function you have created and manually map it to the pin you want, which is really neat
3. Bread board Friendly : We can solder some headers and can prototype directly using breadboard.
4. Free USB to UART/I2C/SPI Tool : The Cypress (CY7C6521x) USB converter on the board can do USB to UART, USB to I2C and USB to SPI all of that can be configured using the USB configuration tool on PC. Connections are made using the GPIO header provided on the USB to UART section of the kit.
5. Can implement Digital Logic using the on board UDB : Cypress PSoC4 42xx series of SoC has four UDB's (Universal Digital blocks) which can be reconfigured to make some digital connections. like clock divider for Blink LED Application, etc.
6. Can also do a cut down version of verilog : Another awesome feature of PSoC is, as it has the UDB's you can make use of that and implement some small hardware Glue logic to the Software you write. For this feature you can create your own custom module and try and instead of C backend you can do Verilog coding making use of the UDB's.
7. Can create your own Module Blocks : It's almost obvious that you wont always find a module for each and every sensor. Worry not, you can create you'r own custom module and share it with the community to use it.
8. No need of learning the API's as API's are auto generated for each module : A very neat feature of PSoC Creator is the API's structure and Datasheets for each API's. So if you need to use ADC in your design, you dont have to go through a 1000 pages datasheet searching for ADc and the through another 1000 page API set documentations. You can click the datasheet component and will get all the relevant information of the component right there, including all the API calls and references. Further, the API's are auto generated like "beans" in Code warrior, so if you have your LED named with "RED" in your design, you's API's will be like RED_Write(1);
Well I will leave the conclusion of the above question to you :P.
Please visit Section 2 of the Blog for more here
Gurinder Singh Gill