本例程是使用GPIO来点亮LED灯,系统总线接口支持 AMBA3.0 AHB-Lite 协议。该总线是由ARM公司提出的一种开放性的片上总线标准,它独立于处理器和工艺技术,具有高速度低功耗等特点。也就是说外设的操作与ARM类型的MCU相似。
关键代码如下:
csi_pin_set_mux(PA7, PIN_FUNC_GPIO); //Red LED
csi_pin_set_mux(PA25, PIN_FUNC_GPIO); //Green LED
csi_pin_set_mux(PA4, PIN_FUNC_GPIO); //Blue LED
csi_gpio_pin_init(&pin_led_red, PA7);
csi_gpio_pin_dir(&pin_led_red, GPIO_DIRECTION_OUTPUT);
csi_gpio_pin_init(&pin_led_green, PA25);
csi_gpio_pin_dir(&pin_led_green, GPIO_DIRECTION_OUTPUT);
csi_gpio_pin_init(&pin_led_blue, PA4);
csi_gpio_pin_dir(&pin_led_blue, GPIO_DIRECTION_OUTPUT);
设置和初始化PA7、PA25、PA4三个引脚。
附上主程序:
while (1) {
LOGD(TAG, "Hello world!\n");
aos_msleep(1000);
if (d == 1) {
csi_gpio_pin_write(&pin_led_red, GPIO_PIN_HIGH);
csi_gpio_pin_write(&pin_led_green, GPIO_PIN_HIGH);
csi_gpio_pin_write(&pin_led_blue, GPIO_PIN_HIGH);
} else {
csi_gpio_pin_write(&pin_led_red, GPIO_PIN_LOW);
csi_gpio_pin_write(&pin_led_green, GPIO_PIN_LOW);
csi_gpio_pin_write(&pin_led_blue, GPIO_PIN_LOW);
}
d=!d;
}
可以看到成功运行了:
|