128|4

1267

帖子

1

TA的资源

纯净的硅(高级)

[ STM32F4-discovery开发板测评 ] GPIO口的基本使用 [复制链接]

GPIO口是进行硬件开发的入口,要了解GPIO口的基本使用,则可从LED与KEY的使用开始。

在开发板上有2个LED和1个KEY,其电路如图1和图2所示。

image.png  

图1  LED电路

 

image.png  

图2  KEY电路

由图可知其与开发板的连接关系为:

LD3---PG13

LD4--- PG14

KEY--- PA0

当点亮LED时,要求相应的引脚输出高电平。而对于KEY,则是在按下按键时呈现高电平。

实现LED与KEY初始化的函数为:

void gpio_Init(void )
{
  GPIO_InitTypeDef  GPIO_InitStruct;
  __HAL_RCC_GPIOG_CLK_ENABLE();
  GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pull = GPIO_PULLUP;
  GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
  HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);
  
  __HAL_RCC_GPIOA_CLK_ENABLE();
  GPIO_InitStruct.Pin = GPIO_PIN_0;
  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
  GPIO_InitStruct.Pull = GPIO_NOPULL;
  GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}

实现按键控制LED灯亮灭的主程序为:

int main(void)
{
    SystemClock_Config();
	gpio_Init();
	while (1)
    {
		   if(HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0)==1)
		   {
		         HAL_GPIO_WritePin(GPIOG, GPIO_PIN_13, GPIO_PIN_SET); 
		         HAL_GPIO_WritePin(GPIOG, GPIO_PIN_14, GPIO_PIN_SET); 
		   }
		   else
		   {
                 HAL_GPIO_WritePin(GPIOG, GPIO_PIN_13, GPIO_PIN_RESET);
                 HAL_GPIO_WritePin(GPIOG, GPIO_PIN_14, GPIO_PIN_RESET); 		
		   }
    }
}

经程序的编译与下载,其结果如图3所示,说明程序有效。

image.png  

图3  控制效果

后面,将利用GPIO口来实现OLED屏的显示驱动。

 

此帖出自stm32/stm8论坛

最新回复

看这个USB口就能推测这个板子应该是10年以上窖藏   详情 回复 发表于 3 天前

回复

5181

帖子

0

TA的资源

五彩晶圆(中级)

GPIO口的基本使用一个按键两个灯,比较好控制的

此帖出自stm32/stm8论坛

点评

哈哈,万丈高楼平地起。  详情 回复 发表于 4 天前

回复

1267

帖子

1

TA的资源

纯净的硅(高级)

Jacktang 发表于 2023-9-18 07:28 GPIO口的基本使用一个按键两个灯,比较好控制的

哈哈,万丈高楼平地起。

此帖出自stm32/stm8论坛

回复

6361

帖子

2

TA的资源

五彩晶圆(中级)

看这个USB口就能推测这个板子应该是10年以上窖藏

此帖出自stm32/stm8论坛

点评

年份再老点儿可当古董收藏!!!  详情 回复 发表于 前天 18:30
个人签名

默认摸鱼,再摸鱼。2022、9、28


回复

1267

帖子

1

TA的资源

纯净的硅(高级)

freebsder 发表于 2023-9-19 17:21 看这个USB口就能推测这个板子应该是10年以上窖藏

年份再老点儿可当古董收藏!!!

此帖出自stm32/stm8论坛

回复
您需要登录后才可以回帖 登录 | 注册

相关帖子
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表