步驟1:衰減器

我重復:我不是電工,我的知識值得懷疑,如果我寫錯了,請糾正我。但是無論如何,我都會嘗試為像我這樣的人解釋什么是衰減器。
Wiki定義:“衰減器是一種電子設(shè)備,可以降低信號功率而不會明顯失真?!?/p>
據(jù)我所知,它只是這樣的一組電阻梯,您可以在其中“滑動”并選擇梯子具有多少“步長”(串聯(lián)時有多少電阻)
我發(fā)現(xiàn)了在線對數(shù)衰減器計算器,它不僅為我提供了項目的值,還為我提供了原理圖。
對數(shù)級數(shù)用于音頻應(yīng)用。
這里提供的這些值可能不是最好的,我只是上傳了我在設(shè)置中使用的值。
步驟2:通道選擇器

我有4個繼電器來激活通道。我已經(jīng)從舊的前置放大器上接過繼電器。繼電器由光耦合器激活,光耦合器由arduino激活。您可以使用晶體管代替光耦合器。
我上傳了一個簡單的原理圖,說明如何使用光耦合器通過arduino控制繼電器。
第3步:遙控器

由于所有內(nèi)容均由arduino控制,因此這很容易。有一個arduino庫IRremote,還有很多很棒的教程,介紹如何像https://learn.adafruit.com/using-an-infrared-library/hardware-needed這樣使用它們。
對于控制器本身我重用了舊的。在上面的鏈接中,您可以學習如何讀取舊遙控器的信號并重新利用它。
您可以在下面找到帶有說明的代碼。
步驟4:旋轉(zhuǎn)編碼器

旋轉(zhuǎn)編碼器就像無限的電位器一樣,就像汽車音響上的一樣。實際上,它們與電位計沒有任何共同之處,只不過您可以將按鈕置于其上并旋轉(zhuǎn)。當您旋轉(zhuǎn)它們時,它們會接觸地面和其中一個插針,并且arduino會讀取該信號。
再一次,其他人為我做了骯臟的工作,我在網(wǎng)上找到了此任務(wù)的arduino代碼!我還將在其他步驟中介紹它。
步驟5:PCB布局


現(xiàn)在將所有內(nèi)容放在一起。我用Eagle cad繪制原理圖和PCB。您可以找到圖像和鷹項目。
我決定將信號接地與“數(shù)字”分開,這就是為什么我在頂層有2個多邊形的原因。我將質(zhì)量作為多邊形并放在頂部,而其他所有內(nèi)容都在底層。
如果需要更多說明如何將外圍設(shè)備連接到arduino,可以查看所附的fritzing面包板方案注釋。
第6步:代碼
我丟失了完整版本的代碼,這是從測試階段開始的,但是可以遠程操作,只需要配置第二個解碼器即可。我將恢復它或?qū)⑵浔M快重寫并上傳到這里。
編輯:我找到并上傳了完整版本的代碼。
遠程控制
首先導入IRremote庫并對其進行初始化:
#include//導入庫,然后再從此處包含
byte RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);//初始化
encode_results結(jié)果;
內(nèi)部setup()
irrecv.enableIRIn();//在
內(nèi)部循環(huán)()
if(irrecv.decode(&results))中啟用ir//檢查是否有新數(shù)據(jù)到達
{//內(nèi)部檢查按下了什么按鈕
if(results.value == 0xCC91D36E){//降低音量了
volcnt-= 1; muxWrite(volcnt);
}
否則if(results.value == 0xE936013E){//提高音量
volcnt + = 1; muxWrite(volcnt);
}
延遲(100);//這是可選的,它只是減慢了音量變化的速度
irrecv.resume();//等待下一個數(shù)據(jù)
}
旋轉(zhuǎn)編碼器
編碼器不需要其他庫。
設(shè)置
#define ENC_A 8
#define ENC_B 9
#define ENC_PORT PINB
Setup()
pinMode(ENC_A,INPUT);
pinMode(ENC_B,INPUT);
Loop()
tmpdata = read_encoder();//讀取新狀態(tài),即-1左轉(zhuǎn),0不轉(zhuǎn)或1右轉(zhuǎn)
if(tmpdata){volcnt + = tmpdata; muxWrite(volcnt); }
Read_encoder()
我在在線某個地方找到了此功能
int8_t read_encoder(){
static int8_t enc_states [ ] = {0,-1,1,0,1,0,0,-1,-1,0,0,1,0,1,-1,0};
靜態(tài)uint8_t old_AB = 0;
old_AB 《《= 2;//記住以前的狀態(tài)old_AB | =(ENC_PORT&0x03);//添加當前狀態(tài)返回(enc_states [(old_AB&0x0f)]);;
}
其余代碼控制輸出,僅在引腳上寫入LOW或HIGH。
步驟7:最終思路
這是V1.0,如果您有任何改進的想法,請與我分享!
我測試了它,效果很好。并非所有步驟的衰減都相等,但它足夠好,有足夠的衰減步驟來找到最佳位置。唯一的問題是,繼電器打開時有時會有幾毫秒的噪音。
責任編輯:wv
-
前置放大器
+關(guān)注
關(guān)注
8文章
191瀏覽量
35112
發(fā)布評論請先 登錄
Cebek PM - 9 壓縮機前置放大器技術(shù)解析
Cebek PREVIOUS PREAMPLICATEUR PREVIO PM - 2前置放大器技術(shù)剖析
探索 MAX4465 - MAX4469 系列麥克風前置放大器:低功耗與高性能的完美結(jié)合
鎖相放大器前置放大器的選擇策略
MAX4465 - MAX4469:低功耗麥克風前置放大器的理想之選
MAX4465 - MAX4469:低成本微功耗麥克風前置放大器的卓越之選
解析MAX4060/MAX4061/MAX4062:高性能差分麥克風前置放大器
探索MAX4063:高性能差分麥克風前置放大器的卓越之選
探索MAX4060/MAX4061/MAX4062:高性能差分麥克風前置放大器
探索SSM2166:高性能麥克風前置放大器的技術(shù)剖析
探索SSM2019音頻前置放大器:性能、應(yīng)用與設(shè)計要點
出售回收租賃維修二手安捷倫Agilent 8449B微波前置放大器
前置放大器問題
前置放大器電路問題
VCA8500 具有低噪聲前置放大器的 8 通道、超低功耗可變增益放大器技術(shù)手冊
如何從零開始制作前置放大器
評論