Skip to main content
Knowledgebase
Home
Renesas Electronics Europe - Knowledgebase

How to set the value of "0x01." instead of "0x03"?

Latest Updated:03/20/2017

Question:

When the IICF0 value is set to "0x01" (to enable operation and to generate a start condition after the stop condition is detected), processing gets caught up during the master communication start function's start condition check, and I cannot start communications.
However, this operation is OK if the IICF0 value is set to "0x03" instead of "0x01."

Answer:

At the controller stage, there is no information to indicate whether or not the I2C bus can be used in its initial state.
Consequently, in conventional controllers, once the controller is started, a stop condition is detected to indicate when the bus can be used (i.e., when a start condition can be issued).
Therefore, if a higher-level program is used to detect whether or not the bus is available and issue a stop condition, then a start condition can be subsequently issued to enable use of the I2C bus.
Such is the case when the IICF0 value is "0x01."

On the other hand, new devices such as V850/ES products have an added function that enables start conditions to be issued without detecting the stop condition.
Use this function (which can be used when the IICF0 value is "0x03") to immediately issue a start condition and enable use of the I2C bus.
Suitable Products
V850 Family