![]() |
發布時間: 2020-9-7 17:02
正文摘要:這是一款購買的機器驅動的無源蜂鳴器測試到的波形,聲音還比較大,用的是兩個IO口直接連接到蜂鳴器兩端。 自己設計的如果只用一個IO口用三極管驅動,蜂鳴器一端接電源3V另一端經過三極管到地反而聲音更小!為了達 ... |
juncedz 發表于 2020-9-17 23:09 無源的就是這樣驅動的 推挽 最大的功率 |
QWE4562012 發表于 2020-9-16 18:14 是轟鳴片, 基本上報警聲音響的都是用這樣的,并且拆開看了好多。 如果沒有空間,也沒辦法, 單片機直接二口能夠驅動轟鳴片發聲音沒有看過, 不過那些音樂片 是直接有 io口 驅動 小喇叭的。聲音也可以的, |
交流、頻率 |
wulin 發表于 2020-9-15 19:29 謝謝大神 不甚感激 |
juncedz 發表于 2020-9-14 19:41 你好 用了三端電感?產品空間很小 不可能放這么大插件電感的。。。還有你這種是有源蜂鳴器吧 |
juncedz 發表于 2020-9-14 19:24 空間和成本 所以用的是壓電的無源 因為體積比較小 你那種應該是大才產品 直接用的喇叭吧?或者是電磁式的 |
wulin 發表于 2020-9-14 18:59 要用總線操作方法使2個端口同時翻轉。--------------------具體如何做?方法說下 |
QWE4562012 發表于 2020-9-15 18:32 由于你發的代碼不全,控制蜂鳴器端口翻轉的核心部分看不到,只能猜想是用的Px的Px.0和Px.1。所以很難用簡單幾句話表述清楚,直接給你寫個示例程序,稍有點C言語基礎就能看明白,既可以用仿真軟件仿真運行,也可以搭建實際電路測試。至于使用的端口不同,略改一下即可。有詳細注釋,別說還是看不懂。
|
ice615 發表于 2020-9-12 14:07 兄弟 程序它來了 有空看下 |
wulin 發表于 2020-9-14 18:59 總線操作方法?我怎么跟他說呢?他這里是直接操作的庫函數是嗎 |
以前的硬件方式: 用1個直徑10*高度15mm三腳的繞線電感,103電容,幾個三極管與電阻電容, 就用單片機開關一下三極管也聲音響的車喇叭一樣,可能達到80--90db。 有電容,開關一下,有延時,就不停的響。 軟件不懂,以前就這樣硬件用過。里面需要一定空間, 現在的報警器可能還是用這樣的硬件的才聲音好響。 |
QWE4562012 發表于 2020-9-14 15:45 這段代碼DrvGPIO_PT9_EnableOUTPUT(0x01);DrvGPIO_PT9_EnableOUTPUT(0x02);兩條指令之間會有時間差,做不到2個端口同時翻轉。要用總線操作方法使2個端口同時翻轉。 |
ice615 發表于 2020-9-12 14:07 void Beep(int iNum) { int i, j; DrvGPIO_PT9_EnableOUTPUT(0x01); DrvGPIO_PT9_EnableOUTPUT(0x02); for(i = 0; i < iNum; i++) { for(j = 0; j < 90; j++) { DrvGPIO_PT9_SetPortBits(0x01); DrvGPIO_PT9_ClrPortBits(0x02); Delay(43);//Delay(125);130 DrvGPIO_PT9_ClrPortBits(0x01); DrvGPIO_PT9_SetPortBits(0x02); Delay(43);//Delay(125);130 } } // if(iNum > 1) // Delay(10000); DrvGPIO_PT9_DisableOUTPUT(0x01); DrvGPIO_PT9_DisableOUTPUT(0x02); } 請賜教 |
wulin 發表于 2020-9-11 10:59 就這一個帖就能看出是高手。吳工你是高手!我喜歡你的回帖!受益匪淺! |
學習單片機lq 發表于 2020-9-7 22:09 本來你這個回復我不想理睬的 既然來了就回復下你 提高電壓這種方法說都不要說出來 誰不知道?這是電池產品,容量很小,而且這是IO口反相驅動 單片機電壓是3V 明白?如果空間夠 直接用電磁式的就行了,或者有5V系統 直接用5V供電就行了 |
ice615 發表于 2020-9-12 14:07 兄弟啊 我是搞硬件的 軟件不是我寫的 我周一讓他發給我 |
QWE4562012 發表于 2020-9-12 10:48 你沒有示波器嗎?直接用示波器兩個線接到兩個IO看波形就知道了,A=0的時候B=1,然后A=1,B=0,頻率使用蜂鳴器的頻率,這真不難呀!你上傳的波形已經可以了,至于波形的延時有毛刺什么的,難道不能先試一下效果嗎?燒錄到單片機上先試下效果,如果是聲音電流都符合了,再去找一下問題不行嗎? 如果是用兩個IO驅動的話是不用電感的,這要的是交流電的 一個IO驅動就要電感,我說得很明白了,既然是沒有空間,那就不管了,如果你要測試,可以試一下,從1mH電感慢慢的調試 |
一個軟件問題討論了五六天也不見把程序貼上來 |
QWE4562012 發表于 2020-9-12 11:42 圖1的的波形非常清楚的表示兩個端口電壓互為反相且時序準確,難道你看不出來???只是為了看波形和時序不必糾結選取哪個協議。與任何通訊協議也沒有絲毫關聯。 圖2波形兩個端口翻轉有明顯時間差,還疊加了異常短脈沖。明顯是軟件編寫有缺陷才會出現的現象。你把時間軸展開看會非常明顯。 |
univers 發表于 2020-9-12 09:26 怎么就那么多人叫我提高電壓。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。真是無語 |
yzwzfyz 發表于 2020-9-8 16:19 電源是3.0 這個沒得選 不可能升壓 |
Y_G_G 發表于 2020-9-11 11:52 是的 必須用交流電 圖剛更新了 貼出來了 |
Y_G_G 發表于 2020-9-11 11:52 4K的蜂鳴器 如果用兩個IO口的話 是否需要電感?這個電感的計算方法說下 |
這有啥難的,驅動電路看是沒問題的,三極管要用高放大倍數的為好,比如TO92封裝的,放大倍數200以上。想聲壓大,就上+5V 或+10V |
壓電蜂鳴器,可以直接把兩個引腳接到IO口,讓軟件工程師寫程序,發出蜂鳴器諧振頻率的脈沖 |
QWE4562012 發表于 2020-9-11 10:22 要想蜂鳴器聲音大不但要有足夠的驅動電壓還要求驅動頻率與蜂鳴器的諧振頻率相同或相近。樓主這個驅動波形不太好,有點交越失真,是程序沒有寫好。 |
QWE4562012 發表于 2020-9-11 10:21 你這個是壓電陶瓷片,是要用交流電的,簡單的開關是不行的 圖1可以驅動,單片機端口設定成強推挽輸出,輸出波形不是0101,而是:當A端口=0時,B端口=1,然后,B=0,A=1,使兩個端口輸出的是交流信號 圖3是要把二極管換成電感的,大概是幾mH左右,如果沒有空間就不管了 使用圖1的接法,先用示波器看效果:示波器的地線接一個端口,探頭接另外一個端口,看波形就知道頻率了 |
QWE4562012 發表于 2020-9-11 10:05 你沒有理解 “互為反相的3.3V矩形波” 的含義。如果你用雙蹤示波器或邏輯分析儀就能看明白。示意圖如下: ![]() |
wulin 發表于 2020-9-8 20:46 為什么有人說對地測量是測不到反相的?我等下試試看 |
Y_G_G 發表于 2020-9-9 19:12 你這么說。說明你是懂的!你知道并聯電感的選取嗎?只能用磁珠,空間不夠。-----------如果是壓電片的話,不需要的兩個IO的-----------------你這句話啥意思?念起來不順 |
續流二極管與濾波電容是必須有嗎 |
QWE4562012 發表于 2020-9-9 18:30 不討論個人能力問題 你圖3用三極管驅動的叫線圈式(專業名詞:電磁式無源蜂鳴器),驅動方法就和圖3用三極管驅動那樣的,方波驅動 還有另外一個是用壓電片的,專業名詞叫作壓電無源蜂鳴器,驅動的方法是并聯一個電感,電感取值要根據壓電片頻率來計算的,也是方波驅動 我用過的無源蜂鳴器都是這樣用的,請問,哪里有不對的,你可以指正一下. |
Y_G_G 發表于 2020-9-8 22:26 看來你不懂無源和有源蜂鳴器 |
wulin 發表于 2020-9-8 20:46 直接0 1 0 1這樣嗎 |
wulin 發表于 2020-9-8 20:46 APP轉崗做嵌入式的。。。 |