資料介紹
描述
這是什么一回事呢?
這是關(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è)輕觸開關(guān)(最好是較大的,易于按下 - 這些將是我們的音量控制按鈕);
- 4 個(gè)電阻器:100、1.2k、2.2k、100k 歐姆(或類似值);
- 1 100 nF 電容器;
- 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”——這就是編碼器所在的位置。
第 2 步:打開立體聲
這個(gè)非常簡(jiǎn)單:從系統(tǒng)中拔下所有電纜并擰下頂蓋/側(cè)蓋。它用螺絲固定在后面板和系統(tǒng)側(cè)面(每側(cè) 3 個(gè)螺絲)。請(qǐng)記住,它由 3 個(gè)薄金屬板條鎖在頂部的前面板上 - 您必須將其拉起才能將其分離。
還可以卸下音量旋鈕,只需將其從前面拉向您即可。
第 3 步:將前面板與其他面板分開
前面通過從前面板 PCB 到主 PCB (B) 的 3 條帶狀電纜連接到其余部分。白色薄的需要從主 PCB 上的插座中拔出。在拉出黑色較厚的那塊之前,需要將主板上連接器兩側(cè)的鎖定機(jī)構(gòu)提起,然后將其從連接器中拉出。
將正面連接到背面的另一部分是整個(gè)設(shè)備頂部的 CD 播放器/轉(zhuǎn)換器。將其從系統(tǒng)的背板上擰下就足夠了 - 然后,在斷開上述電纜后,可以輕輕地將前部與其余部分分離(通過將其拉開)。
雖然 CD 換碟機(jī)仍將連接在前面,這使得東西相當(dāng)笨重,所以我們想將它完全移除。
第 4 步:取出 CD 換碟機(jī)
CD 換碟機(jī)通過 2 條白色帶狀電纜連接到前面板,這些電纜從前面板連接到換碟機(jī)上的 2 個(gè)獨(dú)立 PCB。兩條絲帶都可以從轉(zhuǎn)換器側(cè)的連接器中拉出(其中一條隱藏在柔性黑色覆蓋物下方,擰下一些螺絲后可以將其彎曲到一邊)。
從轉(zhuǎn)換器上斷開電纜后,您必須將其從位于前面板一側(cè)的 2 個(gè)米色柱子上擰下。就是這樣 - 我們將前面板完全分開。
第 5 步:到達(dá)音量編碼器
我們想用我們的自定義系統(tǒng)替換的編碼器位于操作 PCB (E) 上,此時(shí)隱藏在面板 PCB (G) 下。為了達(dá)到它,我們必須擰下面板 PCB。
有很多螺絲要拆。完成此操作后,您可以小心地提起 Panel PCB。請(qǐng)注意,它仍然通過帶狀電纜(前面的小 PCB - JOG PCB 和 Deck PCB)和剛性連接器連接到其他 PCB。剛性連接器將通過將 PCB 直接從前面提起(向上,當(dāng)正面朝下時(shí))斷開。
連接到 Deck PCB 的帶狀電纜幾乎是不可斷開的,所以我們可以保持原樣。如果您希望完全移除面板 PCB 以便更好地接觸下面的內(nèi)容,則必須從甲板 PCB 一側(cè)拆下帶狀電纜連接器,但這不是強(qiáng)制性的。連接 JOG PCB (D) 的電纜也是如此,但整個(gè) JOG PCB 非常小,可以很容易地從前面板上拆下(擰下并提起部分覆蓋 PCB 的塑料按鈕元件后)并留給懸掛在面板 PCB 旁邊。
第 6 步:拆下操作 PCB 并到達(dá)編碼器
方便的是,操作 PCB 通過伸出的剛性連接器連接到面板 PCB,當(dāng)我們抬起面板 PCB 時(shí)斷開連接,所以在我們到達(dá)編碼器之前剩下的唯一步驟就是從前面板擰下操作 PCB。
在第一張圖片中,您可以看到拆卸的最終結(jié)果 - 前面板正面朝下,操作 PCB 位于左側(cè)。Panel PCB 位于右側(cè),仍然通過不可拆卸的帶狀電纜連接到 JOG PCB 和 Deck PCB,但此時(shí)這不是什么大問題。
我們的編碼器位于操作 PCB 上,靠近米色連接器。
第 7 步:拆焊和拆卸編碼器
我們需要從操作 PCB 上拆下我們的編碼器,首先是因?yàn)槲覀儫o論如何都想將它移除(并用我們的定制板代替),其次是因?yàn)槲覀兿氩鸾馑圆榭此l(fā)送的信號(hào)(這部分不是強(qiáng)制性的 - 更多信息下面這個(gè))。
為此,您需要拆焊 4 個(gè)信號(hào)引腳(包括未使用的一個(gè))和側(cè)面的 2 個(gè)安裝引腳。添加一些新鮮焊料,然后用拆焊泵去除所有焊料是對(duì)我有用的技術(shù)。
要拆卸編碼器,您必須拉直 4 個(gè)金屬翼片,使塑料底座保持在底部。然后一切都會(huì)分崩離析。但我已經(jīng)為你完成了,所以你不必:-)
在圖片中,您可以看到我的編碼器損壞了 - 一個(gè)塑料鉆頭,通過填充觸點(diǎn)之間的空間使旋轉(zhuǎn)觸點(diǎn)部分在底部變得光滑,折斷了,這損壞了連接在底座上的薄金屬觸點(diǎn)(連接到信號(hào) A 引腳),旋轉(zhuǎn)部分沿該引腳運(yùn)行。這反過來又完全弄亂了輸出信號(hào)參數(shù)/形狀。
?
第 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)行有多重要'
那么通過觀察和旋轉(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)被拆卸了。
當(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。
讓我們看看附件中的示意圖:
- 一個(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)定)。
見附圖。這是我們完整的增強(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)參閱隨附的圖片。
?
?
第 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(如果您愿意,可以修改它)。
請(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ì)消失。
在隨附的圖片中,您可以看到一些連接到立體聲音響的原型(包括 Arduino Uno 和 Attiny)。
要測(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)容。
要重新組裝系統(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è))。
在隨附的圖片中,您可以看到我制作的最終裝置。我喜歡我的立體聲音響前面板上的原始外觀,但如果你喜歡更整潔的東西,你可以在 2 個(gè) PCB 上制作它 - 一個(gè)隱藏在機(jī)箱內(nèi),微控制器、BT 模塊和其他位在那里,另一個(gè)暴露在前面板上,只有按鈕和 LED(甚至可以切割成旋鈕孔的形狀并推入其中)。將定制的 3D 打印按鈕放在它上面將是非常專業(yè)的。
請(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)目。干杯!
?
- 3W立體聲音頻功率放大器,具有高級(jí)直流音量控制功能SM7512數(shù)據(jù)手冊(cè) 0次下載
- 帶直流音量控制的3路立體聲D類音頻功率放大器TPA2008D2數(shù)據(jù)表
- 帶高級(jí)直流音量控制的2路立體聲音頻功率放大器TPA6021A4數(shù)據(jù)表
- 138 mW DIRECTPATH?立體聲耳機(jī)放大器,帶I2C音量控制TPA6130A2數(shù)據(jù)表
- 帶i2c音量控制的G類DIRECTPATH?立體聲耳機(jī)放大器TPA6140A2數(shù)據(jù)表
- SM7512:3W立體聲音頻功率放大器,具有先進(jìn)的直流音量控制 0次下載
- 等響度音量控制電路 4次下載
- 編碼器音量控制開源分享
- 音量控制系統(tǒng)開源分享
- Arduino Leonardo PC音量控制開源分享
- CN0226:帶音量控制的便攜式音頻放大器
- D8199立體聲放大和直流音量控制電路的數(shù)據(jù)手冊(cè)免費(fèi)下載 0次下載
- 3W帶數(shù)字音量控制/抗削頂超低EMI立體聲D類音頻功 83次下載
- EUA6019含有先進(jìn)DC音量控制的3W立體聲音頻放大器
- 4W帶直流音量控制音頻功率放大電路
- 立體聲放大器電路圖分享 4237次閱讀
- 電子數(shù)字音量控制電路圖解析 3971次閱讀
- 具有低音增強(qiáng)的立體聲前置放大器電路分享 2421次閱讀
- 基于MAX5486的雙通道數(shù)字音量控制電路 1740次閱讀
- 單芯片數(shù)字立體聲子系統(tǒng) 821次閱讀
- 基于LM4809構(gòu)建的立體聲耳機(jī)放大器電路圖 3595次閱讀
- 22W立體聲功放的電路圖分享 4345次閱讀
- 一款基于三星ICKA2211的立體聲功放電路 1795次閱讀
- 如何在沒有機(jī)械電位器的情況下實(shí)現(xiàn)立體聲音量控制 2727次閱讀
- 低功耗立體聲CODEC ADAU1373的主要特性及應(yīng)用電路 2838次閱讀
- 3D環(huán)繞立體聲具有哪些應(yīng)用特點(diǎn) 7667次閱讀
- TDA7448音量控制器的特性及應(yīng)用 4543次閱讀
- 基于NS4298帶DC音量控制功能的IC應(yīng)用設(shè)計(jì)參考 3962次閱讀
- 怎么把單聲道變立體聲 藍(lán)牙耳機(jī)diy教程 2.4w次閱讀
- 立體聲與擴(kuò)聲系統(tǒng)詳細(xì)介紹 8012次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多