標(biāo)題: 單片機(jī)流水燈通俗講解 [打印本頁(yè)]

作者: 51hei森林    時(shí)間: 2016-3-15 02:14
標(biāo)題: 單片機(jī)流水燈通俗講解
筆記3_流水燈

學(xué)習(xí)目標(biāo)::

1 延時(shí)函數(shù)的原理及使用

2 for循環(huán)語(yǔ)句的使用,while循環(huán)的使用。(最好看看書學(xué)這些語(yǔ)法)

目的:使8個(gè)或多個(gè)LED燈按照你的設(shè)計(jì)亮滅。

各種軟件分享:

http://www.torrancerestoration.com/bbs/dpj-897-1.html
延時(shí)函數(shù):


yanshi(注:這個(gè)名字自己起) (int a)

{

     int i,j,a;

    for(i=0;i<a;i++)

      for(j=0;j<110;j++)

}

每一條語(yǔ)句的執(zhí)行都會(huì)用一點(diǎn)時(shí)間,這個(gè)函數(shù)就是讓單片機(jī)不停的執(zhí)行沒(méi)有什么用的語(yǔ)句,從而消耗時(shí)間,達(dá)到延時(shí)的目的。




讓8個(gè)燈閃爍的程序:

#include<reg52.h>

yanshi (int a)

{

     int i,j,a;

    for(i=0;i<a;i++)

      for(j=0;j<110;j++)

}

main ()

{

   while(1)

   {

    P1=1;

    yanshi (100);//延時(shí)100毫秒,讓燈亮100ms

    P1=0;

     yanshi (100);//讓燈滅100毫秒。

   }

}

用從上面的程序可以試著去改寫一個(gè)流水燈程序。


不管程序多長(zhǎng),它都是模塊化的,不要看見(jiàn)程序很長(zhǎng)就不敢讀,一個(gè)模塊一個(gè)模塊的讀,弄懂每一個(gè)模塊的功能就很簡(jiǎn)單了。




答案:

#include<reg52.h>

yanshi (int a)

{

     int i,j,a;

    for(i=0;i<a;i++)

      for(j=0;j<110;j++)

}

main ()

{

   while(1)

   {

    P1=0;//讓全部的燈滅。

P1^0=1

    yanshi (100);//讓燈1亮100ms

P1^1=1;

    yanshi (100);//讓燈2亮100ms

P1^2=1

    yanshi (100);//讓燈3亮100ms

P1^3=1

    yanshi (100);//讓燈4亮100ms

P1^4=1

    yanshi (100);//讓燈5亮100ms

P1^5=1

    yanshi (100);//讓燈6亮100ms

P1^6=1

    yanshi (100);//讓燈7亮100ms

P1^7=1

    yanshi (100);//讓燈8亮100ms

   }

}

真的沒(méi)想到會(huì)有這么多人會(huì)關(guān)注我的公眾號(hào),這個(gè)公眾號(hào)剛剛開通的時(shí)候一直沒(méi)有人關(guān)注,我以為或許是我的方法不被人接受,結(jié)果今天看了一下竟然增加了這么多人。感謝大家的認(rèn)可,我也會(huì)認(rèn)真學(xué)習(xí),把學(xué)習(xí)過(guò)程中的經(jīng)驗(yàn)給大家分享;蛟S我不能教你們什么,但希望新手能在入門時(shí)少走彎路。







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1