i2stest.c
来自「深圳优龙科技LPC2468开发板」· C语言 代码 · 共 54 行
C
54 行
/*****************************************************************************
* i2stest.c: main C entry file for NXP LPC24xx Family Microprocessors
*
* Copyright(C) 2006, NXP Semiconductor
* All rights reserved.
*
* History
* 2006.07.20 ver 1.00 Prelimnary version, first Release
*
******************************************************************************/
#include "LPC24xx.h" /* LPC24xx definitions */
#include "type.h"
#include "i2s.h"
#include "windowsxp.h"
/*******************************************************************************
** Main Function main()
*******************************************************************************/
int main (void)
{
Wave * wave = (Wave *)WindowsXP;
if(wave->bps != 8 && wave->bps != 16)
{
}
else if ( I2SInit(2-wave->channel,wave->samplerate,wave->bps) == FALSE )
{
}
else
{
DWORD len = (wave->len - 32) >> 2;
DWORD * buf = wave->pdata;
int shift = wave->bps == 16;
while(len--)
{
while (((I2S_STATE >> 16) & 0xFF) == TXFIFO_FULL);
if(shift)
{
unsigned short * sbuf = (unsigned short *)buf;
DWORD value = (*sbuf + 0x8000) +((sbuf[1]+0x8000)<<16);
I2S_TX_FIFO = value & 0xFFFEFFFE;
buf++;
}
else
I2S_TX_FIFO = *buf++;
}
}
while(1);
}
/******************************************************************************
** End Of File
******************************************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?