0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【先楫半导体HPM6750EVKMINI评估板试用体验】GPIO与外部中断简单应用

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-11-17 15:57 次阅读
本文来源电子发烧友社区,作者:jf_32467263, 帖子地址:https://bbs.elecfans.com/jishu_2287559_1_1.html


一、GPIO输入输出配置
官方提供了gpio的两个例程分别为GPIO与GPIOM,而这两个例程分别为传统GPIO配置使用GPIO,以及使用GPIO manager配置使用GPIO,在例程中可以看到,官方封装的初始化库函数:
在传统GPIO配置方式中,在HPM6750中比较简单,其中需要初始话的IO口对应需要先选择对应的ALT功能即


  1. IOC_PAD_FUNC_CTL_ALT_SELECT_SET()
复制代码


设定完对应的ALT功能后传递给对应GPIO的FUNC_CTL即HPM_BIOC->PAD[GPIO_Pin].FUNC_CTL

初始化完成后只需要先使能对应GPIO口,在设定GPIO的输出状态即可,官方也对于相应的OE、DO寄存器封装了相应的库函数,并且在DO寄存器的使用中还增加了toggle_pin状态切换的功能,可以直接操作进行电平反转,简单快捷。
在GPIO manager配置方法中,用户可以单独的GPIO进行配置自定义。


  1. static inline void gpiom_set_pin_controler(GPIOM_Type *ptr,uint8_t gpio_index,uint8_t pin_index,gpiom_gpio_t gpio)
复制代码

该函数主要设定了GPIO的驱动模式,设定一共有四种,分别为gpiom_soc_gpio0、gpiom_soc_gpio1、gpiom_core0_fast、gpiom_core1_fast。


  1. static inline void gpiom_enable_pin_visibility(GPIOM_Type *ptr,uint8_t gpio_index,uint8_t pin_index,gpiom_gpio_t gpio)
复制代码

该函数用于对设定的参数进行使能;


  1. gpiom_lock_pin(BOARD_APP_GPIOM_BASE, BOARD_LED_GPIO_INDEX, BOARD_LED_GPIO_PIN);
复制代码
该函数用于对GPIO manager的设定进行锁定,该操作即可完成对GPIO manager的自定义设定。
初始化设定完成后便可以使用对应库函数进行输出,常用GPIO库函数简介:


  1. //GPIO输出使能--GPIO_OE
复制代码

二、外部中断配置
在GPIO的例程中,除了演示了对GPIO的设定,还对GPIO的外部中断设定进行了演示。
在使用外部中断前,需要将GPIO输出使能关闭,便于通过GPIO检测外部中断,开启外部中断首先是对于外部中断的触发方式的设定。


  1. void gpio_config_pin_interrupt(GPIO_Type *ptr, uint32_t gpio_index, uint8_t pin_index, gpio_interrupt_trigger_t trigger)
复制代码
该函数中可以选定常用高低电平触发以及边沿触发方式,选定完成后使用以下函数操作IE寄存器对外部中断进行使能。


  1. static inline void gpio_enable_pin_interrupt(GPIO_Type *ptr, uint32_t port, uint8_t pin)
复制代码
用以下函数绑定中断服务函数以及设定中断优先级


  1. intc_m_enable_irq_with_priority(irq, priority)//设定中断服务优先级
复制代码
而在中断中用以下函数清除中断标志


  1. static inline void gpio_clear_pin_interrupt_flag(GPIO_Type *ptr, uint32_t port, uint8_t pin)
复制代码

外部中断的配置相对来说比较简单,而配置流程也与ARM趋于一致,在此不做赘述。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17173

    浏览量

    351638
  • 先楫半导体
    +关注

    关注

    10

    文章

    214

    浏览量

    2131
收藏 人收藏

    评论

    相关推荐

    HPM6E00技术日 | 百人研讨共话工业应用创新及发展趋势

    2024年8月29日,深圳 | 由上海半导体科技有限公司(半导体,HPMicro)主办的
    发表于 09-02 10:14

    半导体hpm_apps v1.6.0上线

    半导体hpm_apps v1.6.0上线
    的头像 发表于 08-02 08:18 869次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半导体</b><b class='flag-5'>hpm</b>_apps v1.6.0上线

    有奖提问!半导体HPM6E00系列新品发布会!!

    半导体HPM6E00新品预览”的活动,盛况空前。 自此之后一直收到大家的信息,问什么时候能够买到HPM6E00,这不,我们来了~
    发表于 06-20 11:45

    半导体所有开发已上RT-Thread主线啦

    目前,半导体在RT-Thread主线支持的开发包含以下这些
    的头像 发表于 06-05 08:17 589次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半导体</b>所有开发<b class='flag-5'>板</b>已上RT-Thread主线啦

    半导体 hpm_sdk v1.5.0 正式发布

    半导体 hpm_sdk v1.5.0 正式发布
    的头像 发表于 04-12 08:17 612次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半导体</b> <b class='flag-5'>hpm</b>_sdk v1.5.0 正式发布

    半导体 hpm_sdk v1.5.0 正式发布

    半导体 hpm_sdk v1.5.0 正式发布!功能升级更强大 版本更新概况 新支持的IDE IAR Embedded Workbench for RISC-V (测试版本3.20
    发表于 04-08 11:14

    高性能MCU HPM6800系列产品生态绽放,共链未来

    2024年3月28日,上海 - 国产高性能微控制器厂商上海半导体科技有限公司(半导体,H
    的头像 发表于 03-29 18:21 1082次阅读

    半导体携手立功科技推出了国产高性能微控制器HPM6800系列

    上海半导体科技有限公司(半导体,HPMicro)推出了国产高性能微控制器
    的头像 发表于 03-13 12:24 892次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半导体</b>携手立功科技推出了国产高性能微控制器<b class='flag-5'>HPM</b>6800系列

    基于HPM5300 RISC-V内核MCU的HPM5361EVK开发测评效果(二)

    HPM5361EVK是基于HPM5300系列高性能RISC-V内核MCU的一款开发
    的头像 发表于 03-12 10:30 2975次阅读
    基于<b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>HPM</b>5300 RISC-V内核MCU的<b class='flag-5'>HPM</b>5361EVK开发<b class='flag-5'>板</b>测评效果(二)

    HPM5361EVK开发,网友测评效果(二)

    上海半导体举办的HPM5361EVK开发试用活动圆满结束,广大工程师和爱好者们踊跃参与此次
    的头像 发表于 03-12 08:16 2179次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>HPM</b>5361EVK开发<b class='flag-5'>板</b>,网友测评效果(二)

    半导体推出了国产高性能微控制器HPM6800系列

    上海半导体科技有限公司(半导体,HPMicro)推出了国产高性能微控制器
    的头像 发表于 03-07 12:30 1324次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半导体</b>推出了国产高性能微控制器<b class='flag-5'>HPM</b>6800系列

    芯原2.5D GPU IP赋能半导体HPM6800系列RISC-V MCU

    芯原股份(股票代码:688521.SH)与半导体(简称“”)的合作,为高性能图形处理领域带来了新的突破。
    的头像 发表于 03-05 09:21 1010次阅读

    HPM5300EVK 优秀测评报告(一)

    上海半导体举办的HPM5361EVK开发试用活动圆满结束,广大工程师和爱好者们踊跃参与此次
    的头像 发表于 03-05 08:19 933次阅读
    <b class='flag-5'>HPM</b>5300EVK 优秀测评报告(一)

    HPM5361EVK开发试用体验】(原创)5.手把手实战AI机械臂

    与ChatGPT API结合,使机械臂能够基于视觉信息和AI指令进行动作。 今天更新到这里... 谢谢! 接上四篇: 【HPM5361EVK开发
    发表于 02-06 10:28

    HPM5361EVK开发试用体验】HPM5361EVK开发的UART实践与测试

    HPM5361EVK开发简单给大家介绍一下,HPM
    发表于 01-09 22:22