電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>帶按鈕的舊立體聲藍(lán)牙音量控制開源分享

帶按鈕的舊立體聲藍(lán)牙音量控制開源分享

2022-11-02 | zip | 0.06 MB | 次下載 | 2積分

資料介紹

描述

這是什么一回事呢?

這是關(guān)于如何更換立體聲系統(tǒng)的音量旋鈕的相當(dāng)詳細(xì)的(希望如此)描述,該旋鈕使用帶有按鈕和藍(lán)牙連接的定制板的旋轉(zhuǎn)編碼器。

介紹

對(duì)于初學(xué)者來說,一個(gè)重要的注意事項(xiàng):這個(gè)項(xiàng)目是用松下 SA-AK45立體聲系統(tǒng)編寫的(因?yàn)檫@是我使用的),但也適用于使用旋轉(zhuǎn)編碼器進(jìn)行音量控制的任何其他音響系統(tǒng)(除了系統(tǒng)當(dāng)然是拆卸說明)。請(qǐng)注意,其他系統(tǒng)使用的編碼器可能(但不是必須)具有稍微不同的信號(hào)配置文件(這可以通過軟件中的小調(diào)整輕松處理 - 更多信息請(qǐng)?jiān)谶m當(dāng)?shù)牟襟E中進(jìn)行)。

有了這個(gè),讓我們開始正確的介紹。Panasonic SA-AK45 是 90 年代后期的立體聲系統(tǒng),我仍然擁有并主要用作 PC 的音響系統(tǒng)。前面有個(gè)大音量旋鈕,可惜前段時(shí)間壞了。所以我決定修復(fù)它并最終使用基于按鈕的自定義音量控制和藍(lán)牙訪問(更多關(guān)于為什么我稍后不修復(fù)旋鈕)。

該系統(tǒng)來自數(shù)字控制席卷市場(chǎng)并取代模擬控制的時(shí)代,這里也不例外。旋鈕不使用電位器,而是安裝在旋轉(zhuǎn)編碼器上(旋轉(zhuǎn)時(shí)發(fā)送數(shù)字信號(hào)的小型設(shè)備)。在這個(gè)系統(tǒng)的情況下,這個(gè)特殊的部分是非常不正統(tǒng)的,很難找到替代品(更不用說修理它了——這些東西都有很小的部分),所以我決定完全擺脫它,拆下旋鈕并安裝我們的定制板按鈕和藍(lán)牙。

所有這一切都必須以某種方式進(jìn)行控制,我們將使用Attiny85微控制器,因?yàn)樗阋?、易于使用、非常小并且擁有足夠的資源來完成這項(xiàng)工作。任何熟悉 Arduino 的人都可以毫無問題地使用它。

對(duì)于藍(lán)牙通信,我們將使用HC-06 模塊——它是無處不在的HC-05的一個(gè)非常流行的衍生產(chǎn)品,它與它的不同之處在于更便宜并且只能作為從設(shè)備工作(這對(duì)我們的場(chǎng)景來說很好)。也可以使用任何其他模塊,只需對(duì)代碼進(jìn)行最少的更改(請(qǐng)參閱相應(yīng)的步驟)。

最后注:需要基本的焊接/拆焊技能。

現(xiàn)在,讓我們開始吧。

補(bǔ)給品

  • Panasonic SA-AK45 立體聲系統(tǒng)(或任何由旋轉(zhuǎn)編碼器控制音量的音響系統(tǒng));
  • Attiny85 微控制器;
  • DIP-8 插座(可選 - 便于拆卸微控制器);
  • HC-06藍(lán)牙模塊(HC-05或類似的也可以,但控制它的AT命令可能不同);
  • 2 個(gè) LED(如果有人不想要 BLING,可以用電阻器代替 - 稍后會(huì)詳細(xì)介紹);
  • 2 個(gè)輕觸開關(guān)(最好是較大的,易于按下 - 這些將是我們的音量控制按鈕);
  • 4 個(gè)電阻器:100、1.2k、2.2k、100k 歐姆(或類似值);
  • 4 公對(duì)公跳線/杜邦線(20 厘米或類似);
  • 通用 PCB(約 4x6 厘米)(或定制的,基于后續(xù)步驟中附加的原理圖);
  • AVR 編程器或 Arduino 板(用于對(duì) Attiny 進(jìn)行編程);
  • 一個(gè)面包板和一些用于原型設(shè)計(jì)的杜邦電線(可選);
  • 烙鐵,焊錫絲,助焊劑,拆焊泵(可選)。

第 1 步:準(zhǔn)備拆開立體聲

注意:如果您的立體聲系統(tǒng)與 SA-AK45 不同,這里的前幾個(gè)步驟可能對(duì)您沒有多大幫助,但它們的某些方面可能適用于其他地方,所以至少略讀它們是個(gè)好主意.

注意 2:在拆卸立體聲音響時(shí)拍照可能是個(gè)好主意。特別是當(dāng)它與我的模型不同時(shí)。特別注意您斷開的任何連接或其他棘手的地方。

首先,我們必須找到我們將要更換的編碼器。它焊接在一個(gè)前面板 PCB 上,在其他 PCB 下挖得很深,但絕對(duì)可以觸及。最好找一本系統(tǒng)的服務(wù)手冊(cè)作為參考。這些通常很容易在網(wǎng)絡(luò)上找到。在我們的例子中,我們必須到達(dá)“E - 操作 PCB”——這就是編碼器所在的位置。

pYYBAGNhyyaAGWJkAAD-BEHpevA269.png
摘自 SA-AK45 服務(wù)手冊(cè),顯示主要 PCB 及其互連方式
?

第 2 步:打開立體聲

這個(gè)非常簡(jiǎn)單:從系統(tǒng)中拔下所有電纜并擰下頂蓋/側(cè)蓋。它用螺絲固定在后面板和系統(tǒng)側(cè)面(每側(cè) 3 個(gè)螺絲)。請(qǐng)記住,它由 3 個(gè)薄金屬板條鎖在頂部的前面板上 - 您必須將其拉起才能將其分離。

poYBAGNhyymASJInAACk_dVb0g0094.jpg
開放式系統(tǒng)
?

還可以卸下音量旋鈕,只需將其從前面拉向您即可。

pYYBAGNhyyyAB_TOAAB0KRc1R6M268.jpg
音量旋鈕拆了
?

第 3 步:將前面板與其他面板分開

前面通過從前面板 PCB 到主 PCB (B) 的 3 條帶狀電纜連接到其余部分。白色薄的需要從主 PCB 上的插座中拔出。在拉出黑色較厚的那塊之前,需要將主板上連接器兩側(cè)的鎖定機(jī)構(gòu)提起,然后將其從連接器中拉出。

pYYBAGNhyzCAOz_nAADsBXK6v0A609.png
背面可見的連接到主 PCB 的 3 個(gè)色帶。
?

將正面連接到背面的另一部分是整個(gè)設(shè)備頂部的 CD 播放器/轉(zhuǎn)換器。將其從系統(tǒng)的背板上擰下就足夠了 - 然后,在斷開上述電纜后,可以輕輕地將前部與其余部分分離(通過將其拉開)。

poYBAGNhyzSAHvFFAAB1Aacj9to673.png
CD換碟機(jī)
?

雖然 CD 換碟機(jī)仍將連接在前面,這使得東西相當(dāng)笨重,所以我們想將它完全移除。

第 4 步:取出 CD 換碟機(jī)

CD 換碟機(jī)通過 2 條白色帶狀電纜連接到前面板,這些電纜從前面板連接到換碟機(jī)上的 2 個(gè)獨(dú)立 PCB。兩條絲帶都可以從轉(zhuǎn)換器側(cè)的連接器中拉出(其中一條隱藏在柔性黑色覆蓋物下方,擰下一些螺絲后可以將其彎曲到一邊)。

poYBAGNhyziAasmxAACJ76AV-BA863.png
隱藏在彈性蓋下的帶狀連接器
?

從轉(zhuǎn)換器上斷開電纜后,您必須將其從位于前面板一側(cè)的 2 個(gè)米色柱子上擰下。就是這樣 - 我們將前面板完全分開。

poYBAGNhyzqACloLAACtD78rYxA390.png
前部完全分離,CD 換碟機(jī)位于側(cè)面
?

第 5 步:到達(dá)音量編碼器

我們想用我們的自定義系統(tǒng)替換的編碼器位于操作 PCB (E) 上,此時(shí)隱藏在面板 PCB (G) 下。為了達(dá)到它,我們必須擰下面板 PCB。

pYYBAGNhyz2ALQiVAAHLmbhUWsM967.png
擰下后將面板 PCB 抬起(仍由 2 條帶狀電纜連接到其他部分)
?

有很多螺絲要拆。完成此操作后,您可以小心地提起 Panel PCB。請(qǐng)注意,它仍然通過帶狀電纜(前面的小 PCB - JOG PCB 和 Deck PCB)和剛性連接器連接到其他 PCB。剛性連接器將通過將 PCB 直接從前面提起(向上,當(dāng)正面朝下時(shí))斷開。

poYBAGNhy0CAHlWNAAFxkBfj7OE935.png
在下面我們可以看到操作 PCB(我們的目標(biāo)),在中間有一個(gè)小柱子穿過它
?

連接到 Deck PCB 的帶狀電纜幾乎是不可斷開的,所以我們可以保持原樣。如果您希望完全移除面板 PCB 以便更好地接觸下面的內(nèi)容,則必須從甲板 PCB 一側(cè)拆下帶狀電纜連接器,但這不是強(qiáng)制性的。連接 JOG PCB (D) 的電纜也是如此,但整個(gè) JOG PCB 非常小,可以很容易地從前面板上拆下(擰下并提起部分覆蓋 PCB 的塑料按鈕元件后)并留給懸掛在面板 PCB 旁邊。

poYBAGNhy0SABVkkAAIpaPc9cTE200.png
側(cè)面板、JOG PCB(左上)、操作 PCB(中)、Deck PCB(下)
?

第 6 步:拆下操作 PCB 并到達(dá)編碼器

方便的是,操作 PCB 通過伸出的剛性連接器連接到面板 PCB,當(dāng)我們抬起面板 PCB 時(shí)斷開連接,所以在我們到達(dá)編碼器之前剩下的唯一步驟就是從前面板擰下操作 PCB。

poYBAGNhy0eAbTYsAAFvzNQz6bI562.png
前部拆解,操作 PCB 分離并位于左側(cè)
?

在第一張圖片中,您可以看到拆卸的最終結(jié)果 - 前面板正面朝下,操作 PCB 位于左側(cè)。Panel PCB 位于右側(cè),仍然通過不可拆卸的帶狀電纜連接到 JOG PCB 和 Deck PCB,但此時(shí)這不是什么大問題。

我們的編碼器位于操作 PCB 上,靠近米色連接器。

poYBAGNhy0qASpPQAAGSyku5eIU923.png
右側(cè)有編碼器的操作PCB。
?

第 7 步:拆焊和拆卸編碼器

我們需要從操作 PCB 上拆下我們的編碼器,首先是因?yàn)槲覀儫o論如何都想將它移除(并用我們的定制板代替),其次是因?yàn)槲覀兿氩鸾馑圆榭此l(fā)送的信號(hào)(這部分不是強(qiáng)制性的 - 更多信息下面這個(gè))。

pYYBAGNhy06AS1bvAAFaBkadrmc496.png
音量旋鈕的編碼器
?

為此,您需要拆焊 4 個(gè)信號(hào)引腳(包括未使用的一個(gè))和側(cè)面的 2 個(gè)安裝引腳。添加一些新鮮焊料,然后用拆焊泵去除所有焊料是對(duì)我有用的技術(shù)。

poYBAGNhy1GASPB1AAHfgbYOVTE372.png
編碼器從板上拆焊
?

要拆卸編碼器,您必須拉直 4 個(gè)金屬翼片,使塑料底座保持在底部。然后一切都會(huì)分崩離析。但我已經(jīng)為你完成了,所以你不必:-)

pYYBAGNhy1SAMtIpAADUYBAczXk252.png
編碼器底部帶有金屬翻蓋,可將其保持在一起
?

在圖片中,您可以看到我的編碼器損壞了 - 一個(gè)塑料鉆頭,通過填充觸點(diǎn)之間的空間使旋轉(zhuǎn)觸點(diǎn)部分在底部變得光滑,折斷了,這損壞了連接在底座上的薄金屬觸點(diǎn)(連接到信號(hào) A 引腳),旋轉(zhuǎn)部分沿該引腳運(yùn)行。這反過來又完全弄亂了輸出信號(hào)參數(shù)/形狀。

poYBAGNhy1mAfTvqAAMDZR9IldI145.png
可見損壞的編碼器部件(塑料鉆頭損壞和 A 引腳上的觸點(diǎn)損壞)
?

?

poYBAGNhy12AbdguAADRnEfLsfI859.png
編碼器底座,頂部觸點(diǎn)損壞
?

第 8 步:確定編碼器的規(guī)格

注意:這部分僅供參考 - 如果您有相同的立體聲系統(tǒng),您不必拆開編碼器并對(duì)其進(jìn)行分析,因?yàn)槲乙呀?jīng)完成了。但是,如果您有不同的立體聲和不同的編碼器,那將是有意義的。

旋轉(zhuǎn)編碼器的基本特征可以通過簡(jiǎn)單的旋轉(zhuǎn)來確定。它可以有棘爪(旋轉(zhuǎn)時(shí)發(fā)出咔噠聲)或沒有棘爪(不點(diǎn)擊)。它可以是增量的(在兩個(gè)方向上無限旋轉(zhuǎn)),也可以是絕對(duì)的(像電位計(jì)一樣有限旋轉(zhuǎn))。它具有一定的分辨率(它在一圈內(nèi)發(fā)送的信號(hào)數(shù)量),通??梢酝ㄟ^點(diǎn)擊次數(shù)來確定(除非它是無點(diǎn)擊的......)。我們還可以檢查它有哪些引腳,并從 PCB 上的標(biāo)記中讀取它們的描述。

對(duì)我們來說,最重要的是要知道:

  • 編碼器的類型(增量或絕對(duì));
  • 分辨率(每轉(zhuǎn)多少增量/減量);
  • 它發(fā)送的信號(hào)類型;
  • 它如何連接到PCB。

第一件事(類型)很容易猜測(cè) - 只需檢查它是否無限旋轉(zhuǎn)。

第二個(gè)(分辨率)很容易知道我們是否有一個(gè)點(diǎn)擊,但不幸的是這個(gè)沒有點(diǎn)擊。

信號(hào)的類型和連接是相互關(guān)聯(lián)的。通常,這些增量編碼器使用 3 個(gè)引腳發(fā)送所謂的“正交”信號(hào):A、B 和 GND。在我們的情況下也沒有什么不同,盡管由于某種原因它還有第 4 個(gè)未使用的銷(這使得找到合適的替代品真的很困難......)。它的工作方式是在一個(gè)循環(huán)中將 A、B 或任何內(nèi)容都連接到 GND。在一個(gè)方向是“A,B,沒有,A,B,沒有”等等,在相反的方向是:“B,A,沒有,B,A,沒有”等等。因此系統(tǒng)的控制器知道我們?cè)谀膫€(gè)方向旋轉(zhuǎn)它,并且可以記錄每個(gè)增量/減量(每個(gè)“A,B,無”或“B,A,無”循環(huán))。對(duì)于大多數(shù)編碼器,A 和 B 信號(hào)重疊一小段時(shí)間(在 A 和 B 之間有一段時(shí)間都連接到 GND - 請(qǐng)參見隨附的信號(hào)圖)。我不知道這種重疊對(duì)這個(gè)特定系統(tǒng)的運(yùn)行有多重要'

poYBAGNhy2CAAA8pAABMOpJwouc855.png
A 和 B 之間有明顯重疊的典型正交信號(hào)
?

那么通過觀察和旋轉(zhuǎn)編碼器我們知道什么?

  • 它是增量的;
  • 它是無點(diǎn)擊的(所以我們不知道分辨率);
  • 它發(fā)送一個(gè)正交信號(hào)(我們不知道 A 和 B 的重疊或分辨率);
  • 它通過 4 個(gè)引腳連接,其中一個(gè)未使用,三個(gè)是增量正交編碼器的典型引腳:A、B、GND。

我們需要確定信號(hào)的分辨率(每轉(zhuǎn)發(fā)送多少個(gè)“A,B,無”或“B,A,無”循環(huán))和信號(hào)的細(xì)節(jié)(如果 A 和 B 重疊以及有多少)。

該決議對(duì)我們來說不是那么重要。知道我們希望循環(huán)多長(zhǎng)時(shí)間很有用,以便連續(xù)按下按鈕以方便的速度增加/減少音量,但這可以通過在我們的軟件中調(diào)整時(shí)間來通過實(shí)驗(yàn)確定。信號(hào)的形狀(基本上是 A 和 B 之間的重疊量,這是這里唯一未知的)也可能不重要,但讓我們嘗試正確復(fù)制它。要知道這些,我們必須看一下編碼器的內(nèi)部部件,而且,方便的是,此時(shí)它已經(jīng)被拆卸了。

pYYBAGNhy2KAGxZ2AAF6GDxYVh0314.png
編碼器的旋轉(zhuǎn)部分,標(biāo)有單個(gè)信號(hào)周期的部分
?

當(dāng)您查看旋轉(zhuǎn)部分時(shí),您可以計(jì)算其底部的觸點(diǎn)。您會(huì)看到每種類型有 24 個(gè)聯(lián)系人,這意味著分辨率為 24 PPR。不過,最重要的信息是我們可以通過查看旋轉(zhuǎn)部分來推斷信號(hào)形狀。見附圖。每個(gè)循環(huán)有 3 個(gè)主要部分,其中一個(gè)循環(huán)在圖中用紅線標(biāo)記。您可以看到 A 和 B 之間幾乎沒有或沒有重疊。這告訴我們?nèi)绾问褂梦⒖刂破髂M信號(hào) -如果我們發(fā)送“A,B,無”或“B,A,無”的簡(jiǎn)單周期,具體取決于在方向上,事情應(yīng)該可以工作(似乎我們不需要在周期內(nèi)生成一段同時(shí)連接到 GND 的 A 和 B)

第 9 步:設(shè)計(jì)電路板以替代編碼器 - 一個(gè)簡(jiǎn)單的解決方案

讓我們從一個(gè)簡(jiǎn)單的解決方案開始,只需 2 個(gè)按鈕來替代編碼器(一個(gè)按鈕用于“降低音量”,另一個(gè)用于“提高音量”)。

讓我們嘗試確定 Attiny 上需要多少個(gè) GPIO 引腳。2 個(gè)用于輸出(用于音量控制的 A 和 B“編碼器”信號(hào))和 2 個(gè)用于輸入(每個(gè)按鈕 1 個(gè)) - 總共 4 個(gè)。但是我們可以減少這個(gè)數(shù)字嗎?

請(qǐng)記住,我們計(jì)劃添加一個(gè)藍(lán)牙模塊,這需要 2 個(gè) GPIO 引腳(1 個(gè)用于串行輸入,1 個(gè)用于串行輸出),但我們總共只有 5 個(gè)引腳可供使用(我們已經(jīng)分配了 4 個(gè)) )。但有好消息。我們只能將 2 個(gè)按鈕連接到一個(gè)引腳如何?利用 Attiny 具有模擬輸入的事實(shí)。如果我們巧妙地通過分壓器連接按鈕,則輸入將為我們感興趣的 3 種狀態(tài)記錄不同的電壓:未按下按鈕、按下“音量調(diào)低”按鈕、“按下音量調(diào)高按鈕”。好啊,我們現(xiàn)在有 2 個(gè)空閑引腳可用于藍(lán)牙模塊。

但是我們要如何給這東西供電呢?答案很簡(jiǎn)單,立體聲的 PCB 使用 5V 邏輯,方便地與 Attiny 兼容。我們只需要在系統(tǒng)板上的某處找到 5V 線(通過查看編碼器的連接,我們已經(jīng)知道 GND 在哪里)。所以最后,我們必須連接到立體聲系統(tǒng)中的 4 個(gè)信號(hào):5V rail, GND, vol A, vol B。

poYBAGNhy2aASMUAAAAqk34QpW8528.png
電路的簡(jiǎn)單變體示意圖,分壓器上有 2 個(gè)按鈕且沒有 BT(尚未)
?

讓我們看看附件中的示意圖:

  • 一個(gè)帶有 2 個(gè)按鈕的分壓器,位于 GPIO A1(GPIO 2 配置為模擬輸入)和 GND 之間;
  • GPIO 0 上的編碼器信號(hào) A;
  • GPIO 1 上的編碼器信號(hào) B;
  • 一個(gè)用于連接立體聲的 4 針接頭;
  • 去耦電容盡可能靠近單片機(jī)的 5V 和 GND 引腳放置,以確保其穩(wěn)定運(yùn)行。

操作原則應(yīng)如下:

  • 紐扣:
  • 當(dāng)沒有按下時(shí),我們應(yīng)該在 A1 引腳上注冊(cè) 5V(或接近 1024 值),
  • 當(dāng)按下“降低音量”時(shí),我們應(yīng)該在 A1 引腳上注冊(cè) 0V(或接近 0),因?yàn)樗F(xiàn)在短接到 GND,
  • 當(dāng)按下“音量增大”時(shí),我們應(yīng)該在 A1 引腳上記錄??大約 2、5V(或關(guān)閉 512),因?yàn)楝F(xiàn)在電流流過分壓器;
  • 信號(hào):
  • 當(dāng)沒有按下按鈕時(shí)(A1 上的值約為 1024),我們應(yīng)該將 GPIO 0 和 GPIO 1 都設(shè)置為 HIGH 并保持這種狀態(tài)(或 LOW - 我們?cè)谥芷诘哪膫€(gè)部分“凍結(jié)”并不重要" 只要它沒有改變);
  • 當(dāng)按下“音量增大”時(shí)(A1 上的值約為 512),我們應(yīng)該發(fā)送一個(gè)循環(huán):GPIO 0 LOW 為“一段時(shí)間”(將 vol A 連接到 GND),然后是 HIGH 并立即 GPIO 1 LOW 為“一段時(shí)間”(將 vol B 連接到 GND),然后立即將兩者都高“一段時(shí)間”(沒有連接到 GND),然后重復(fù);
  • “降低音量”應(yīng)該和上面一樣,只是 GPIO 0 LOW 和 GPIO 1 LOW 部分顛倒了;
  • 上述周期中的“某個(gè)時(shí)間”應(yīng)通過實(shí)驗(yàn)確定(我最終確定為 80 毫秒,因此 1 個(gè)整個(gè)周期需要 240 毫秒,但您可以自由調(diào)整)。

這應(yīng)該可以解決問題并允許我們控制音量。它很簡(jiǎn)單,所以現(xiàn)在讓我們對(duì)其進(jìn)行改進(jìn)。

第 10 步:終極電路板設(shè)計(jì)

第一:藍(lán)牙模塊。解釋 BT 模塊的操作超出了本說明的范圍,但它已在許多很棒的教程中進(jìn)行了介紹,并且非常簡(jiǎn)單。基本上,我們必須使用 SoftwareSerial Arduino 庫(可以將任何 GPIO 引腳設(shè)置為串行)通過 2 個(gè)充當(dāng) UART(串行)連接的引腳來連接它。然后我們必須從模塊接收信號(hào)(ASCII 字符/字節(jié)),并根據(jù)我們收到的字符/字節(jié),使用上一步中描述的原理增加或減少音量。

不過,BT 模塊還有一個(gè)障礙需要克服。它可以由我們的 5V 線供電,但它的信號(hào)線是為 3、3V 邏輯設(shè)計(jì)的。有些人將它與 5V 一起使用,但不建議這樣做,從長(zhǎng)遠(yuǎn)來看可能會(huì)損壞它。那么我們?cè)撛趺崔k?我們可以使用邏輯電平轉(zhuǎn)換器,但對(duì)于我們的簡(jiǎn)單案例來說,這將非常龐大并且有點(diǎn)過度設(shè)計(jì)。實(shí)際上,我們唯一需要擔(dān)心的是BT模塊上的Rx,因?yàn)樗邮諄碜訟ttiny的信號(hào),并且這些信號(hào)不能超過3、3V。Tx 很好,因?yàn)?Attiny 會(huì)將模塊設(shè)置為 HIGH 的 3、3V 電平記錄下來。

那么我們?nèi)绾蜗拗?HC-06 的 Rx 上的電壓呢?當(dāng)然使用另一個(gè)分壓器。讓我們?cè)谒懊婕右粋€(gè) 1, 2k 歐姆電阻,在它和 GND 之間加一個(gè) 2, 2k,我們將得到我們想要的大約。3、3V邏輯電平。

但是,如果我們想在此之上添加一些 BLING 怎么辦?也許是閃亮的LED?不幸的是,我們沒有未使用的 GPIO 引腳,但還有其他方法。一種方法是將一些 LED 并聯(lián)連接到 A 和 B 信號(hào),但我認(rèn)為這會(huì)很無聊,那么為什么不換一種方式呢?如果我們將按鈕分壓器基于 LED 而不是電阻器會(huì)怎樣?這也將起作用,因?yàn)?LED 保證了電壓降。我們?nèi)匀恍枰砑右粋€(gè)電阻器來限制 LED 上的電流,但是這種分壓器仍然可以工作,并且與基于電阻器的分壓器非常相似。

所以我們最終得到:

  • 將藍(lán)牙模塊連接到 GPIO 3 和 4 進(jìn)行串行通信,連接到 5V 和 GND 進(jìn)行供電;
  • 在 HC-06 Rx 引腳上添加 2 個(gè)電阻作為分壓器,因此它接收到正確的電壓(我們電路的正常電壓約為 3、3V 而不是 5V);
  • 用 LED 重新制作按鈕分壓器以增加BLING (1 個(gè)用于限制電流的電阻 + 2 個(gè)作為分壓器的 LED + 1 個(gè) 100k 歐姆電阻作為上拉電阻,用于在沒有按下按鈕的情況下 - 由于 LED 的性質(zhì),這是必要的 - 沒有它,5V A1 狀態(tài)可能不穩(wěn)定)。
poYBAGNhy2iABqwTAACd57ImrE0798.png
添加了 LED 和藍(lán)牙的電路最終版本示意圖
?

見附圖。這是我們完整的增強(qiáng)型自定義音量控制單元。現(xiàn)在是時(shí)候?qū)?Attiny 進(jìn)行編程并構(gòu)建它了。

第 11 步:準(zhǔn)備立體聲側(cè)的連接

為了能夠測(cè)試我們的解決方案,我們必須能夠?qū)⑽覀兊脑秃妥罱K裝置連接到立體聲系統(tǒng)。為此,我使用了 4 根公對(duì)公杜邦/跳線。我將其中的 3 個(gè)焊接到操作 PCB 上用于編碼器(A、B、GND)的適當(dāng)針孔,第 4 個(gè)焊接到面板 PCB 上的 5V 電源線。我通過查看服務(wù)手冊(cè)中的一些示意圖(在前面的步驟中附上)并通過使用萬用表上的連續(xù)性模式確定它的連接位置來確定 5V 線。我試圖選擇一個(gè)方便的位置,靠近其余的電線和前面板上的音量旋鈕開口。供參考,請(qǐng)參閱隨附的圖片。

pYYBAGNhy2uAcE9pAAHElWrpG1U959.png
3 根電線焊接到編碼器針孔(A、B、GND)和 1 根到面板 PCB 上的 5V 線
?

?

pYYBAGNhy3GAJTUZAAHuAJMzOjw264.png
同一組電線從另一個(gè)角度可見,操作 PCB 安裝在面板 PCB 上
?

?

pYYBAGNhy3SAImfwAAGWoWUiiGc108.png
電線在操作 PCB 剛性連接器周圍的布線方式
?

第 12 步:對(duì) Attiny 進(jìn)行編程

要對(duì) Attiny 進(jìn)行編程,您需要一個(gè) AVR 編程器或一個(gè)可用作編程器的 Arduino Board(例如 Arduino Uno)。您還需要安裝了 Attiny 核心/庫的 Arduino 軟件/IDE。您可能也可以使用其他解決方案,例如 PlatformIO,但我還沒有在這個(gè)項(xiàng)目中嘗試過。

同樣,使用 Arduino 進(jìn)行 Attiny 編程超出了本說明的范圍(盡管我正計(jì)劃針對(duì)這個(gè)主題創(chuàng)建一個(gè)),但讓我們快速總結(jié)一下我是如何做到的:

  • 安裝 Arduino IDE(如果您還沒有):
  • 安裝 Attiny 核心(我使用了這里的一個(gè):它有自己的關(guān)于如何配置和使用它的文檔);
  • 將“Arduino as ISP”草圖上傳到 Arduino (將用作 Attiny 的程序員) - 該草圖可在“示例”中找到;
  • 設(shè)置 Attiny 核心的設(shè)置(我在附加的圖像中設(shè)置它,Attiny 85,沒有引導(dǎo)加載程序,Arduino 作為 ISP );
  • 將 Attiny 連接到 Arduino,如下所示:(請(qǐng)注意,本教程很老,并且列出了不同的 Attiny 核心庫對(duì)于 Arduino ISP - 這個(gè)可能也可以,但我推薦上面鏈接的 Github 中的那個(gè),因?yàn)樗虏⑶矣懈嗟呐渲眠x項(xiàng));
  • 加載我的 Arduino 草圖(附在下面)并使用 Arduino IDE 中的“上傳”功能將其上傳到 Attiny(如果您愿意,可以修改它)。
poYBAGNhy3iAJiKRAAB6TSsP8PM612.png
我用于將代碼上傳到我的 Attiny 的 Attiny 核心配置
?

請(qǐng)參閱隨附的腳本以獲取評(píng)論。這應(yīng)該是不言自明的。

注意:代碼假定發(fā)送到 BT 模塊的“1”字符將提高音量,而“2”將降低音量。它與我在下一步中提到的測(cè)試移動(dòng)應(yīng)用程序的“箭頭鍵部分”兼容。

注 2:BT 模塊是使用所謂的 AT 命令配置的。在代碼中,只有一個(gè)被稱為(在初始 BT 設(shè)置中),用于設(shè)置模塊的名稱,用于向其他設(shè)備宣傳自己(“dupa1”)。您可以隨意更改名稱或使用其他命令來設(shè)置更高的連接波特率,或與默認(rèn)的“1234”不同的密碼。請(qǐng)記住,對(duì)于其中一些,您必須重置模塊才能看到效果!此外,不必在每次啟動(dòng)時(shí)都調(diào)用它們 - 只要調(diào)用它們一次就足夠了,AFAIK。您可以在此處找到有關(guān)模塊配置的 AT 命令的一些說明:https ://www.instructables.com/AT-command-mode-of-HC-05-Bluetooth-module/

第 13 步:測(cè)試解決方案 - 關(guān)于原型制作的說明

在這一點(diǎn)上,我們可能應(yīng)該制作我們的裝置的原型,看看它是否有效。對(duì)于最初的原型設(shè)計(jì),我使用了一個(gè)普通的 Arduino Uno(為了方便)和一個(gè)面包板,我在上面放置了原理圖中的所有部件和連接。我需要對(duì)代碼進(jìn)行的唯一更改是更改引腳編號(hào),如下所示:

//vol
#define VOL_A 2
#define VOL_B 3
#define BTNS A0
//BT
#define RxD 4
#define TxD 5

我還初始化了一個(gè)串行連接并使用 Arduino 串行監(jiān)視器來調(diào)試代碼的各個(gè)部分。但請(qǐng)記住,當(dāng)您在音量增大/減小例程中添加Serial.print()命令時(shí),您可能會(huì)影響信號(hào)的時(shí)序,從而影響音量按鈕的體驗(yàn)(我犯了那個(gè)錯(cuò)誤)。

注意:使用通過 USB 連接到 PC 和立體聲的 Arduino 板進(jìn)行測(cè)試時(shí),請(qǐng)確保在 Arduino 和立體聲之間建立共同點(diǎn)。在這種“雙電源”系統(tǒng)的情況下,揚(yáng)聲器中可能會(huì)有一些額外的噪音 - 忽略它 - 當(dāng)微控制器獨(dú)立并僅連接到立體聲時(shí),它就會(huì)消失。

pYYBAGNhy3uAKKKHAAFy0ZpYtqE755.png
基于 Arduino Uno 的原型
?

在隨附的圖片中,您可以看到一些連接到立體聲音響的原型(包括 Arduino Uno 和 Attiny)。

poYBAGNhy4KABTV7AAGQBjnIcws306.png
帶有 Attiny 立體聲系統(tǒng)功能的最終原型
?

要測(cè)試(和使用)藍(lán)牙控件,您需要在手機(jī)(或其他設(shè)備)上安裝一些應(yīng)用程序。我用過這個(gè)。我使用“箭頭鍵”模塊(向上和向下箭頭)將“1”和“2”字符發(fā)送到 BT 模塊,這將相應(yīng)地提高或降低音量。當(dāng)然,您可以根據(jù)需要更改代碼以使用任何其他字符或消息。

還有許多其他類似的通用移動(dòng)應(yīng)用程序可用于測(cè)試連接。您也可以自己制作,但這超出了本說明的范圍。

當(dāng)您在 Arduino 上擁有 100% 工作原型時(shí),您應(yīng)該相應(yīng)地對(duì) Attiny 進(jìn)行編程并對(duì)其進(jìn)行測(cè)試,仍然在焊接最終裝置之前的面包板上。這一步非常重要——確保它與 Attiny 一起工作,僅在目標(biāo)系統(tǒng)的電源上工作,完全獨(dú)立于 Arduino 板。

第 14 步:將立體聲重新組裝在一起

當(dāng)您的原型工作到您確定所有 4 根電線都正確連接到立體聲系統(tǒng)(您有 5V、GND 并且可以更改音量)時(shí),您可以重新組裝系統(tǒng)并將電線懸垂在音量之外前面板上的旋鈕孔。這將是其余步驟所需的全部?jī)?nèi)容。

poYBAGNhy4aAJ4w-AAFymQwAWyc133.png
立體聲系統(tǒng)的正面,我們的電線從音量旋鈕孔中伸出。
?

要重新組裝系統(tǒng),只需將之前的步驟顛倒過來即可。將面板 PCB 放回原位,記住要輕柔并將剛性連接器重新連接到操作 PCB。通過將所有帶狀電纜推入適當(dāng)?shù)倪B接器來重新連接所有帶狀電纜,并記住連接器上用于通向主 PCB 的黑色帶狀的鎖定機(jī)制。還要記住 PCB 和外殼上的所有螺釘。

第 15 步:制作最終工作板,一些改進(jìn)的想法

此時(shí)你應(yīng)該有:

  • 一個(gè) 100% 工作的原型,將代碼上傳到 Attiny,并使用面包板將其連接到系統(tǒng)和所有組件進(jìn)行測(cè)試(或者您只是確信您在第一次開始時(shí)就對(duì)其進(jìn)行了正確編程:-)) ;
  • 立體聲系統(tǒng)重新組裝。

現(xiàn)在你可以開始焊接了。為此,我使用了通用 PCB,但您可以按照自己的方式進(jìn)行操作 - 如果您有設(shè)計(jì)技能,您可以自己蝕刻,甚至通過 JLCPCB 或類似工具訂購專業(yè)制作的 PCB(我只制作了附上的簡(jiǎn)單原理圖,所以可以幫不了你這個(gè))。

poYBAGNhy4mAK1nPAAHYhxJaoQk487.png
電路板背面 - 注意用于將電路板安裝到位的單針頭
?

在隨附的圖片中,您可以看到我制作的最終裝置。我喜歡我的立體聲音響前面板上的原始外觀,但如果你喜歡更整潔的東西,你可以在 2 個(gè) PCB 上制作它 - 一個(gè)隱藏在機(jī)箱內(nèi),微控制器、BT 模塊和其他位在那里,另一個(gè)暴露在前面板上,只有按鈕和 LED(甚至可以切割成旋鈕孔的形狀并推入其中)。將定制的 3D 打印按鈕放在它上面將是非常專業(yè)的。

pYYBAGNhy4-AUuzEAAHCMIETYxA913.png
安裝在音量旋鈕處的成品板
?

請(qǐng)注意,我在電路板周圍焊接了一些單針接頭,作為將 PCB 放在前面板上的引導(dǎo)/安裝點(diǎn)。經(jīng)過一番修修補(bǔ)補(bǔ),它們緊緊地?cái)D進(jìn)音量旋鈕孔,并將整個(gè)東西牢牢固定在適當(dāng)?shù)奈恢谩?/font>

這就是今天的全部?jī)?nèi)容,我希望你們喜歡我在這里的第一個(gè)項(xiàng)目。干杯!

poYBAGNhy5SAYACyAAF2JcwulXg397.png
最終結(jié)果
?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)