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

當前位置:首頁 > 單片機 > 單片機
[導讀]1、更改keil uvision3的字體以及關鍵字顏色的設置:修改順序入下1打開edit2打開edit最下方configuration3打開colars4選擇8051editcfile可以修改C語言的大小和關鍵詞著色問題。源自http://zhidao.baidu.com/question/

1、更改keil uvision3的字體以及關鍵字顏色的設置:

修改順序入下1打開edit2打開edit最下方configuration3打開colars4選擇8051editcfile可以修改C語言的大小和關鍵詞著色問題。
源自http://zhidao.baidu.com/question/137561189.html


2、位定義:sbitLED00 = P0^0 ; (放在頭文件下面,main()函數(shù)上方)。3、12M晶振,1ms基準延時程序如下:


voiddelay1ms(unsignedinti)

{

unsignedcharj;

while(i--)

{

for(j=0;j<125;j++)//1ms基準延時程序

{

;

}

}


//j<125是因為for(){;}循環(huán)每循環(huán)一次括號內(nèi)消耗3個指令周期,{;}內(nèi)執(zhí)行一個空語句消耗1個指令周期,即:每循環(huán)一次消耗4個指令周期(12M晶振:1us*4)


//注意在寫延時函數(shù)時while(){}和for(;;){}的區(qū)別。


6、用程序?qū)崿F(xiàn),在單片機的某一個引腳上產(chǎn)生一定頻率的方波。

最好利用定時器實現(xiàn),這樣比較精確。通過延時函數(shù)實現(xiàn)也行,不過要確保延時的精確度,最好不要使用帶有參數(shù)的延時函數(shù)。

示例如下:

無源蜂鳴器要發(fā)聲音,必須給它提供一定頻率(1KHz左右)的方波。(聲音頻率)

實現(xiàn)方法:周期性的將打片機引腳“置位、延時、復位、延時”

示例中無源蜂鳴器接在AT89S52單片機的P3^6引腳:


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

*說明:AT89S52芯片,12M晶振

*此開發(fā)板蜂鳴器的控制端口和單片機的P3^6引腳相連接

*用三極管進行驅(qū)動

*無源蜂鳴器:需要寫函數(shù)產(chǎn)生1KHz左右的聲音頻率(方波)

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

#include

sbitFMQ=P3^6;//位定義,定義單片機引腳

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

*名稱:delay1ms()

*功能:延時1ms

*參數(shù):intt

*返回:無

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

voiddelay1ms(intt)

{

unsignedchari;

while(t--)

{

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

{

;

}

}

}

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

*名稱:delay500us()

*功能:延時500us

*參數(shù):無

*返回:無

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

voiddelay500us(void)

{

inti;

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

{

;

}

}

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

*名稱:beep_sound()

*功能:產(chǎn)生FMQ發(fā)聲需要的1KHz的聲音頻率

*參數(shù):無

*返回:無

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

voidbeep_sound(void)

{

FMQ=0;

delay500us();

FMQ=1;

delay500us();

}

voidmain(void)

{

inti,t;

while(1)

{

t=1000;//蜂鳴器發(fā)聲1000*1ms1KHz頻率的方波,一個周期是1ms

for(i=0;i

{

beep_sound();

}

FMQ=1;//關掉FMQ1s(延時)

delay1ms(1000);

}

}

將delay500ms()函數(shù) 和 beep_sound()函數(shù)改成如下形式,蜂鳴器的聲音頻率和發(fā)聲時長完全面目全非了,很無解!歡迎有經(jīng)驗的朋友通過評論的方式進行交流。



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

*名稱:delay500us()

*功能:延時500us

*參數(shù):intt

*返回:無

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

voiddelay500us(intt)

{

inti;

for(i=0;i<63*t;i++)

{

;

}

}

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

*名稱:beep_sound()

*功能:產(chǎn)生FMQ發(fā)聲需要的1KHz的聲音頻率

*參數(shù):無

*返回:無

***********

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