Hi ,
I tried following steps to configure and toggle GPIO pins.
I have also set CONFIG_GPIO=y in your prj.conf file. ,referring to https://devzone.nordicsemi.com/f/nordic-q-a/44940/simple-gpio-example---nrf9160-dk-2
static void led_test(void)
{
int cnt = 0;
struct device *dev;
dev = device_get_binding("GPIO_0");
/* Set LED pin as output */
gpio_pin_configure(dev, 2, GPIO_OUTPUT); //p0.03 == LED2
gpio_pin_configure(dev, 3, GPIO_OUTPUT); //p0.04 == LED3
gpio_pin_configure(dev, 4, GPIO_OUTPUT); //p0.03 == LED2
gpio_pin_configure(dev, 5, GPIO_OUTPUT); //p0.04 == LED3
gpio_pin_configure(dev, 17, GPIO_OUTPUT_ACTIVE); //p0.17
gpio_pin_configure(dev, 18, GPIO_OUTPUT); //p0.18
gpio_pin_configure(dev, 19, GPIO_OUTPUT_ACTIVE); //p0.19
while (1)
{
/* Set pin to HIGH/LOW every 1 second */
gpio_pin_set_raw(dev, 2, cnt % 2); //p0.03 == LED2
gpio_pin_set_raw(dev, 3, cnt % 2); //p0.04 == LED3
gpio_pin_set_raw(dev, 4, cnt % 2); //p0.03 == LED2
gpio_pin_set_raw(dev, 5, cnt % 2); //p0.04 == LED3
gpio_pin_set_raw(dev, 17, cnt % 2); //p0.17 Toggling pin 17
gpio_pin_set_raw(dev, 18, cnt % 2); //18
gpio_pin_set_raw(dev, 19, cnt % 2); //19
cnt++;
k_sleep(K_MSEC(5000));
}
}
The Led1,2,3,4 will on/off in 5s, but P0.17 P0.18 P0.19 didnt change !!
Something else do we need to setup?
Do we have to make changes in dts file?