📄 i2stest.c
字号:
/*****************************************************************************
* 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -