jerryscript-project / iotjs

Platform for Internet of Things with JavaScript http://www.iotjs.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Create mock linux platform implementation of peripheral modules

LaszloLango opened this issue · comments

The plan is to implement the platform dependent functions for each peripheral module to simulate the low level behavior. This way we can test the API of these modules. This can help us to catch errors before merging PRs.

  • ADC
    The following functions must be implemented:
    • void iotjs_adc_create_platform_data(iotjs_adc_t* adc)
    • void iotjs_adc_destroy_platform_data(iotjs_adc_platform_data_t* platform_data)
    • bool iotjs_adc_open(iotjs_adc_t* adc)
    • bool iotjs_adc_close(iotjs_adc_t* adc)
    • bool iotjs_adc_read(iotjs_adc_t* adc)
  • GPIO (#1775)
    The following functions must be implemented:
    • void iotjs_gpio_create_platform_data(iotjs_gpio_t* gpio)
    • void iotjs_gpio_destroy_platform_data(iotjs_gpio_platform_data_t* platform_data)
    • bool iotjs_gpio_open(iotjs_gpio_t* gpio)
    • bool iotjs_gpio_write(iotjs_gpio_t* gpio)
    • bool iotjs_gpio_read(iotjs_gpio_t* gpio)
    • bool iotjs_gpio_close(iotjs_gpio_t* gpio)
    • bool iotjs_gpio_set_direction(iotjs_gpio_t* gpio)
  • I2C (#1806)
    • void iotjs_i2c_create_platform_data(iotjs_i2c_t* i2c)
    • void iotjs_i2c_destroy_platform_data(iotjs_i2c_platform_data_t* platform_data)
    • bool iotjs_i2c_open(iotjs_i2c_t* i2c)
    • bool iotjs_i2c_write(iotjs_i2c_t* i2c)
    • bool iotjs_i2c_read(iotjs_i2c_t* i2c)
    • bool iotjs_i2c_close(iotjs_i2c_t* i2c)
  • PWM (#1882)
    • void iotjs_pwm_create_platform_data(iotjs_pwm_t* pwm)
    • void iotjs_pwm_destroy_platform_data(iotjs_pwm_platform_data_t* platform_data)
    • bool iotjs_pwm_open(iotjs_pwm_t* pwm)
    • bool iotjs_pwm_set_period(iotjs_pwm_t* pwm)
    • bool iotjs_pwm_set_dutycycle(iotjs_pwm_t* pwm)
    • bool iotjs_pwm_set_enable(iotjs_pwm_t* pwm)
    • bool iotjs_pwm_close(iotjs_pwm_t* pwm)
  • SPI
    • void iotjs_spi_create_platform_data(iotjs_spi_t* spi)
    • void iotjs_spi_destroy_platform_data(iotjs_spi_platform_data_t* pdata)
    • bool iotjs_spi_open(iotjs_spi_t* spi)
    • bool iotjs_spi_transfer(iotjs_spi_t* spi)
    • bool iotjs_spi_close(iotjs_spi_t* spi)