打印
[AT32F407]

【AT-START-F407测评】+从0开始点灯

[复制链接]
440|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 gaoyang9992006 于 2021-1-28 00:13 编辑

前面的创建工程过程请访问下面的帖子
https://bbs.21ic.com/icview-3068390-1-1.html
接着上面这个帖子,开始要写代码了,这里不用官方例子里做好的那种。
而是从标准库函数出发,自己点灯。
原理图显示是低电平有效,并且在PD13、PD14、PD15三个管脚上。
下面我们以点亮PD13管脚的红色LED为例码代码。

#include "at32f4xx_gpio.h"

/*delay variable*/
static __IO uint32_t fac_us;
static __IO uint32_t fac_ms;
/*delay macros*/
#define STEP_DELAY_MS        50
void Delay_init()
{
  /*Config Systick*/
  SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
  fac_us = SystemCoreClock / (1000000U);
  fac_ms = fac_us * (1000U);
}

void Delay_ms(u16 nms)
{
  u32 temp;
  while(nms)
  {
    if(nms > STEP_DELAY_MS)
    {
      SysTick->LOAD = (u32)(STEP_DELAY_MS * fac_ms);
      nms -= STEP_DELAY_MS;
    }
    else
    {
      SysTick->LOAD = (u32)(nms * fac_ms);
      nms = 0;
    }
    SysTick->VAL = 0x00;
    SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk;
    do
    {
      temp = SysTick->CTRL;
    }while( (temp & 0x01) && !(temp & (1<<16)) );

    SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;
    SysTick->VAL = 0X00;
  }
}


int main(void)
{
//LED2管脚初始化
        GPIO_InitType GPIO_InitStructure;
        RCC_APB2PeriphClockCmd(RCC_APB2PERIPH_GPIOD, ENABLE);
        GPIO_StructInit(&GPIO_InitStructure);
        GPIO_InitStructure.GPIO_Pins =GPIO_Pins_13;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT_PP;
        GPIO_InitStructure.GPIO_MaxSpeed = GPIO_MaxSpeed_50MHz;        
        GPIO_Init(GPIOD,&GPIO_InitStructure);
        
        Delay_init();
        
        while(1)
        {
                GPIO_SetBits(GPIOD,GPIO_Pins_13);
                Delay_ms(200);
                GPIO_ResetBits(GPIOD,GPIO_Pins_13);               
                Delay_ms(200);
        }
        
}
就这样,赤裸裸的用标准库函数点了个灯。
新手机没法转GIF图片,就不展示了。

按照该贴开头提到的帖子开发,轻松创建工程,0错误0警告,搞定。

使用特权

评论回复
沙发
xuanhuanzi| | 2021-2-28 21:06 | 只看该作者
楼主真棒,没有抄例子,自己写的啊,学会了。

使用特权

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

本版积分规则

认证:西安公路研究院南京院
简介:主要工作从事监控网络与通信网络设计,以及从事基于嵌入式的通信与控制设备研发。擅长单片机嵌入式系统物联网设备开发,音频功放电路开发。

1898

主题

15650

帖子

199

粉丝