一、目的是点亮K210开发板左下角的LED0和LED1,LED0是红灯,LED1是绿灯,两颗LED灯都是低电平点亮,高电平熄灭。
二、这是原理图上的硬件连接,LED0连接的是IO0,LED1连接的是IO17。
三、在src目录下新建文件夹
四、为了跟官方的例程区分开来,名字叫做gpio_led1
五、在gpio_led1目录下新建文件
六、新建两个文件,分别是main.c和pin_config.h
七、在main.c文件中写入如下代码
#include "pin_config.h"
#include <stdio.h>
#include <unistd.h>
#include "gpio.h"
void hardware_init(void)
{
fpioa_set_function(PIN_LED_0, FUNC_LED0);
fpioa_set_function(PIN_LED_1, FUNC_LED1);
}
int main(void)
{
hardware_init();
gpio_init();
gpio_set_drive_mode(LED0_GPIONUM, GPIO_DM_OUTPUT);
gpio_set_drive_mode(LED1_GPIONUM, GPIO_DM_OUTPUT);
gpio_pin_value_t value = GPIO_PV_HIGH;
gpio_set_pin(LED0_GPIONUM, value);
gpio_set_pin(LED1_GPIONUM, value);
while (1)
{
sleep(1);
gpio_set_pin(LED0_GPIONUM, value);
gpio_set_pin(LED1_GPIONUM, value = !value);
}
return 0;
}
八、在pin_config.h文件中写入如下代码
#ifndef _PIN_CONFIG_H_
#define _PIN_CONGIG_H_
#include "fpioa.h"
#define PIN_LED_0 (0)
#define PIN_LED_1 (17)
#define LED0_GPIONUM (0)
#define LED1_GPIONUM (1)
#define FUNC_LED0 (FUNC_GPIO0 + LED0_GPIONUM)
#define FUNC_LED1 (FUNC_GPIO0 + LED1_GPIONUM)
#endif
九、在build路径下输入cmake … -DPROJ=gpio_led1 -G “MinGW Makefiles”
十、再输入make进行编译
十一、编译成功
十二、编译成功后会在build目录下生成 .bin 文件
十三、打开K210官方提供的烧录工具
十四、烧录刚刚生成的.bin文件
十五、LED灯交替点亮,现象正常