久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3334|回復: 6
打印 上一主題 下一主題
收起左側

怎么理解delay定義2個變量,用單片機LED閃爍程序舉例來說

[復制鏈接]
跳轉到指定樓層
樓主
ID:544869 發表于 2019-6-23 07:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
剛學習LED閃爍程序寫法之一是:
單片機源程序如下:
#include<reg52.h>

sbit LED=P2^0 ;
void delay( unsigned int i)
{
while(i--);
}
void main()
{
  while(1)
  {
   delay(50000);
   LED=~LED;  
  }
}
~~~~~~~~~~~~~
無意中,看到一種寫法是:
#include<reg52.h>

sbit LED=P2^0 ;
void delay( unsigned int t)
{
   unsigned int i;
   for(i=0;i<t;i++);
}
void main()
{
  while(1)
  {
   delay(50000);
   LED=~LED;  
  }
}
~~~~~~~~~~~~
對于后一種寫法中
void delay( unsigned int t)
{
   unsigned int i;
   for(i=0;i<t;i++);
}
為啥用了2個變量,一直搞不懂。
希望網友指點一下,謝謝啦!!!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:552614 發表于 2019-6-23 09:51 | 只看該作者
應該是一樣的,有的人習慣用while語句,有的人用for語句。
回復

使用道具 舉報

板凳
ID:332444 發表于 2019-6-23 10:14 | 只看該作者
2個變量可以從語句看出是用于參與比較的,一個變量用于直接參與計算的。
回復

使用道具 舉報

地板
ID:410942 發表于 2019-6-23 11:34 | 只看該作者
這個可以這樣理解:后面的延時函數是一個帶參數的函數..可以動態的調用,delay(10),delay(100)這樣就會實現不同時間的延時,函數內面的t就是運算過程中的一個變量,用來對比運算,只要t<i就為真,就累加一次,這樣就可以實現延時。
回復

使用道具 舉報

5#
ID:207421 發表于 2019-6-23 15:50 | 只看該作者
雖然都是帶參數的函數,但是while 和 for 的語法是不一樣的,使用方法肯定不一樣而已
void delay( unsigned int i)
{
    while(i--);
}
void delay( unsigned int t)
{
   unsigned int i;   
   for(i=0;i<t;i++);
}  //你要1個變量也行,你看下面
void delay()
{
   unsigned int i;   
   for(i=0;i<5000;i++);
}  // 修改后
回復

使用道具 舉報

6#
ID:570488 發表于 2019-6-24 09:22 | 只看該作者
延時函數本身的作用就是通過循環的運算消耗時間,達到制造間隔的目的。
至于你提到的為什么用兩個變量,那是for語句的一種格式~
while和for都是按需使用
但是for語句利用嵌套,可以達到倍數效果。也就是函數傳入參數比較小,也可以取得多倍延時的效果~
回復

使用道具 舉報

7#
ID:544869 發表于 2019-7-3 20:18 來自手機 | 只看該作者
非常感謝樓上各位師傅的指導,不一一回復了,謝謝熱心的你們! 按你們的說法,我琢磨了好多天,已經基本弄懂了。 在看程序時,發現還有延時用3個變量,常用的如下: void delay(unsigned char i) {  unsigned char j,k; for(j=i; j>0; j- -) for(k=125; k=0; k- -) } 這個delay用了i, j, k三個變量,但是在main里,一個也沒提到,這又怎么理解呢?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费欧美 | 国产一区二区精品自拍 | 亚洲欧洲精品成人久久奇米网 | 一级片在线观看 | 日韩成人在线观看 | 国产小视频在线 | 国产欧美精品区一区二区三区 | 日韩av在线中文字幕 | 久久久久久黄 | 三级黄色片在线播放 | 一区二区三区免费在线观看 | 亚洲第一天堂无码专区 | 五月天综合网 | 国产99久久久久 | 一区二区三区四区在线播放 | 亚洲国产精品一区二区久久 | 男人天堂网址 | 天天视频成人 | 国产午夜av片 | 日韩欧美视频在线 | 国产有码 | 国产乱码久久久久久 | 亚洲精品视频免费 | 精品国产欧美在线 | 亚洲激情一级片 | 国产黄色免费网站 | 精品粉嫩超白一线天av | 久久久国产一区二区三区 | 中文在线一区二区 | 欧美精品一区二区三区蜜桃视频 | 日韩一区二区三区在线视频 | 91精品国产91久久久久游泳池 | www.国产精品 | 成人一区二区三区在线观看 | 午夜久久久 | h在线免费观看 | 欧美一区2区三区3区公司 | 日韩三级免费观看 | 亚洲精品国产精品国自产在线 | 日本 欧美 国产 | 久草视频网站 |