?? adds_21161_ezkit_.asm
字號:
#include <asm_sprt.h>
#include "def21161.h"
#include "adds_21161_ezkit.h"
.section /dm seg_dmda;
.var _Left_Channel0; /* Input values from AD1836 ADCs */
.var _Left_Channel1;
.var _Left_Channel2;
.var _Left_Channel3; /* AD1852 */
.var _Right_Channel0;
.var _Right_Channel1;
.var _Right_Channel2;
.var _Right_Channel3; /* AD1852 */
.var _Left_Channel_SPDIF_rx;
.var _Right_Channel_SPDIF_rx;
.global _Left_Channel0; /* Input values from AD1836 ADCs */
.global _Left_Channel1;
.global _Left_Channel2;
.global _Left_Channel3; /* AD1852 */
.global _Right_Channel0;
.global _Right_Channel1;
.global _Right_Channel2;
.global _Right_Channel3; /* AD1852 */
.global _Left_Channel_SPDIF_rx;
.global _Right_Channel_SPDIF_rx;
.extern _rx0a_buf;
.extern _tx2a_buf;
.section /pm seg_pmco;
_Receive_Samples:
.global _Receive_Samples;
//void Receive_Samples();
/* modified to merge channels 0 and 1 */
/* get AD1836 left channel input samples, save to data holders for processing */
r1 = -31;
r0 = dm(_rx0a_buf + Internal_ADC_L0); f0 = float r0 by r1; // dm(_Left_Channel0) = r0;
r2 = dm(_rx0a_buf + Internal_ADC_L1); f2 = float r2 by r1; f0 = f0 + f2; dm(_Left_Channel0) = r0;
r0 = dm(_rx0a_buf + AUX_ADC_L0); f0 = float r0 by r1; dm(_Left_Channel_SPDIF_rx) = r0;
/* get AD1836 right channel input samples, save to data holders for processing */
r0 = dm(_rx0a_buf + Internal_ADC_R0); f0 = float r0 by r1; //dm(_Right_Channel0) = r0;
r2 = dm(_rx0a_buf + Internal_ADC_R1); f2 = float r2 by r1; f0 = f0 + f2; dm(_Right_Channel0) = r0;
r0 = dm(_rx0a_buf + AUX_ADC_R0); f0 = float r0 by r1; dm(_Right_Channel_SPDIF_rx) = r0;
leaf_exit;
_Receive_Samples.end:
_Transmit_Samples:
.global _Transmit_Samples;
r1 = 31;
/* output processed left ch audio samples to AD1836 */
r0 = dm(_Left_Channel0); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_L0) = r0;
r0 = dm(_Left_Channel1); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_L1) = r0;
r0 = dm(_Left_Channel2); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_L2) = r0;
r0 = dm(_Left_Channel3); r0 = trunc f0 by r1; dm(_tx2a_buf + AUX_DAC_L0) = r0;
/* output processed right ch audio samples to AD1836 */
r0 = dm(_Right_Channel0); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_R0) = r0;
r0 = dm(_Right_Channel1); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_R1) = r0;
r0 = dm(_Right_Channel2); r0 = trunc f0 by r1; dm(_tx2a_buf + Internal_DAC_R2) = r0;
r0 = dm(_Right_Channel3); r0 = trunc f0 by r1; dm(_tx2a_buf + AUX_DAC_R0) = r0;
leaf_exit;
_Transmit_Samples.end:
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -