📄 libsi3000startsampling.c
字号:
/*********************************************************************
* *
* Software License Agreement *
* *
* The software supplied herewith by Microchip Technology *
* Incorporated (the "Company") for its dsPIC controller *
* is intended and supplied to you, the Company's customer, *
* for use solely and exclusively on Microchip dsPIC *
* products. The software is owned by the Company and/or its *
* supplier, and is protected under applicable copyright laws. All *
* rights are reserved. Any use in violation of the foregoing *
* restrictions may subject the user to criminal sanctions under *
* applicable laws, as well as to civil liability for the breach of *
* the terms and conditions of this license. *
* *
* THIS SOFTWARE IS PROVIDED IN AN "AS IS" CONDITION. NO *
* WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, *
* BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND *
* FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE *
* COMPANY SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, *
* INCIDENTAL OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. *
* *
*********************************************************************/
/******************************************************************************
**
** Filename: libSi3000PMStartSampling.c
**
** System: RISC
**
** Platform: dsPIC33F
**
** Description: This file contains only the libSi3000PMStartSampling
** (short* expandbuf1,short* expandbuf2,
** short* buffer1,short* buffer2) API. It enables the user to
** start sampling speech data from the SI 3000 codec.
**
******************************************************************************/
#include <p33Fxxxx.h>
#include "G711Lib_common.h"
#include "G711Lib_si3000.h"
#include "G711Lib_internal.h"
/******************************************************************************
**
** FunctionName: libSi3000StartSampling ( )
**
** Description: This API enables the user to start sampling speech data from
** SI3000 codec.This API has four inputs which have to be passed
** to it as parameters, it also accesses the codecsetup
** structure members.Both the parameters are pointers to user
** defined sample buffers.These buffers will be handled as ping
** pong buffers.i.e.when data is being filled in one buffer the
** other buffer will be used to retrieve already stored data and
** vice versa when the other buffer is being filled with data.
**
******************************************************************************/
void libSi3000StartSampling (
short *expandbuf1,
short *expandbuf2,
short *buffer1,
short *buffer2 )
{
/* Initialize the sample buffer 1 pointer to one of the user defined ping
pong buffers */
codecdata.sampleExpandIpBuffer = expandbuf1;
/* Initialize the sample buffer 2 pointer to the other user defined ping
pong sample buffer */
codecdata.sampleExpandOpBuffer = expandbuf2;
/* Initialize the sample buffer 11 pointer to one of the user defined ping
pong buffers */
codecdata.sampleComprsIpBuffer = buffer1;
/* Initialize the sample buffer 12 pointer to one of the user defined ping
pong buffers */
codecdata.sampleComprsOpBuffer = buffer2;
codecdata.blockCount = 0x0000; //Clear the flag for playing new record.
_DCIIF = 0x00; //Clear the DCI interrupt flag
_DCIIP = g711.dciintpri; //Set Interrupt Priority of DCI.
/* Send digital silence to the output And start sampling speech data from
SI 3000 */
TXBUF0 = 0x0000;
TXBUF1 = 0x0000;
TXBUF2 = 0x0000;
TXBUF3 = 0x0000;
_DCIIF = 0x00; //Clear DCI interrupt flag .
_DCIIE = 0x01; //Enable DCI interrupts
_DCIEN = 0x01; //Enable the DCI peripheral.
}
/*-----------------------------------------------------------------------------
END OF FILE: libSi3000StartSampling.c
-----------------------------------------------------------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -