打印
[STM32F0]

【转】STM32F072的寄存器LED闪烁

[复制链接]
1206|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小浣熊|  楼主 | 2015-1-30 16:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看了网上视频的寄存器操作,又看了下072的参考手册还真和M3核不一样
GPIO口的时钟使能寄存器是AHBENR,
而GPIO口寄存器有4个32位的配置寄存器,分别是MODER,OTYPER,OSPEEDR,PUPDR.
                             2个32位的数据寄存器IDR和ODR.
                             1个32位的设置/复位寄存器BSRR.
                             1个32位的锁存器LCKR  (PORA和PORTB).
                              2个复用选择寄存器AFRH 和AFRL(PORTA-PORTE).
072开发板上LED在PA5上;
void LED_Init(void)
{
    RCC->AHBENR|=1<<17;
    GPIOA->MODER&=0xfffff0ff;
    GPIOA->MODER|=0x00000400;  
    GPIOA->OTYPER&=0xffffffef;  
    GPIOA->OSPEEDR|=0x00000c00;  
}

int main(void)
{              
   
SystemInit();        

    LED_Init();
    while(1)
{
        GPIOA->ODR|=1<<5;
        Delay_Ms(500);
        GPIOA->ODR&=0xffffffcf;
        Delay_Ms(500);
      
  }
     }
   比起库函数老说,是不是很精简
沙发
小浣熊|  楼主 | 2015-1-30 16:54 | 只看该作者
如果不喜欢官方的库,可以自己封装一个。其实感觉官方的IO接口函数配置有点麻烦。自己写一个digitalWrite其实是挺好的。

使用特权

评论回复
板凳
zh113214| | 2015-1-30 17:05 | 只看该作者
顶一个,可惜没有图片。。

使用特权

评论回复
地板
mmuuss586| | 2015-1-30 20:30 | 只看该作者

IO操作是比较简单;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

528

主题

2095

帖子

8

粉丝