• <i id="jb6ye"><bdo id="jb6ye"></bdo></i>
    1. <b id="jb6ye"><bdo id="jb6ye"><tr id="jb6ye"></tr></bdo></b><tt id="jb6ye"><tr id="jb6ye"><dfn id="jb6ye"></dfn></tr></tt><track id="jb6ye"><big id="jb6ye"></big></track>
    2. 专注电子技术学习与研究
      当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

      如何严格1秒点亮一次

      作者:逍遥王   来源:原创   点击数:  更新时间:2009年11月26日   【字体:

        C51设计,单片机晶振为11.0592MHz。P1.5口每1秒钟输出一次高电平或低电平,但高低电平时长不一样。还请各位高手帮我改进一下。
      我也采用过for语句,但是设计不成严格的1s输出一次的方式。

      #include<reg52.h>
      sbit D1=P1^5;
      unsigned int a;
      void main()
      {
       while(1)
       { a=46500;
        D1=0;
        while(a--);
        a=45701;
        D1=1;
        while(a--);
       }
      }
       

      -----------------------

      版主回复:

       你上面这个延时是非常不精确,具体你可以看keil 里面的汇编文件就可分析出原因来,本站曾经发表过一篇精确延时的文章,希望对你有帮助 http://www.shijip2p.com/mcu/696.html,另外使用定时器也是非常简单的.

      一般如果是用循环延时使用12M的晶振要方便些,如果是定时器则是用11.0592的要方便和精确一些.

      关闭窗口

      相关文章

      68日本xxxxxxxxx,水萝拉日语中字在线,德国videos高清,欧美色图片 网站地图