zoukankan      html  css  js  c++  java
  • atmega8 例程:系统库函数的延迟

    /*********************************************************** 
    * 函数库说明:ATMEGE8 延迟库函数
    * 版本: v1.0
    * 修改: 庞辉
    * 修改日期: 2011年08月02日
    *
    * 说明: 无
    *
    * 版本更新:
    *
    ************************************************************
    *注意: LED PC5
    **********************************************************
    */

    #include <avr/io.h>

    //定义外部晶振
    #define F_CPU 6000000UL

    //延迟包含头文件
    #include <util/delay.h>

    //函数声明
    void Delay_s(int ss);


    int main(void)
    {
    //LED等PC5设置为输出
    DDRC |= (1 << DDC5);
    //起始PC5输出高电平,LED不亮
    PORTC |= (1 << PC5);

    while(1)
    {
    //取反
    PORTC ^= (1 << PC5);
    //延迟1s
    Delay_s(1);
    }

    return 0;
    }

    /***********************************************************
    ** 名称:void Delay_s(int ss)
    ** 功能:精确1s延迟
    ** 入口参数:ss 需要延时的秒数
    ** 出口参数:无
    ** 使用说明:系统库函数延迟因晶振不同有大小限制
    **********************************************************
    */
    void Delay_s(int ss)
    {
    int i = 0;

    while(ss--)
    {
    for(i = 0; i < 25; i++)
    {
    _delay_ms(40);
    }
    }

    }

    //首先库文件<util/delay.h>里面不再定义F_CPU(即晶振频率),所以在main.c中自行定义。
    //且系统延迟函数因晶振的不同对延迟大小有限制,需要注意:
    /**
    \ingroup util_delay

    Perform a delay of \c __us microseconds, using _delay_loop_1().

    The macro F_CPU is supposed to be defined to a
    constant defining the CPU clock frequency (in Hertz).

    The maximal possible delay is 768 us / F_CPU in MHz.
    */


    /**
    \ingroup util_delay

    Perform a delay of \c __ms milliseconds, using _delay_loop_2().

    The macro F_CPU is supposed to be defined to a
    constant defining the CPU clock frequency (in Hertz).

    The maximal possible delay is 262.14 ms / F_CPU in MHz.
    */
  • 相关阅读:
    nginx 中用 sed 批量增加配置文件内容
    apache中 sed 指定文件中某字符串增加行
    centos7 下 nfs 搭建总结
    centos7.2 环境下两个数据库的安装部署
    centos7.2 环境下 mysql-5.1.73 安装配置
    二代云盒混合网
    安装tftp
    云盒所有服务检查
    将某个目录下的 文件(字符窜) 只将数字过滤出来
    让VS2012支持Less css
  • 原文地址:https://www.cnblogs.com/pang123hui/p/2312376.html
Copyright © 2011-2022 走看看