伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機流水燈制作

小黃1176 ? 來源: 小黃1176 ? 作者: 小黃1176 ? 2024-02-26 10:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

?流水燈是學習51單片機的一個基本項目,是我們對單片機IO口輸出認識的基本項目。當然學會了花樣流水燈也很好玩。

下面就分享一種51單片機流水燈制作的方法。

一、流水燈原理圖

wKgaomXb8VyASKTsAACFYv8Crn0012.png

二、相關知識

1、while語句

書寫格式:while(表達式) { 語句; //循環體 。。。 }

備注:當while語句中的()里的值為非零值是,while所帶的語句就會執行,為0時程序不執行(只有為0值時不執行),括號里可以是常量,可以是變量,也可以是一個公式。

我們常用寫法:

(1)while(1){ 語句; } //這樣寫代表了這是一個死循環,{ }中的程序會一直循環執行

(2)while(a--){ 語句; } //這樣寫就是當a每執行一次循環會自減一個數,當a的值減到0了,就不執行了。

2、for循環語句

除了while語句語句之外,c語言還有一個for循環語句。

書寫格式:for(初始化表達式;條件表達式;增量表達式) { 語句; 。。。 }

常用寫法:

for(i=0;i<8;i++) ?{ ? ? 語句:。。。 ?}

//這樣寫代表了,for語句的{}中的程序循環執行,循環的次數由()的內容決定,()中的意思是i變量從0開始,到8結束(不含8),i每次自加1,加到8 了跳出循環。

3、左移右移指令

運算符 意義 示例(設j=0x10)
<< 左移(各位同時左移若干位,高位舍棄,低位補零) k=j<<1;//k=0x20 wKgaomXb8OyAOk9nAAAxdleDWKw360.png
>> 右移(各位同時右移若干位,低位舍棄,高位補零) k=j>>1;//k=0x08

wKgaomXb8PGAOFG-AAAxgSp2o54508.png

4、位取反指令

運算符 意義 示例(設a=0x25)
~ 按位取反 c=~a; //c=0xda

wKgaomXb8RWAfCPXAAAJHpseGW4808.png

5、延時函數

/*--------微秒延時--------*/
void delay_us(uint z)
{
uint x;
for(x=z;x>0;x--);
}

第一個延時函數是微秒級延時,程序原理是for語句每循環一次,單片機執行一次空語句,51單片機(接12M晶振)執行每次空語句實際不止1us,一般會是幾微秒。
/*--------毫秒延時--------*/
void delay_ms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

第二個延時函數是毫秒級延時,其中的兩個for語句成為嵌套訓話語句,下面的for嵌套在上面的for里面執行。下面的for代表了循環執行110次空語句,得到一個1ms延時,此時上面的for循環多少次就延時多少毫秒,而延時多少毫秒由,變量z決定。

三、例程

 
/*---------------------------
流水燈接口:P1    
------------------------------*/
 
 
#include
 
#define uint unsigned int
#define uchar unsigned char
 
 
 
/*--------微妙延時--------*/
void delay_us(uint z)
{
	uint x;
	for(x=z;x>0;x--);
}
/*--------毫秒延時--------*/
void delay_ms(uint z)
{
  uint x,y;
	for(x=z;x>0;x--)
	   for(y=110;y>0;y--); 
}
 
/*----------主函數-----------*/
void main()
{
	
	P0=0x00;P1=0xff;P2=0x00;P3=0x00;//端口初始化,熄滅所有LED燈
	uchar i,j;
	while(1)
	{
	  j=0x01;
	  for(i=0;i

審核編輯 黃宇

poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

?

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 51單片機
    +關注

    關注

    278

    文章

    5716

    瀏覽量

    134685
  • C語言
    +關注

    關注

    183

    文章

    7645

    瀏覽量

    145894
  • 流水燈
    +關注

    關注

    21

    文章

    436

    瀏覽量

    61976
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何入門單片機/嵌入式?

    ,比如液晶屏,步進電機,紅外,語音,以太網等等,理論上,學習任何一款單片機產品的使用,只要能點亮流水燈(使用GPIO),就算半只腳進門了,剩下的就是學一學那些外設的寄存器如何使用,常見的有UART,i2c
    發表于 02-02 06:57

    學習單片機快速方法

    做出來。對于初學者來說我建議有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、AD或DA、液晶、蜂鳴器,這就差不多了。 一般買單片機學習板都配有視頻教學光盤(沒有的別買)和一些資料。比如應用軟件什么的。建議在網
    發表于 01-14 07:42

    51單片機RS485編程實例資料

    詳細介紹51單片機RS485通信接線和編程代碼
    發表于 10-20 14:57 ?5次下載

    怎么測單片機系統頻率

    單片機系統頻率是指單片機工作時的時鐘頻率,它直接影響單片機的運行速度和處理能力,準確測量系統頻率對單片機應用開發、程序調試和性能優化具有重要意義。測量
    的頭像 發表于 07-25 11:39 ?900次閱讀

    單片機怎么驅動電機?

    在各類自動化設備和智能裝置中,電機是重要的執行部件,而單片機作為控制核心,需要通過特定的方式驅動電機運轉。單片機驅動電機并非直接連接即可,而是要根據電機類型和功率,搭配合適的驅動電路,才能實現穩定
    的頭像 發表于 07-25 09:31 ?1063次閱讀

    單片機怎么燒程序

    單片機燒程序是將編寫好的程序代碼寫入單片機內部存儲單元,讓單片機按照預設邏輯工作的過程,是單片機應用開發中不可或缺的環節。無論是簡單的燈光控制程序,還是復雜的工業控制算法,都需要通過燒
    的頭像 發表于 07-23 11:47 ?1594次閱讀

    大一暑假適合學51單片機嗎?

    大一暑假學 51 單片機,簡直是老天爺賞飯吃的黃金窗口。我當時就是靠著這兩個月,把從課本上看來的 C 語言指針、循環語句,變成了能讓 LED 按節奏跳舞的真本事。
    的頭像 發表于 07-16 11:42 ?669次閱讀
    大一暑假適合學<b class='flag-5'>51</b><b class='flag-5'>單片機</b>嗎?

    AT89C51 單片機中文資料

    電子發燒友網站提供《AT89C51 單片機中文資料.pdf》資料免費下載
    發表于 06-24 15:29 ?1次下載

    圖解單片機功能與應用(完整版)

    從基礎知識的介紹出發,圖文并茂,直觀、系統地介紹了單片機的內部結構、工作原理和應用技巧。全書分為10章,內容包括51單片機編程資源圖解、51單片機
    發表于 06-16 16:52

    2.4寸TFT彩屏配套測試程序-51單片機

    如題,2.4寸TFT彩屏配套測試程序-51單片機
    發表于 06-04 16:26 ?0次下載

    基于51單片機的溫濕度檢測與調節系統電路圖

    電子發燒友網站提供《基于51單片機的溫濕度檢測與調節系統電路圖》資料免費下載
    發表于 05-12 17:23 ?4次下載

    51+單片機TCP-IP+協議棧ZLIP源碼

    概述 單片機上網技術,是當前的一個熱門技術。單片機上網技術中的一個重要部分是在單片上實現 TCP/IP 協議棧。現在可獲得的 TCP/IP 源代碼一般并不為 51
    發表于 04-22 15:11

    新概念51單片機C語言教程入門、提高、開發、拓展全攻略

    庫函數實現流水燈 第2篇 內外部資源操作篇 3.1 數碼管顯示原理 3.2 數碼管靜態顯示 3.3 數碼管動態顯示 3.4 中斷概念 3.5 單片機的定時器中斷 4.1 獨立鍵盤檢測 4.2 矩陣鍵盤
    發表于 04-15 13:57

    基于51/32單片機按鍵控制步進電機正反轉,A4988驅動

    基于51/32單片機按鍵控制步進電機正反轉,A4988驅動
    發表于 04-14 15:05 ?7次下載

    用AltiumDesigner設計的51單片機最小系統原理圖PCB圖

    用AltiumDesigner設計的51單片機最小系統原理PCB圖,非常適合DIY制作.
    發表于 04-09 13:30