今天开始了GPIO的相关学习,我是基于MD驱动库的内容进行的相关学习
首先要在下面的网站下载最新SDK软件包,前几个版本有的文件不完全,这个已经算是比较全的了。
http://www.essemi.com/article/c141.html
下载,解压之后进入下列路径:
\ES32_SDK_V1.05\Projects\ES32F065x\Examples_MD\GPIO\gpio_toggle\MDK-ARM
打开工程后,需要根据板子的硬件资源对"main.c","main.h"这两个 文件的内容进行一下修改:
首先是“main.h”,
这里需要修改原来的关于GPIO的相关预定义语句,修改成如下 内容:
然后修改“main.c”中的相关内容:
然后在主循环里面编写一段流水灯的程序:
然后对程序进行编译,下载,还需要按一下“复位“键,就可以看到效果了。
下面是程序内容,大家可以直接复制、粘贴。
/*******By 火工头陀***************************************/
#define LED1_GPIO_PORT GPIOC
#define LED1_GPIO_PIN MD_GPIO_PIN_8
#define LED2_GPIO_PORT GPIOC
#define LED2_GPIO_PIN MD_GPIO_PIN_9
/***********By 火工头陀***********************************/
void config_gpio(void)
{
md_gpio_set_pin_function(LED1_GPIO_PORT, LED1_GPIO_PIN, GPIO_FUNC_1);
md_gpio_set_pin_push_pull(LED1_GPIO_PORT, LED1_GPIO_PIN);
md_gpio_set_pin_mode_output(LED1_GPIO_PORT, LED1_GPIO_PIN);
md_gpio_set_pin_function(LED2_GPIO_PORT, LED2_GPIO_PIN, GPIO_FUNC_1);
md_gpio_set_pin_push_pull(LED2_GPIO_PORT, LED2_GPIO_PIN);
md_gpio_set_pin_mode_output(LED2_GPIO_PORT, LED2_GPIO_PIN);
}
int main()
{
md_init_1ms_tick();
config_gpio();
while (1) {
md_delay_1ms(500);
md_gpio_toggle_pin_output(LED1_GPIO_PORT, LED1_GPIO_PIN);
md_delay_1ms(500);
md_gpio_toggle_pin_output(LED2_GPIO_PORT, LED2_GPIO_PIN);
}
}
/**********By 火工头陀************************************/
|