You are here

PSoC4 I2C ACK and NAK | Cypress Semiconductor


Summary: 0 Replies, Latest post by Bob Marlowe on 18 Mar 2014 02:31 AM PDT
Verified Answers: 0
Log in to post new comments.
user_1377889's picture
9307 posts

It took me more than a day to find a bug in my (yes, my!!) program, although I was already hinted to, but I've forgotten.

I took an old PSoC5 working I2C-program and adapted it to PSoC4 and I couldn't get it to work!!!

So to prevent you from falling into the same trap:

SCB_I2CMasterReadByte(acknNak) needsd an ACK for every red byte and a NAK for the last byte.

Datasheet says about acknNak: Nonzero sends ACK, zero sends NAK (as the name suggests) and reflects the same behaveour as for PSoC3 and 5.


acknNak = 0 sends an ACK, otherwise a NAK.

The internally #defined SCB_I2C_ACK_DATA and SCB_I2C_NAK_DATA are correct, but not mentioned in the datasheet.

So there are two problems:

1st the documentation is wrong

2nd the module's parameter value differs from PSoC4 to other modules,


A good target fo some corrections.



Log in to post new comments.