Beispiel #1
0
led_context led_init_str(const char* name){
    // make sure MRAA is initialized
    int mraa_rv;
    if ((mraa_rv = mraa_init()) != MRAA_SUCCESS)
    {
        printf("%s: mraa_init() failed (%d).\n", __FUNCTION__, mraa_rv);
        return NULL;
    }

    led_context dev =
      (led_context)malloc(sizeof(struct _led_context));

    if (!dev)
        return NULL;

    dev->led_pin = -1;
    dev->gpio = NULL;

    dev->name = name;
    dev->gpioled = mraa_led_init(name);

    if (!dev->gpioled) {
        printf("%s: Unable to initialize gpioled device (%s).\n", __FUNCTION__, dev->name);
        free(dev);
        return NULL;
    }

    dev->max_brightness = mraa_led_read_max_brightness(dev->gpioled);

    return dev;
}
Beispiel #2
0
    /**
     * Instantiates an LED object
     *
     * @param led LED index to use
     */
    Led(int led)
    {
        m_led = mraa_led_init(led);

        if (m_led == NULL) {
            throw std::invalid_argument("Invalid LED name specified");
        }
    }