PSoC Creator News and Information | Cypress
Learn how to make an iOS App using Xcode and Swift to control a robot using Bluetooth Low Energy (BLE) by watching our PSoC 4 BLE iOS App video series.
In this video training series you will learn how to connect and control an embedded system using an iPhone App with Bluetooth Smart. The videos provide step-by-step instructions on how to create ARM® Cortex®-M0 PSoC 4 BLE-based embedded system design projects and the iOS App project using Xcode and Swift.
This video series is designed for iOS App developers who want to learn how to control hardware devices using Bluetooth Smart and embedded systems developers who want to learn how to make their first iOS App to control their hardware or IoT device. The completed iOS App and Bluetooth Low Energy projects are available for download.
Watch the video series here: http://www.cypress.com/products/how-make-ios-app-control-robot-using-blu...
Have you ever used a microcontroller that restricts your choices of pins for every peripheral on the device? Have you ever found that you cannot set up your ADC the way you need it because it shares pins with another important peripheral? Have you even been forced to compromise the elegance of your solution just to make it “fit” into the device? At Cypress we hate stories like that!
The good news is that, since you are already reading this blog, you probably already know that PSoC devices offer plenty of flexible routing on-chip. Flexible routing almost eliminates the constraints on your pin choices, making it is possible to create the perfect pin-out for your board while utilizing the maximum possible functionality on your chosen device.
The new Guided Pin Selection feature in PSoC Creator 3.3 makes it really quick and easy to realize these benefits. The re-vamped pin editor helps you find the perfect pin allocation in three ways.
- Stops you from selecting pins that cannot support the functionality of the peripheral
- Warns you about inefficient selections (i.e. pin connections that work just fine but consume routing resources than you might want to use for other functions)
- Updates dynamically as selections are made that impact the available choices for the remaining pins
The editor displays pin suitability with an intuitive color-coding scheme (green pins are ideal choices, yellow pins are legal choices but consume more than the minimum routing resources, gray are not usable at all, and red are bad connections) that eliminates the trial and error process you may have endured with other microcontrollers.
The combination of flexible routing and guided pin selection removes the iterative and error-strewn nature of pin selection and ensures that figuring out which pins to use for a given peripheral need never be a problem again.
Cypress recently announced that its PSoC 4 BLE and PRoC BLE are the first single-mode solutions to achieve full-featured Bluetooth 4.2 qualification.
Development kits with these devices are now available to enable you to prototype using the new Bluetooth 4.2 features:
- CY5676A: PRoC BLE development kit with Bluetooth 4.2 radio
- CY8CKIT-143A: PSoC 4 BLE development kit with Bluetooth 4.2 radio
- CY5677: BLE-USB bridge to test and debug designs using Bluetooth 4.2
- Enhanced security with LE Secure Connections
- Power-efficient privacy with LE Privacy 1.2
- Up to 2.5x higher throughput with LE Data Length Extension
To buy the new development kits visit:
To download PSoC Creator 3.3 SP1 visit - www.cypress.com/PSoCCreator
Cypress's new PSoC and PRoC based Bluetooth Smart (BLE) modules combined with the Power Management IC (PMICs) can harvest energy from ambient light sources to create truly battery-less beacons!
Venturebeat covers Cypress's latest energy-harvesting solutions, featured in their Top-10 list at CES here: http://venturebeat.com/2016/01/09/the-deanbeat-the-10-best-technologies-...
Get started with Cypress's Solar-Powered IoT Kit here: http://www.cypress.com/documentation/development-kitsboards/s6sae101a00s...
I asked Mark Saunders to talk about a new feature in PSoC Creator 3.3, macro callbacks. Here's what he had to say.
Matt, people often ask me how to execute user code inside generated API functions without modifying the generated source code. It is usually a requirement when you are working with a third-party IDE, like Eclipse, and you want to keep "your" code (the application) and Cypress code (the component API) separate or when you maintain your source in a revision control system and need to know you have the right files checked in.
Cypress components already support merge regions, where you can write your own code directly in the generated files, but editing generated code is a little scary when you do not know exactly how the tool works. In PSoC Creator 3.3 we have introduced macro callbacks, and they allow you to inject code into the component API functions without editing the source files. It's an elegant solution to the problem that uses the C preprocessor to do macro substitutions inside the target functions.
In the component source code we have embedded callbacks and, if you have a component called "CapSense_1", they look like this in the CapSense_1_INT.c file.
#endif /* CapSense_1_ISR_ENTRY_CALLBACK */
To use this callback you just need to declare the macro and the function. PSoC Creator 3.3 puts a new header file in your projects called cyapicallbacks.h. That header is included in the generated source files automatically and so all you need to do is put your declaration into cyapicallbacks.h, as follows.
This macro will cause the CapSense_1_ISR_EntryCallback function call to be executed from the generated source. You have a lot of choice over how to implement that code. For example, if you just want to add a single line of code just use a function macro.
extern int isr_count;
#define CapSense_1_ISR_ENTRY_CALLBACK isr_count++;
There is no limit to the number of instructions in the macro and you can use the back slash character to concatenate multiple lines. Alternatively, you can call an actual function. To do that, simply prototype the function in cyapicallbacks.h and write the definition elsewhere (e.g. in main.c).
void CapSense_1_ISR_EntryCallback( void );
We are sprinkling macro callbacks liberally throughout our component code to give you plenty of flexibility in where you can insert your own code. One of the most important uses is with a real-time operation system (RTOS). Many RTOS support system calls from an ISR and perform task switching after all ISRs have completed execution. In order for this to work, the OS has to keep track of nested interrupts (and only do the task switching once they have all completed) and so most RTOS include ISR entry and exit routines that you "wrap around" your ISR code. All component ISRs now have entry and exit callbacks which makes working with an RTOS easier and gives you more flexibility with your interrupt priority selection.
If you have ever wanted to jam some of your own code into generated source please give macro callbacks a try and, if you devise an ingenious solution to a previously difficult problem, please let us know via firstname.lastname@example.org - we're always interested to hear about your experiences because it's a great source of ideas for making the PSoC experience even better.
- 1 of 38
- next ›
ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.
Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.