59 lines
1.6 KiB
C
59 lines
1.6 KiB
C
//
|
|
// Created by xemon on 20.10.22.
|
|
//
|
|
#include "AtGsmTelitLe910_DigitalVoicebandInterface.h"
|
|
#include <AtCmdCommonProtected.h>
|
|
|
|
|
|
AtCommandResult AtGsmTelitLe910_SetSpeakerVolumeLevel(tAtCmd *env, uint16_t level) {
|
|
AtCmdPrepare(env);
|
|
AtCmdTxClear(env);
|
|
|
|
AtCmdTxAddStatic(env, "AT#PCMRXG=");
|
|
AtCmdTxAddDecimalIntWithLimit(env, level, 4);
|
|
|
|
AtCmdTxSendLn(env);
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
}
|
|
|
|
AtCommandResult AtGsmTelitLe910_DviEnableMaster(tAtCmd *env) {
|
|
AtCmdPrepare(env);
|
|
AtCmdSendStatic(env, "AT#DVI=1,2,1\r\n");
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
}
|
|
|
|
AtCommandResult AtGsmTelitLe910_DviToPcmMode(tAtCmd *env) {
|
|
AtCmdPrepare(env);
|
|
AtCmdSendStatic(env, "AT#DVIEXT=0\r\n");
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
}
|
|
|
|
|
|
AtCommandResult AtGsmTelitLe910_DviPcmClk(
|
|
tAtCmd *env,
|
|
eAtGsmTelitLe910DviClock clock,
|
|
eAtGsmTelitLe910DviSampleRate sampleRate
|
|
) {
|
|
AtCmdPrepare(env);
|
|
AtCmdTxClear(env);
|
|
|
|
AtCmdTxAddStatic(env, "AT#DVICLK=");
|
|
AtCmdTxAddDecimalIntWithLimit(env, (1 << clock), 4);
|
|
AtCmdTxAddStatic(env, ",");
|
|
AtCmdTxAdd(env, (char *) &sampleRate, 1);
|
|
|
|
AtCmdTxSendLn(env);
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
}
|
|
|
|
AtCommandResult AtGsmTelitLe910_DviToI2s16Khz(tAtCmd *env) {
|
|
AtCmdPrepare(env);
|
|
AtCmdSendStatic(env, "AT#DVIEXT=1,1\r\n");
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
}
|
|
|
|
AtCommandResult AtGsmTelitLe910_DviToI2s8Khz(tAtCmd *env) {
|
|
AtCmdPrepare(env);
|
|
AtCmdSendStatic(env, "AT#DVIEXT=1,0\r\n");
|
|
return AtCmdOkErrAnswer(env, env->stdRxTimeout);
|
|
} |