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

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

3天内不再提示

Atmel MCU 延时delay快速上手指南详解

电子工程师 作者:工程师陈翠 2018-06-18 05:31 次阅读

MCU软件开发中,延时函数用的非常多,有的是硬件延时,采用定时器,有的是软件延时,采用循环等待,不管是采用什么样的方式,最终达到的目的都是一样,为系统功能、时序做铺垫,下面结合Atmel Studio 和ASF对延时函数delay进行说明,此软件库适用于所有Atmel MCU。

1、关于Atmel Studio 的使用说明,工程建立,ASF软件库添加,请参考:

2、添加 Delay routines (Service) 本例程采用 Systick

Atmel MCU 延时delay快速上手指南详解

3、初始化delay 功能,在main函数中添加如下代码:

delay_init(); //延时功能初始化

4、编写代码,此例程为LED间隔200ms闪烁,示例代码如下:

Atmel MCU 延时delay快速上手指南详解

源码:

#include //包含Atmel MCU软件库头文件

#define LED PIN_PC27 //定义LED所使用的IO口为 PC27

void port_init(void); //声明函数体

/************************************************************************/

//* IO 初始化

/************************************************************************/

void port_init(void)

{

struct port_config config_port_pin;

port_get_config_defaults(&config_port_pin);

config_port_pin.direction = PORT_PIN_DIR_OUTPUT; //配置IO口方向为输出

port_pin_set_config(LED, &config_port_pin); //初始化LED对应IO口

}

/************************************************************************/

//* 主程序

/************************************************************************/

int main (void)

{

system_init(); //系统初始化

/* Insert application code here, after the board has been initialized. */

port_init(); //IO初始化

delay_init(); //延时功能初始化

while(1)

{

port_pin_toggle_output_level(LED); //LED对应IO电平取反

delay_ms(200); //延时200ms

}

}

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

    关注

    146

    文章

    16011

    浏览量

    343545
  • Atmel
    +关注

    关注

    17

    文章

    310

    浏览量

    106543
收藏 人收藏

    评论

    相关推荐

    ModelSim快速上手指南

    ModelSim快速上手指南
    发表于 08-16 17:14

    资料推荐:nRF51822上手指南

    nRF51822上手指南
    发表于 06-12 13:48

    Quick-Jack快速上手手册

    NXP 智能手机 Quick-Jack 快速上手指南
    发表于 12-06 06:13

    ModelSim快速上手指南

    ModelSim快速上手指南 快速上手四部曲:建立Project、引進HDL Files、Compile、模擬(Simulate/Loading and Run)
    发表于 05-08 17:29 0次下载

    基于ASF的Atmel SAM D系列EEPROM快速上手指南详解

    在数据存储应用中,EEPROM用的非常广泛,以前常常需要在电路中外接一个EEPROM芯片,随着MCU技术的发展,EEPROM慢慢集成到了MCU内部,容量也越来越大,逐渐替代之前的单独EEPROM芯片
    的头像 发表于 06-18 14:04 4315次阅读
    基于ASF的<b class='flag-5'>Atmel</b> SAM D系列EEPROM<b class='flag-5'>快速</b><b class='flag-5'>上手指南</b><b class='flag-5'>详解</b>

    适用于TI mmWave sensor的CCS在线调试脚本上手指南

    适用于TI mmWave sensor的CCS在线调试脚本上手指南
    发表于 10-28 11:59 0次下载
    适用于TI mmWave sensor的CCS在线调试脚本<b class='flag-5'>上手指南</b>

    RT-Thread文档_RT-Thread 潘多拉 STM32L475 上手指南

    RT-Thread文档_RT-Thread 潘多拉 STM32L475 上手指南
    发表于 02-22 18:23 7次下载
    RT-Thread文档_RT-Thread 潘多拉 STM32L475 <b class='flag-5'>上手指南</b>

    RT-Thread文档_野火霸道 STM32F103 上手指南

    RT-Thread文档_野火霸道 STM32F103 上手指南
    发表于 02-22 18:23 1次下载
    RT-Thread文档_野火霸道 STM32F103 <b class='flag-5'>上手指南</b>

    RT-Thread文档_正点原子 nano STM32F103 上手指南

    RT-Thread文档_正点原子 nano STM32F103 上手指南
    发表于 02-22 18:24 3次下载
    RT-Thread文档_正点原子 nano STM32F103 <b class='flag-5'>上手指南</b>

    RT-Thread文档_野火挑战者 STM32F429 上手指南

    RT-Thread文档_野火挑战者 STM32F429 上手指南
    发表于 02-22 18:24 2次下载
    RT-Thread文档_野火挑战者 STM32F429 <b class='flag-5'>上手指南</b>

    RT-Thread文档_正点原子探索者 STM32F407 上手指南

    RT-Thread文档_正点原子探索者 STM32F407 上手指南
    发表于 02-22 18:25 13次下载
    RT-Thread文档_正点原子探索者 STM32F407 <b class='flag-5'>上手指南</b>

    RT-Thread文档_正点原子阿波罗 STM32F429 上手指南

    RT-Thread文档_正点原子阿波罗 STM32F429 上手指南
    发表于 02-22 18:25 1次下载
    RT-Thread文档_正点原子阿波罗 STM32F429 <b class='flag-5'>上手指南</b>

    RT-Thread文档_正点原子 I.MX RT1052号令者上手指南

    RT-Thread文档_正点原子 I.MX RT1052 号令者上手指南
    发表于 02-22 18:26 3次下载
    RT-Thread文档_正点原子 I.MX RT1052号令者<b class='flag-5'>上手指南</b>

    RT-Thread文档_Nordic BSP 上手指南

    RT-Thread文档_Nordic BSP 上手指南
    发表于 02-22 18:26 7次下载
    RT-Thread文档_Nordic BSP <b class='flag-5'>上手指南</b>

    RT-Thread文档_其他开发板 上手指南

    RT-Thread文档_其他开发板 上手指南
    发表于 02-22 18:27 0次下载
    RT-Thread文档_其他开发板 <b class='flag-5'>上手指南</b>