MP Type | I2C DO External interrupt |
OS Type | Arduino & Free-RTOS |
I2C | register1 read register2 read/write |
DO | register1,register2 clear control |
External interrupt | IC output ( MPU sleep deprivation ) |
Diagnostics | SP – CP register2 write check , register1 clear check MP I2C ACK/NACK |
Specification document of OSS-EC 00000251
If you would like to download this document, please register as a user. User Registration
If you are already registered and logged in as a user, please download the following file.
BSL-00000251
Software Specifications
In this section, we will use the OSS-EC I2C component ( ABLIC S-35710M ) as an example.
Intended use scenarios
Shifts to MPU Sleep mode when condition A is satisfied, generates an INT interrupt after the wakeup time elapses, and releases MPU Sleep mode.
summary
The OSS-EC architecture for the S-35710M is shown in ( fig.1), in accordance with the hardware architecture.
The State flow is shown in ( fig.2 ). Condition A is satisfied if Wakeup_req = iSet.
The API is shown in ( fig.3 ).
The Sequence of PCMP for Command is shown in ( fig.4 ).
Data table
File
Blue label characters are data related to user define.




Data table
#define Label | Value | Data contents |
iPCMP_cyc | 1000U//portTICK_PERIOD_MS | PCMP Function call cycle 1000[ms] |
iErr_times | 3U | Number of error judgments 3[times] |
iCom_retry_num | 3U | I2C communication retry 3[times] |
iWakeUp_time | 10U | Wakeup time 10[s] |
iDia_WakeUp_time | 2U | Diagnostic Wakeup time 2[s] |
iI2C_SDA | 20* | I2C SDA Pin |
iI2C_SCL | 21* | I2C SCL Pin |
iDO_RST | 5* | /RST |
iINT_wakeup | 2* | INT |
iI2C_frequency | 400000 | Frequency 400[kHz] |
* sample test board : Arduino MEGA2560[R3]
File ( Arduino & Free-RTOS C++)
main.ino | application source code file |
pcmp.cpp | I2C Component source code file |
prc.cpp | Process source code file |
pcmp.h | I2C Component header file |
oss-ec.h | OSS-EC header file |
ic.h | IC Number header file |
ic_setting.cpp | ic setting data file |
user_setting.h | user setting header file |
layer_if.h | Layer interface header file |
prc.h | Process header file |
S35710M.cpp | S-35710M const table file |
S35719M.h | S-35710M header file |
i2c_bus_recover_wrapper.cpp | I2C bus recover code file |
i2c_bus_recover.h | I2C bus recover header file |