1. 程式人生 > >51微控制器 流水燈 蜂鳴器應用

51微控制器 流水燈 蜂鳴器應用

/*======================================================*/
/*	時間:2015年7月27日 21:34:44 						*/
/*		:2015年7月29日 21:40:17 						*/
/*		:2015年8月2日 18:15:38 						*/
/*	功能:流水燈1 + 蜂鳴器								*/
/*	目的:51微控制器學習 									*/
/*		^_^……!											*/
/*======================================================*/

#include 
#include "commLib.h"

#define SHIFT_LEFT		0		// 左移
#define SHIFT_RIGHT		1		// 右移

sbit beep = P2^3;				// 蜂鳴器

int main(void)
{
	char shiftFlag = SHIFT_LEFT;
	unsigned char led = 0xFE;

	while (1)
	{
		P1 = led;
		beep = 0;		// 蜂鳴器發聲
		delay(50);
		beep = 1;		// 蜂鳴器關閉	

		
		// 此時最左邊的燈亮,0在最低位,所以要向高位移,即向左移
		if (0xFE == led)
		{
			shiftFlag = SHIFT_LEFT;
		}
		// 此時最右邊的燈亮,0在最高位,所以要向低位移,即向右移
		else if (0x7F == led)
		{
			shiftFlag = SHIFT_RIGHT;
		}
	
		switch(shiftFlag)
		{
			// 左移
			case SHIFT_LEFT:
				led = ccCrol(led, 1);
				break;

			// 右移
			case SHIFT_RIGHT:
				led = ccCror(led, 1);
				break;
		}
		//延時100ms
		delay(50);
	}

	return 0;
}

相關推薦

51微控制器 流水 應用

/*======================================================*/ /* 時間:2015年7月27日 21:34:44 */ /* :2015年7月29日 21:40:17 */ /* :2015年8月2日 18:15:38

51微控制器——流水

//流水燈,同時蜂鳴器響 #include <reg51.h> #include <intrins.h> unsigned char i,j,k,t; sbit beep=P2^3; void delay10ms() { for(i=100;i>

微控制器==獨立按鍵+(10)

#include <reg52.h> #define KEYPORT P2 sbit beep = P1^7; #define SEGPORT P0 unsigned char Hi

微控制器入門學習六 STM32微控制器學習三

蜂鳴器的控制仍是GPIO的入門開發,本篇僅羅列下蜂鳴器的相關概念和蜂鳴器開發原始碼 1、蜂鳴器 蜂鳴器是一種一體化結構的電子訊響器,採用直流電壓供電,廣泛應用於計算機、印表機、影印機、報警器、電子玩具、汽車電子裝置、電話機、定時器等電子產品中作發聲器件。

51微控制器學習記錄之

蜂鳴器發聲原理 是電流通過電磁線圈,使電磁線圈產生磁場來驅動振動膜發聲的,因此需要一定的電流才能驅動它,微控制器IO引腳輸出的電流較小,微控制器輸出的TTL電平基本上驅動不了蜂鳴器,因此需要增加一個電流放大的電路。三極體的作用為驅動,通過三極體放大驅動電流,從而可以讓蜂鳴器發出聲音。 有源蜂

51微控制器驅動無源

在學習過程中遇到如下例題:8個發光管由上至下間隔1s流動,其中每個管亮500ms,滅500ms,亮時蜂鳴器響,滅時關閉蜂鳴器,一直重複下去。 流水燈的程式相對我個人來說比較簡單,但是蜂鳴器有些難度,正常給I/0口一個訊號,蜂鳴器既然不響,後經查證是無源蜂鳴器; 無源

單片機遠程控制步進電機、LED

點亮led clas jsb track orm uart 能夠 置0 上位機 通過採用C#語言實現的上位機控制單片機的步進電機模塊、LED燈和蜂鳴器模塊,使步進電機進行正、反轉和停止並控制轉速;LED燈模塊進行有選擇的呼吸式表達;蜂鳴器模塊的開始和終止。 上

微控制器中使用三極體驅動

【背景知識】 NPN型三極體,由三塊半導體構成,其中兩塊N型和一塊P型半導體組成,P型半導體在中間,兩塊N型半導體在兩側。PNP型三極體,是由兩塊P型半導體中間夾著一塊N型半導體所組成的三極體,所以稱為PNP型三極體。也可以描述成,電流從發射極E流入的三極體。三極體最主要的功能就是電流放大和

實現音樂播放及應用解析、程式碼實現

兩者區別 首先,需要說明的是,這裡的“源”不是指電源。而是指震盪源。 無源蜂鳴器的特點是: 1、 無源內部不帶震盪源,所以如果用直流訊號無法令其鳴叫。必須用2K~5K的方波(建議使用PWM)去驅動它           &nbs

9.9 微控制器

蜂鳴器從結構區分分為壓電式蜂鳴器和電磁式蜂鳴器。壓電式為壓電陶瓷片發音,電流比較小一些,電磁式蜂鳴器為線圈通電震動發音,體積比較小。按照驅動方式分為有源蜂鳴器和無源蜂鳴器。這裡的有源和無源不是指電源,而是振盪源。有源蜂鳴器內部帶了振盪源,如圖 9-8 所示中,給了 BUZZ

51微控制器交通(定時+38譯碼+中斷)

#include <reg52.h> /************ 交通燈 ***********/ #define GPIO_DIG P0 //數碼管顯示交通燈等待的時間 #define GPIO_TRAFFIC P1 //定義交通燈 sbit RED10 = P1

am335x_y驅動

ati b-s dev mach-o name ive () drivers app 修改文件:1、板級文件/arch/arm/mach-omap2/board-am335xevm.c static struct platform_device buzzer_device=

FPGA學習之演奏樂曲

div 二分 sign times 實驗目的 arch 學習 ilo 頻率 參考鏈接:http://www.cnblogs.com/kongtiao/archive/2011/07/20/2111581.html 一、實驗目的:學習驅動FPGA之IO引腳來控制蜂鳴器演奏音樂

linux驅動開發之驅動源碼分析(一)

linux 蜂鳴器 驅動 蜂鳴器的驅動源碼在/driver/char/buzzer/x210-buzzer.c文件中,源碼如下#include <linux/module.h> #include <linux/kernel.h> #include <linux

C51演奏兩只老虎

beat 函數 char 播放 綁定 else i++ 重新 ndt /*兩只老虎**/ #include<reg52.h> sbit Buzz = P1^6; //聲明綁定蜂鳴器 unsigned int code NoteFrequ[]={ 523,58

有源和無源

音符 就會 控制 聲音 body post div gpo blog 有源蜂鳴器和無源蜂鳴器的“源”指的不是電源,而是震蕩源。 有源蜂鳴器內部帶震蕩源,通電就會叫。 無源蜂鳴器不帶震蕩源,必須用一定頻率的方波(常見2K到5K)驅動。 有源蜂鳴器通常比無源的貴。 用萬用表電阻

樹莓派超聲波測距+(c語言)

mic 程序 老師 SM tput measure github stop 一個   前邊我們已經詳細的講解了樹莓派控制超聲波模塊測距(http://www.cnblogs.com/yuemo/p/8888342.html)和超聲波控制蜂鳴器模塊發聲(http://www.

info alt com .com bubuko image bsp 圖片 img 有源蜂鳴器~~~電磁式蜂鳴器 無源蜂鳴器~~~壓電式蜂鳴器 蜂鳴器

版天空之城

aps lee lose efi 前綴 code play 不錯 isp 頹。。。 無意中(你可以說是故意的)聽到學長當年弄的蜂鳴器版的天空之城,還不錯,放到博客上。 1 #include <cstdio> 2 #include <w

Ardupilot(PX4)飛控驅動和RGB細節

initial 控制 text ict notify ble default 參數 neither Ardupilot(PX4)飛控驅動蜂鳴器細節 飛控代碼細節 任務調用頻率50HZ(20ms),buzzer.update() 內部將頻率減少到10HZ(100ms)