程序笔记   发布时间:2022-07-13  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了基于RT1170 使能GPIO输出功能 (二)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

本文主要是通过迁移的思维,记录本人初次使用NXP MCUXpresso SDK API进行BSP开发

MCUXpresso SDK GPIO API 接口链接   在MCUXpresso SDK 框架下提供了对GPIO进行操作的接口。针对GPIO当作输出使用,一般只需要将对应的引脚配置成GPIO功能,方向为输出,需要设置初始化默认电平。接下来就可以对其进行置高或置低操作。

1. 首先阅读原理图

  设计中有一个输出引脚,如下所示:   GPIO_AD_35----GPIO10_IO02

基于RT1170 使能GPIO输出功能 (二)

基于RT1170 使能GPIO输出功能 (二)

基于RT1170 使能GPIO输出功能 (二)

2. SDK api 应用

2.1 GPIO Init

需要将对应的引脚复用成普通的GPIO引脚。

IOMUXC_SetPinMux(
      IOMUXC_GPIO_AD_35_GPIO10_IO02,          /* GPIO_AD_35 is configured as GPIO10_IO02 */
      0U);                                    /* Software Input On Field: Input Path is determined by functionality */
      

将引应用的引脚配置成输入:

  /* GPIO configuration of USER_LED on GPIO_AD_35 (pin G17) */
  gpio_pin_config_t USER_LED_config = {
      .direction = kGPIO_DigitalOutput,
      .outputLogic = 0U,
      .interruptMode = kGPIO_NoIntmode
  };
  /* Initialize GPIO functionality on GPIO_AD_35 (pin G17) */
  GPIO_PinInit(GPIO10, 2U, &USER_LED_config);

2.2 GPIO write

在MCUXpresso SDK框架下, 通过GPIO_PinWrite用于设置IO的电平, 如下所示

/*!
 * @brief Sets the output level of the individual GPIO pin to logic 1 or 0.
 *
 * @param base GPIO base pointer.
 * @param pin GPIO port pin number.
 * @param output GPIOpin output logic level.
 *        - 0: corresponding pin output low-logic level.
 *        - 1: corresponding pin output high-logic level.
 */
void GPIO_PinWrite(GPIO_Type *base, uint32_t pin, uint8_t output);

实际操作代码如下所示:

/*输出低电平*/
GPIO_WritePinOutput(GPIO10,2U, 0);
/*输出高电平*/
GPIO_WritePinOutput(GPIO10,2U, 1);

3. 代码生成

在NXP提供的工具里可以通过 MCUXpresso Config Tools v9 生成初始化代码。 先将引脚配置成普能的GPIO。

基于RT1170 使能GPIO输出功能 (二)

再将引脚配置成输出,并且可以设置其初始化电平。

基于RT1170 使能GPIO输出功能 (二)

点击更新源代码。

基于RT1170 使能GPIO输出功能 (二)

即可生成对应的初始化代码。

  /* GPIO configuration of USER_KEY1 on GPIO_AD_26 (pin L14) */
  gpio_pin_config_t USER_KEY1_config = {
      .direction = kGPIO_DigitalInput,
      .outputLogic = 0U,
      .interruptMode = kGPIO_NoIntmode
  };
  /* Initialize GPIO functionality on GPIO_AD_26 (pin L14) */
  GPIO_PinInit(GPIO9, 25U, &USER_KEY1_config);

  IOMUXC_SetPinMux(
      IOMUXC_GPIO_AD_26_GPIO9_IO25,           /* GPIO_AD_26 is configured as GPIO9_IO25 */
      0U);

4. 总结

  图型化工具辅助编程是大趋势,让客户专注应用开发。

大佬总结

以上是大佬教程为你收集整理的基于RT1170 使能GPIO输出功能 (二)全部内容,希望文章能够帮你解决基于RT1170 使能GPIO输出功能 (二)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: