You are here

Getting Started with I2C in PSoC1 | Cypress Semiconductor

Getting Started with I2C in PSoC1

The Cypress PSoC 1 product family offers several choices for implementing I2C in a design. These choices come in the form of user modules (UMs) that are found in the PSoC Designer IDE. The I2C communication itself is handled by a dedicated I2C hardware (HW) block which removes much of the I2C processing burden from the CPU, freeing the CPU to do more important real-time tasks.

Figure 1: I2C Hardware Block

The HW block is a serial to parallel processor designed to interface the PSoC 1 to an I2C bus. The HW block takes the burden off the CPU by providing support for HW detection of I2C status and generation of I2C signals.

EzI2Cs

The first user module to consider is the EzI2Cs UM. The EzI2Cs UM operates exclusively as a slave; there is no master version of EzI2C. The EzI2Cs UM is a firmware layer on top of the I2C hardware block. It requires minimal user knowledge of how the I2C bus works by allowing you to setup a data structure in user code, and exposing that structure to the I2C master. All I2C transactions happen in the background through interrupts. You need not worry about any of the I2C functionality once the user module is started in the main code.

I2CHW

This user module is a firmware layer on top of the I2C HW bloc and can be used as a slave, master, or multi-master slave. Unlike EzI2Cs, this user module requires more designer interaction. Status bits must be checked to see if an I2C transaction occurred. The main firmware also needs to check for error conditions on a transaction. Finally, user code must clear the status bits that are set.

For a detailed overview of the I2C block in PSoC1 and example usage of the user modules described above, please refer application note AN50987 - Getting Started with I2C in PSoC® 1.

Comments

Bob Marlowe's picture

Recently I have solved a common problem with PSoC-designs: Fine-tuning
I programmed an I2C slave interface into my projects together with a menu of displayable/changeable items.
When a I2C master with a display and a keyboard is attached, the Items on the slave can be changed and written to EEProm. Now I am able to change parameters on a system as part of installation.

I think, a project like this could be a good tutorial.

what do you think about this

Regards, Bob

jordanss123 jordanss123's picture

fake Yeezy boost 350 80% Off www.yeezy350find.com

 

ahmedraza1001_2805156's picture

Mark Hastings, I am very happy that you have shared this top essay service information with all of us today. Hoping that you continue to do the same thing.

ahmedraza1001_2805156's picture

I was amazed to see the great quality writing in this article here. I showed this to my Top Review Stars mates as well and they said the same thing about this article.

ahmedraza1001_2805156's picture

Find the best essays on is my friend's profile page. Secrets To Dog Training

ahmedraza1001_2805156's picture

I should say only that its awesome! The blog is informational and always produce amazing things. Stroke of Genius System

mubeenshahjahan1_2824456's picture

The newsletter presented by them shows me too much details and I like it the best. I think that the author should also know how to buy a 360 Camera because he’s too good in these things. This will help him and this is the best thing to do.

ahmedraza1001_2805156's picture

I simply want to tell you that I am new to weblog and definitely liked this blog site. Very likely I’m going to bookmark your blog . You absolutely have wonderful stories. Cheers for sharing with us your blog. The Penguin Method

mubeenshahjahan1_2824456's picture

Just admiring your work and wondering how you managed this blog so well. It’s so remarkable that I can't afford to not go through this valuable information whenever I surf the internet! mobile strike cheat codes

mubeenshahjahan1_2824456's picture

This is exceptionally instructive substance and composed well for a change. It's pleasant to see that a few individuals still see how to compose a quality post! http://www.tntservices.com

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.