日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]單片機報警聲

兩個簡單的報警程序,希望能對大家有所啟發(fā),讓單片機發(fā)出更美妙的音響

/***********************************************

* 標題: 簡單報警聲程序

* 日期: 2008-4-30

* yongsheng.gys@163.com

***********************************************/

#include

#include

sbit SPK = P3^4;

unsigned char frq;

void delayms(unsigned char ms)

// 延時子程序

{

unsigned char i;

while(ms--)

{

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

}

}

void timer0() interrupt 1 using 1

{

TH0 = 0xfe;

TL0 = frq;

SPK = ~SPK;

}

main()

{

TMOD = 0x01;

frq = 0x00;

TH0 = 0x00;

TL0 = 0xff;

TR0 = 1;

IE = 0x82;

while(1)

{

frq++;

delayms(1); //改變此處可以改變報警聲的節(jié)奏長度

}

}

/***********************************************

* 標題: 單片機演奏消防車的報警聲音

* 日期: 2008-4-30

* yongsheng.gys@163.com

***********************************************/

#include

#include

sbit SPK = P3^4; //喇叭接到P3.4上

unsigned char frq;

unsigned char flag;

void delayms(unsigned char ms)

// 延時子程序

{

unsigned char i;

while(ms--)

{

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

}

}

void timer0() interrupt 1 using 1

{

TH0 = 0xfe;

TL0 = frq;

SPK = ~SPK;

}

void main()

{

TMOD = 0x01;

frq = 0x00;

TH0 = 0x00;

TL0 = 0xff;

TR0 = 1;

IE = 0x82;

flag=0;

while(1)

{

switch(flag)

{ case 0:frq++;break; //flag標志置0時,frq遞增

case 1:frq--;break; //flag標志置1時,frq遞減

}

if (!(frq^0xff)) flag=1; //當frq增加到FFH時,flag置1,準備frq遞減

if (!(frq^0x00)) flag=0; //當frq遞減到00H時,flag置0,準備frq遞增

delayms(15); //^為邏輯異或改變此值可改變節(jié)奏

}

}

 

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉