女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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單片機
    +關注

    關注

    277

    文章

    5711

    瀏覽量

    127367
  • C語言
    +關注

    關注

    180

    文章

    7632

    瀏覽量

    141709
  • 流水燈
    +關注

    關注

    21

    文章

    433

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    AT89C51 單片機中文資料

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

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

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

    51單片機pwm和spwm

    51單片機pwm
    發表于 01-08 15:54 ?3次下載

    51單片機溫度報警器

    電子發燒友網站提供《51單片機溫度報警器.zip》資料免費下載
    發表于 12-30 14:16 ?3次下載

    低成本單片機方案——觸摸流水燈開關控制

    概述本方案旨在提供一種基于低成本單片機的觸摸流水燈開關控制解決方案。該方案結合了單片機技術、電容式觸摸傳感技術和LED驅動技術,實現了通過觸摸操作控制流水燈的效果。
    的頭像 發表于 12-26 16:37 ?816次閱讀
    低成本<b class='flag-5'>單片機</b>方案——觸摸<b class='flag-5'>流水燈</b>開關控制

    51單片機核心板原理圖

    51單片機核心板原理圖
    發表于 12-16 11:30 ?4次下載

    51單片機中為什么很少出現printf的身影

    51單片機中為什么很少出現 printf 的身影?是用不了嗎? 不是的,51單片機可以用 printf,只是不建議使用。 平時我們在操作系統上寫C語言代碼,使用 printf 可以把數
    的頭像 發表于 12-03 10:46 ?1383次閱讀
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>中為什么很少出現printf的身影

    基于51單片機的手動數字時鐘

    具體實現功能由51單片機+8位共陰數碼管+獨立按鍵構成。具體功能:(1)利用數碼管顯示時分秒,顯示格式為“時-分-秒”;(2)利用6個按鍵控制時、分、秒,設定好后自動開始時鐘顯示;(3)設置秒復位
    的頭像 發表于 10-22 14:12 ?637次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的手動數字時鐘

    基于51單片機的遙控開關仿真(雙機通信)

    具體實現功能由51單片機+獨立按鍵+繼電器+LED燈等構成。實現功能:(1)本仿真設計的是一款遙控開關,采用51單片機進行遙控器與主機的設計;(2)遙控器由
    的頭像 發表于 10-22 14:12 ?825次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的遙控開關仿真(雙機通信)

    基于51單片機的跑馬燈/流水燈系統

    具體實現功能(1)9種LED流水燈模式通過按鍵進行切換,數碼管顯示流水燈模式。(2)通過加減按鍵可以切換每種LED流水燈的速度。仿真演示視頻:設計介紹51
    的頭像 發表于 10-22 14:12 ?702次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的跑馬燈/<b class='flag-5'>流水燈</b>系統

    如何實現51單片機與PC的串行通信

    51單片機與PC的串行通信是一種常見的通信方式,它允許單片機通過串行接口與PC進行數據交換。這種通信方式在嵌入式系統、工業控制、物聯網等
    的頭像 發表于 10-21 11:35 ?2663次閱讀

    51單片機驅動

    電子發燒友網站提供《51單片機驅動.exe》資料免費下載
    發表于 09-20 11:46 ?5次下載

    51單片機晶振的問題總結

    電子發燒友網站提供《51單片機晶振的問題總結.doc》資料免費下載
    發表于 09-07 09:32 ?0次下載

    stm32和51單片機的區別是什么

    架構差異: STM32是基于ARM Cortex-M系列內核的32位微控制器,具有更高效的處理能力和更豐富的外設。 51單片機是基于8051內核的8位微控制器,處理能力相對較低,外設也相對有限
    的頭像 發表于 09-02 09:33 ?1683次閱讀

    51單片機燒錄軟件怎么用

    準備工作 確保您已經安裝了51單片機燒錄軟件,如Keil、IAR等。 準備好51單片機開發板和燒錄器,如STC-ISP等。 確保您的計算機已經安裝了相應的驅動程序。 安裝燒錄軟件 從官
    的頭像 發表于 08-22 09:26 ?2848次閱讀