Цитата(Frolov Kirill @ May 24 2012, 13:37)

Да, верно, на последней странице, рис. 18. Но тогда, скорей +CMIC и +AUDG=2,0,v осносятся к "Uplink compensation gain", а +CLVL +AUDG=2,1,v к "Echo in gain".
Судя по всему +AUDG=c,0,v относится именно к "Echo out gain", а +AUDG=c,1,v к "volume" (под блоком "noise generator").
Ограничение сигнала возникает (при установке +AUDG=2,1,12000 и больше) из-за переполнения перед АЦП (в цифровой части) и, следовательно, на эхоподавление влиять не должно. Как это установлено: при установке значений value (+AUDG=x,1,value) не изменяется громкость в ответ на AT+CLDTMF=10,"5". Из схемы видно, что это может быть только при регулировке "volume", но не "Ramp", не "Downlink compensation gain", не "Echo in gain". Т.е. команду AT+AUDG=c,1,value можно смело использовать для поднятия громости (G1 из моего рисунка выше) без ущерба эхоподавлению. Подтверждено экспериментально: эхо увеличилось незначительно.
Также экспериментально установлено, что устанавливая AT+AUDG=c,0,value в очень большие значения, после очень маленьких, при максимальном значении +CMIC=c,x (чтоб ещё работало эхоподавление, на грани) нет существенного влияния на эхоподавление. Т.е. команда AT+AUDG=c,0,value не может влияет на "Uplink compensation gain" и на "Ramp" (сверху), остаётся только "Echo out gain".
Команда AT+CLVL влияет на "Echo in gain", или на "Downlink compensation gain", или на "Ramp" (снизу). Потому, что влияет на громкость AT+CLDTMF (из блока "Tone generator", видимо).
Команда AT+CMIC=c,value влияет на "Uplink compensation gain" или "Ramp" (сверху), потому, что при увеличении значений перестаёт работать эхоподавление (ввиду искажений сигнала полученного с микрофона).
Почему изначально с помощью AT+AUDG не удалось настроить, как советовали: было упущено, что собственный предусилитель микрофона, стоит перед SIM300, перегружается сигналом из динамика и искажает сигнал. Динамик близко и достаточно мощный. А человек обычно дальше и настолько громко не разговаривает -- перегрузки нет. Выводы: с помощью AT+AUDG можно подстроить усиление как нужно, с помощью AT+CMIC установить меньшее усиление и встроенное эхоподавление в SIM900(

заработает на вполне удовлетоврительном уровне.
Удовлетворительном, но близком к SIM300: при AT+ECHO=c,0,5,1 (c==2), например, есть полный дуплекс но подавление какое-то сомнительное, эхо. При AT+ECHO=2,7,5,1 всё подавляет, но фактически больше за счёт полудуплекса. И если, например, типовая ситуация, человек звонит с прибора в какой-то call-центр где достаточно шумно (другие операторы, музыка и т.п.), то человека этого не слышно (SIM900 ему глушит микрофон, AT+ECHO=c,
7,5,1), так же как и было с SIM300. Увы.
Но вообще это по-моему какой-то дефект в алгоритмах, что тот алгоритм эхоподавления, который просто приглушает микрофон, отказывается работать в присутствии сильно искажённого сигнала от микрофона.
PS: версия прошивки: 1137B08SIM900B32_ST, для громкой связи используется канал 2:
Код
AT+AUDG?
+AUDG:
Main Mic:gain:fa0
Headset Mic:gain:1b6e
AUX Mic:gain:4650
HeadsetAux Mic:gain:3c22
Main Speaker:gain:a
Headset Speaker:gain:1000
Aux Speaker:gain:36b0
HeadsetAux Speaker:gain:1000
OK
AT+CMIC?
+CMIC: (0,5),(1,0),(2,2),(3,7)
OK
AT+CLVL?
+CLVL: 100
OK
AT+ECHO?
+ECHO: (0,0,0,0),(1,0,0,1),(2,7,5,1),(3,7,5,1)
OK
При начале работы с модемом (AUDG здесь нет, но должно быть):
Код
ATQ0V1E0&D1&C1S0=0;+CRSL=1;+CMEE=1;+CIURC=1;+CSCLK=1;+IPR=38400;+CFUN=1
ATI+CGMM;+CGMR;+CGSN;+CSDT=0;+CFUN=1;+CREG=2;+COPS=3,2;+CGREG=2
AT+CIMI;+CSCS="UCS2";+CNMI=2,1,0,0,0;+CMOD=0;+CTZU=0
AT+CLIP=1;+COLP=0;+CCWA=0;+CLCC=1
AT+AUDG=0,0,4000;+AUDG=0,1,12000;+AUDG=2,0,16000;+AUDG=2,1,14000;+SIDET=0,0;+SID
ET=2,0;+CLVL=0;+CMIC=2,0;+CMIC=0,0;+CHF=1;+CAAS=0;&W
При разговоре:
Код
AT+CHFA=0;+CMIC=0,4;+CLVL=100;+ECHO=0,0,0,1 <- голосовое меню
AT+CHFA=2;+CMIC=2,2;+CLVL=100;+ECHO=2,7,5,1 <- разговор handsfree
Сообщение отредактировал Frolov Kirill - May 24 2012, 11:09