请选择 进入手机版 | 继续访问电脑版
查看: 202|回复: 1

[原创] STM32G071使用评测:GPIO

[复制链接]
  • TA的每日心情
    慵懒
    昨天 12:36
  • 签到天数: 74 天

    [LV.6]以坛为家

    27

    主题

    1138

    帖子

    500

    蝴蝶豆

    金牌会员

    最后登录
    2019-1-19
    发表于 2019-1-11 18:10:32 | 显示全部楼层 |阅读模式
    本帖最后由 stm1024 于 2019-1-11 18:27 编辑

    拿到开发板,熟悉的套路都是先从GPIO着手,这次通过对比G071和之前的F071,看看G系列在GPIO方面有哪些新的变化。0.Port
    看参考手册,G071只有ABCDF口,而F071有ABCDEF口,似乎F0更多一些?如果仔细看针脚定义,就知道原因了:
    F01.png g01.png
    猜猜看哪一个是G0的针脚定义?当然是右边。通过对比可以发现,G0的针脚定义更加规整连续,应该是在推出之前做过缜密设计,相比较而言,F0系列的就显得混乱一些。

    1.寄存器
    F、G系列GPIO的四个基本配置寄存器GPIOx_MODER,GPIOx_OTYPER, GPIOx_OSPEEDR and GPIOx_PUPDR 是少不了的,两个数据寄存器GPIOx_IDR and GPIOx_ODR同样也是不可或缺的,最后一个就是Bit set/reset 寄存器(GPIOx_BSRR)。这是相同点,而且通常我们使用GPIO寄存器用的最多的也就是这些。那么不同点呢?首先是锁存寄存器GPIOx_LCKR,F0系列上,只有Port A和Port B有,而在G0系列上面则是所有的寄存器都有。



    2.特征
    这个方面没有太对的变化,不过得益于G0的GPIO数量的增加,因此Alternative Function不像以前F0那样,有些针脚最多要支持16个AF,G0系列最多只支持8个AF。

    3.功能
    GPIO的常规功能基本上与F0系列保持相同,但是也增加了一个新的功能:USB PD / Dead battery support
    这项功能应该是支持Type-C Power Delivery的,也是我目前比较关注并想了解的一项功能,不过官方尚未就GPIO对此项功能做详细的解释。
    2019-01-11_175440.png

    最后是简单的测试代码:
    1. int main(void)
    2. {
    3.   HAL_Init();
    4.   SystemClock_Config();
    5.   LED4_GPIO_CLK_ENABLE();
    6.   GPIO_InitStruct.Mode  = GPIO_MODE_OUTPUT_PP;
    7.   GPIO_InitStruct.Pull  = GPIO_PULLUP;
    8.   GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
    9.   GPIO_InitStruct.Pin = LED4_PIN;
    10.   HAL_GPIO_Init(LED4_GPIO_PORT, &GPIO_InitStruct);
    11.   while (1)
    12.   {
    13.     HAL_GPIO_TogglePin(LED4_GPIO_PORT, LED4_PIN);
    14.     HAL_Delay(500);
    15.   }
    16. }
    复制代码
    在GPIO上也玩不出什么新花样,主要还是对比了与之前F0存在的不同。

      ST全新域名已上线,大家奔走相告>>                    
    回复

    使用道具 举报

    该用户从未签到

    46

    主题

    555

    帖子

    58

    蝴蝶豆

    金牌会员

    最后登录
    2019-1-19
    发表于 2019-1-12 21:27:43 | 显示全部楼层
    支持
    回复

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|意法半导体STM32/STM8技术社区

    GMT+8, 2019-1-20 09:40 , Processed in 0.055678 second(s), 8 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表