以下介紹幾種在S3F9454/9444下驅(qū)動(dòng)蜂鳴器的編程示例,供參考
A.第一種,普通IO高低電平驅(qū)動(dòng)法
;運(yùn)行環(huán)境:S3F9454,Fosc=3.2MHz無(wú)分頻
;P2.0為蜂鳴輸出端口
;本例輸出頻率為4KHZ,即每250US一個(gè)周期,高低電平時(shí)間分別為125US
BEEP:
LDBTCON,#10100011B;看門(mén)狗禁用
DI
PUSHR5
PUSHR6
;首先配置P2.0為普通推挽輸出端口
ANDP2CONL,#0FEH
ORP2CONL,#02H
LDR6,#0FAH;R6設(shè)置輸出方波個(gè)數(shù),本例為250個(gè)(計(jì)時(shí)62.5MS)
ONE_BEEP:
LDR5,#27H;R5為頻率發(fā)生計(jì)時(shí)器,本例為近似125US(4KHZ)
XORP2,#01H
_LOOP:
DECR5
JRNZ,_LOOP
DECR6
JRNZ,ONE_BEEP
LDBTCON,#02H;恢復(fù)看門(mén)狗運(yùn)行
EI
POPR6
POPR5
RET
;-----------------------------------------------------------
B.利用P2.0配置為T(mén)0定時(shí)器匹配輸出方式產(chǎn)生
;注:該方式可用于帶多位數(shù)碼顯示掃描的軟件中,可有效避免因蜂鳴器
;輸出而造成的數(shù)碼顯示抖動(dòng)閃爍
;因定時(shí)器T0被分配作為T(mén)0匹配輸出定時(shí)器,所以本例中利用看門(mén)狗定時(shí)器
;的實(shí)時(shí)計(jì)時(shí)器BTCNT作為數(shù)碼顯示實(shí)時(shí)掃描計(jì)時(shí)器
;R0為蜂鳴時(shí)間長(zhǎng)短計(jì)時(shí)器,由主調(diào)用程序進(jìn)行予設(shè)置
;運(yùn)行環(huán)境:S3F9454,Fosc=3.2MHZ無(wú)分頻
;P2.0為蜂鳴輸出端口
;本例輸出頻率為4KHZ,即每250US一個(gè)周期,高低電平時(shí)間分別為125US
;-----------------------
BEEP:
DI
PUSHR1
PUSHT0CON
PUSHT0DATA
;在蜂鳴輸出前首先掃描一次數(shù)碼顯示
CALLLED_SCAN
ORP2CONL,#03H;setP2.0asT0matchoutput/every125us
LDT0CON,#10001000B;setT0inputcLOCk=Fosc/8
LDT0DATA,#32H
LDBTCON,#10100011B;DISAbleWatch-dogrun,
;butbtcntclkinputfxx/4096=1.280ms
NEXT_BEEP:
LDR1,#0AH
WAIT_CNT:
ORBTCON,#02H
_WAIT_CNT:
CPBTCNT,#02H
JRULT,_WAIT_CNT
ORBTCON,#02H;清看門(mén)狗定時(shí)器
CALLLED_SCAN;每計(jì)時(shí)2.56MS,則轉(zhuǎn)去實(shí)時(shí)掃描一次數(shù)碼顯示
DECR1
JRNZ,WAIT_CNT
DECR0
JRNZ,NEXT_BEEP
LDBTCON,#02H
ANDP2CONL,#0FEH;setT0aspush-pulloutput
ANDP2,#0FEH
POPT0DATA
POPT0CON
POPR1
EI
RET
-
蜂鳴器
+關(guān)注
關(guān)注
12文章
899瀏覽量
47761
發(fā)布評(píng)論請(qǐng)先 登錄
有效編程單片機(jī)有源蜂鳴器驅(qū)動(dòng)的方法
蜂鳴器按照驅(qū)動(dòng)方式可分為哪幾種
單片機(jī)驅(qū)動(dòng)蜂鳴器的方式有幾種
功率驅(qū)動(dòng)級(jí)驅(qū)動(dòng)蜂鳴器電路
單片機(jī)驅(qū)動(dòng)蜂鳴器原理與編程
單片機(jī)驅(qū)動(dòng)蜂鳴器原理與程序設(shè)計(jì)
蜂鳴器的分類(lèi)_單片機(jī)驅(qū)動(dòng)蜂鳴器_蜂鳴器的應(yīng)用
蜂鳴器的基本驅(qū)動(dòng)示例
無(wú)源蜂鳴器常規(guī)驅(qū)動(dòng)電路設(shè)計(jì)
單片機(jī)有源蜂鳴器驅(qū)動(dòng)之效率編程
有源蜂鳴器電路圖驅(qū)動(dòng)與蜂鳴器代碼編程-臻美智能電子
如何有效編程單片機(jī)有源蜂鳴器驅(qū)動(dòng)資料下載
單片機(jī)如何關(guān)掉蜂鳴器_如何有效編程單片機(jī)有源蜂鳴器驅(qū)動(dòng)
8550驅(qū)動(dòng)蜂鳴器電路分析
如何有效編程單片機(jī)有源蜂鳴器驅(qū)動(dòng)?
幾種驅(qū)動(dòng)蜂鳴器的編程示例
評(píng)論