第十三届蓝桥杯嵌入式备战之旅——GPIO

这篇博客详细介绍了GPIO的复用功能和74HC573锁存器的使用。在Cubemx中配置时钟和GPIO,特别是强调了开漏输出和推挽输出的区别。在实际应用中,通过控制PD2来操作74HC573,实现对LED和LCD的驱动。同时,博主提醒注意代码编写时确保PD2为高电平以驱动LED,并且如何实现LED和LCD的交替控制效果。

要参考的资料

1.GPIO复用

2.锁存器HC

OE#已经接了地(已经使能),只需要控制 LE 即可控制 74HC573 的这个芯片是否锁
存。而 LE 接到了 PD2,换句话说,只要操作了 PD2,就可以操作 74HC573 了。

3.Cubemx配置

1)时钟配置

可选)debug配置

2)GPIO配置

开漏输出无法真正输出高电平,即高电平时没有驱动能力,需要借助外部上拉电阻完成对外驱动。

推挽输出的最大特点是可以真正能真正的输出高电平和低电平,在两种电平下都具有驱动能力。

 

3)下载配置 

 如果编译失败就是缺少启动文件,去考试文件夹找然后复制粘贴。keil也要记得加进去

 

代码编写

注意PD2一定要是高电平才能驱动LED,如果想要同时驱动LED和LCD就需要在while循环里轮流控制高低来制作虚假同时的效果(其实还是有先后的)

  /* USER CODE END 2 */
		HAL_GPIO_WritePin (GPIOD,GPIO_PIN_2,GPIO_PIN_SET);	//如果HAL库配置了高电平就不需要,我这里其实是多此一举
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */
//		HAL_Delay(500);
	HAL_GPIO_WritePin (GPIOC,GPIO_PIN_8,GPIO_PIN_RESET);	//RE低电平,SET高电平


    /* USER CODE BEGIN 3 */
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值