久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2606|回復: 34
打印 上一主題 下一主題
收起左側

單片機怎么使得無源蜂鳴器在鳴響的同時,還能處理另外的程序?

  [復制鏈接]
跳轉到指定樓層
樓主
ID:298743 發表于 2024-5-17 17:32 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
用單片機定時器中斷來模擬產生PWM信號,給到蜂鳴器工作,理論上來說要個尖一點的聲音,我需要把一個周期定在兩微秒,單片機根本就執行不了其他程序,如果開高一級優先級的中斷來處理重要的程序,蜂鳴器的聲音又會變
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:879809 發表于 2024-5-17 20:09 | 只看該作者
2微秒給無源蜂鳴器你是開玩笑嘛?
回復

使用道具 舉報

板凳
ID:373388 發表于 2024-5-17 20:30 | 只看該作者
聲波20-20KHz,超過這個范圍就聽不到了,蜂鳴器頻率你定在1-2KHz就可以了
回復

使用道具 舉報

地板
ID:891089 發表于 2024-5-17 22:58 來自手機 | 只看該作者
看大家都顧左右而言他,我直接給結論吧。這樣是不行的,蜂鳴器是需要連續pwm波的,無論是中斷還是上操作系統,只要是單核的單片機都是會占用時間片的。建議看下esp32s2這款是雙核的,大概可以滿足你的要求。
回復

使用道具 舉報

5#
ID:123289 發表于 2024-5-17 23:35 | 只看該作者
傻乎乎的,用一個常鳴的蜂鳴器。
回復

使用道具 舉報

6#
ID:161164 發表于 2024-5-17 23:36 | 只看該作者
可以輸出時鐘信號
回復

使用道具 舉報

7#
ID:192020 發表于 2024-5-18 09:11 | 只看該作者
不用定時器,直接用PWM模塊輸出就好了
回復

使用道具 舉報

8#
ID:213173 發表于 2024-5-18 11:38 | 只看該作者
常見的無源蜂鳴器其諧振頻率2000Hz左右,定時器中斷周期在200-250us較為合適。中斷程序占用的時間很少,實踐證明用在1T單片機上根本感覺不到影響其它程序運行。
回復

使用道具 舉報

9#
ID:628113 發表于 2024-5-18 11:39 | 只看該作者
樓主本身想法并沒有問題, 用 定時 中斷控制無源蜂鳴器的PWM .
只要注意兩點就OK:
1. CPU 必須足夠快, 如果像 8Mhz 的低速CPU, 那基本上就干不了其他事情了。
2. 中斷沒必要如此頻繁, 估計 100us 中斷一次就足夠了。
回復

使用道具 舉報

10#
ID:1109793 發表于 2024-5-18 17:38 | 只看該作者
2微秒,500K,你確定能聽到?
回復

使用道具 舉報

11#
ID:298743 發表于 2024-5-19 21:46 | 只看該作者
xiaobendan001 發表于 2024-5-18 17:38
2微秒,500K,你確定能聽到?

說錯了,是10微妙蜂鳴器反轉一次,確實能聽到
回復

使用道具 舉報

12#
ID:298743 發表于 2024-5-19 22:11 | 只看該作者
rundstedt 發表于 2024-5-17 20:09
2微秒給無源蜂鳴器你是開玩笑嘛?

發錯了,我定時的是10微妙,確實能聽到聲音
回復

使用道具 舉報

13#
ID:298743 發表于 2024-5-19 22:12 | 只看該作者
美琴的備胎 發表于 2024-5-17 22:58
看大家都顧左右而言他,我直接給結論吧。這樣是不行的,蜂鳴器是需要連續pwm波的,無論是中斷還是上操作系 ...

但是我看到別人的產品用的STC8八腳的芯片就做到了,六個定時器,其中一個定時器達到時間,蜂鳴器就會響,但是其他定時器還在定時
回復

使用道具 舉報

14#
ID:298743 發表于 2024-5-19 22:19 | 只看該作者
yzwzfyz 發表于 2024-5-17 23:35
傻乎乎的,用一個常鳴的蜂鳴器。

沒看懂,我想控制能控制蜂鳴器的音量大小,用有源的不知道怎么控制,所以就用了無源的
回復

使用道具 舉報

15#
ID:298743 發表于 2024-5-19 22:20 | 只看該作者
lkc8210 發表于 2024-5-17 23:36
可以輸出時鐘信號

輸出時鐘信號會不會比中斷IO口取反更消耗資源,因為一不執行時鐘信號的程序,蜂鳴器就不會響了,定時器還有一點點執行其他程序的時間
回復

使用道具 舉報

16#
ID:298743 發表于 2024-5-19 22:21 | 只看該作者
qq475878026 發表于 2024-5-18 09:11
不用定時器,直接用PWM模塊輸出就好了

PWM模塊不占用CPU資源嗎?我還要同時做另外的一些事情
回復

使用道具 舉報

17#
ID:298743 發表于 2024-5-19 22:26 | 只看該作者
ppcbug 發表于 2024-5-18 11:39
樓主本身想法并沒有問題, 用 定時 中斷控制無源蜂鳴器的PWM .
只要注意兩點就OK:
1. CPU 必須足夠快,  ...

100us聲音有點沉,沒有滴滴的聲音,我用的芯片是STC8H
回復

使用道具 舉報

18#
ID:298743 發表于 2024-5-19 22:27 | 只看該作者
之所以用無源蜂鳴器主要是我想控制蜂鳴器音量的大小,但是現在看來好像也沒什么頭緒
回復

使用道具 舉報

19#
ID:1121392 發表于 2024-5-20 01:17 | 只看該作者
多任務系統
回復

使用道具 舉報

20#
ID:1109793 發表于 2024-5-20 07:29 | 只看該作者
asdadqw2 發表于 2024-5-19 21:46
說錯了,是10微妙蜂鳴器反轉一次,確實能聽到

那就是20us周期那樣也是50K了,如果結果是正確的,你能聽到也牛逼了,不用搞這個了,有這天賦。
回復

使用道具 舉報

21#
ID:458247 發表于 2024-5-20 08:52 | 只看該作者
asdadqw2 發表于 2024-5-19 22:27
之所以用無源蜂鳴器主要是我想控制蜂鳴器音量的大小,但是現在看來好像也沒什么頭緒

用快一點的stc單片機,或者stc單片機主頻拉高點
回復

使用道具 舉報

22#
ID:23640 發表于 2024-5-20 09:07 | 只看該作者
1MS就可以達到1K的頻率,一般蜂鳴器最大聲音頻率是2~4K之間,假設是4K,那么時間就是250US
回復

使用道具 舉報

23#
ID:192020 發表于 2024-5-20 09:07 | 只看該作者
asdadqw2 發表于 2024-5-19 22:21
PWM模塊不占用CPU資源嗎?我還要同時做另外的一些事情

PWM配好寄存器就運行了,運行期間CPU不參與的。
回復

使用道具 舉報

24#
ID:23640 發表于 2024-5-20 09:12 | 只看該作者
asdadqw2 發表于 2024-5-19 22:26
100us聲音有點沉,沒有滴滴的聲音,我用的芯片是STC8H

你是用什么設備確定的100US?如果真是100US那就是10KHZ的頻率,那是非常尖銳的聲音了,最好用示波器/邏輯分析儀確認下你的時間實際是多少?
回復

使用道具 舉報

25#
ID:161164 發表于 2024-5-20 09:16 | 只看該作者
asdadqw2 發表于 2024-5-19 22:20
輸出時鐘信號會不會比中斷IO口取反更消耗資源,因為一不執行時鐘信號的程序,蜂鳴器就不會響了,定時器還 ...

輸出時鐘信號零消耗主CPU
但是調不了聲音大小
回復

使用道具 舉報

26#
ID:384109 發表于 2024-5-20 09:31 | 只看該作者
樓主實際測試一下波形吧,你現在的要求已經打破了人耳能聽到的聲音頻率范圍,打破了基本理論了
回復

使用道具 舉報

27#
ID:844772 發表于 2024-5-20 09:55 | 只看該作者
asdadqw2 發表于 2024-5-19 22:21
PWM模塊不占用CPU資源嗎?我還要同時做另外的一些事情

硬件的pwm不太占用CPU,不過你10微秒產生的頻率太高,應該是它的低次諧波發的聲音,跟40微秒是一樣的。
回復

使用道具 舉報

28#
ID:57657 發表于 2024-5-20 12:13 | 只看該作者
qq475878026 發表于 2024-5-18 09:11
不用定時器,直接用PWM模塊輸出就好了

PWM模塊不是所有單片機都有此功能,具體見數據手冊
回復

使用道具 舉報

29#
ID:298743 發表于 2024-5-21 11:22 | 只看該作者
yaosongjin 發表于 2024-5-20 09:12
你是用什么設備確定的100US?如果真是100US那就是10KHZ的頻率,那是非常尖銳的聲音了,最好用示波器/邏輯 ...

沒有這些設備,我是用定時器取反io口來模擬pwm的,應該是比他高一級的定時器觸發中斷執行程序,把頻率拉大了
回復

使用道具 舉報

30#
ID:298743 發表于 2024-5-21 11:24 | 只看該作者
lkc8210 發表于 2024-5-20 09:16
輸出時鐘信號零消耗主CPU
但是調不了聲音大小

那好像有個想法,STC有多個PWM通道,是不是可以定義多個PWM輸出,然后根據變量不同,選擇不同的通道,那就可以輸出不同的PWM信號,從而調節音量了吧
回復

使用道具 舉報

31#
ID:192020 發表于 2024-5-22 15:16 | 只看該作者
asdadqw2 發表于 2024-5-21 11:24
那好像有個想法,STC有多個PWM通道,是不是可以定義多個PWM輸出,然后根據變量不同,選擇不同的通道,那 ...

別人說的是時鐘信號,你說的PWM,雖說一樣是方波但不是同一個東西啊。然后PWM本來就是可調的,沒必要說弄多個PWM來實現可調
回復

使用道具 舉報

32#
ID:298743 發表于 2024-5-22 17:24 | 只看該作者
qq475878026 發表于 2024-5-22 15:16
別人說的是時鐘信號,你說的PWM,雖說一樣是方波但不是同一個東西啊。然后PWM本來就是可調的,沒必要說弄 ...

那搞錯了,我還以為PWM和時鐘信號是一樣的東西
回復

使用道具 舉報

33#
ID:79094 發表于 2024-5-23 00:32 | 只看該作者
蜂鳴器 用 有源的 音量 可以加開關 并聯電阻  或用三極管并聯電阻  主要看你用在什么地方
回復

使用道具 舉報

34#
ID:57657 發表于 2024-5-23 05:43 | 只看該作者
lkc8210 發表于 2024-5-20 09:16
輸出時鐘信號零消耗主CPU
但是調不了聲音大小

A通道PWM輸出超聲波載波(占空比越高音量越高) B通道輸出頻率信號,加個74HC08將超聲波PWM調制后就能控制音量。
回復

使用道具 舉報

35#
ID:517951 發表于 2024-5-27 13:22 | 只看該作者
蜂鳴器有2種, 一種是給電就叫. 一種是需要驅動波形的, 音調可調.  
按樓主說的周期是2u秒, 那就是500khz, 人耳朵可聽到的音頻是20khz~20hz. 即便電路正常工作, 人也聽不到.
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: caoporn国产精品免费公开 | 日韩av.com | 91麻豆产精品久久久久久夏晴子 | 欧美日韩一区二区视频在线观看 | 国产成人精品免高潮在线观看 | 国产精品一区在线播放 | 五月激情综合 | 成人福利影院 | 不卡一区二区三区四区 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 久久精品网 | 国产精品久久久久久久久久三级 | 国产日韩电影 | 中文字幕第二区 | 国产精品一级 | 亚洲欧美日韩在线一区二区 | 91精品在线播放 | 久久一区二区av | 国产综合久久 | www国产成人免费观看视频,深夜成人网 | 久久久久久国模大尺度人体 | 亚洲精品福利视频 | 黄色网址在线免费观看 | 99视频在线看 | 亚洲国产精品一区二区久久 | www日韩欧美 | 一区二区三区四区在线播放 | 欧美亚洲视频在线观看 | 亚洲一区二区三区在线 | 综合色站导航 | 免费高潮视频95在线观看网站 | 亚洲午夜精品久久久久久app | 久久91精品 | 亚洲视频在线观看 | 91视频88av | 亚洲精品乱码久久久久久按摩观 | 日韩三级一区 | 国产精品免费av | 欧美日韩一区二区三区四区 | www.成人在线视频 | 精品免费国产视频 |