亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? i2s.c

?? LPCXpresso1768
?? C
字號:
/****************************************************************************
 *   $Id:: i2s.c 5797 2010-12-03 00:27:00Z usb00423                         $
 *   Project: NXP LPC17xx I2S example
 *
 *   Description:
 *     This file contains I2S code example which include I2S initialization, 
 *     I2C interrupt handler, and APIs for I2S access.
 *
 ****************************************************************************
 * Software that is described herein is for illustrative purposes only
 * which provides customers with programming information regarding the
 * products. This software is supplied "AS IS" without any warranties.
 * NXP Semiconductors assumes no responsibility or liability for the
 * use of the software, conveys no license or title under any patent,
 * copyright, or mask work right to the product. NXP Semiconductors
 * reserves the right to make changes in the software without
 * notification. NXP Semiconductors also make no representation or
 * warranty that such application will be suitable for the specified
 * use without further testing or modification.
****************************************************************************/
#include "lpc17xx.h"
#include "type.h"
#include "i2s.h"
#include "dma.h"

/* treat I2S TX and RX as a constant address, make the code and buffer 
easier for both DMA and non-DMA test */
volatile uint8_t *I2STXBuffer = (uint8_t *)(DMA_SRC); 
volatile uint8_t *I2SRXBuffer = (uint8_t *)(DMA_DST);
volatile uint32_t I2SReadLength = 0;
volatile uint32_t I2SWriteLength = 0;
volatile uint32_t I2SRXDone = 0, I2STXDone = 0;

/*****************************************************************************
** Function name:		I2S_IRQHandler
**
** Descriptions:		I2S interrupt handler, only RX interrupt is enabled
**						for simplicity.
**
** parameters:			None
** Returned value:		None
** 
*****************************************************************************/
void I2S_IRQHandler (void)  
{
  uint32_t RxCount = 0;

  if ( LPC_I2S->STATE & 0x01 )
  {
	RxCount = (LPC_I2S->STATE >> 8) & 0xFF;
	if ( (RxCount != RXFIFO_EMPTY) && !I2SRXDone )
	{
	  while ( RxCount > 0 )
	  {
		if ( I2SReadLength == BUFSIZE )
		{
		  LPC_I2S->DAI |= ((0x01 << 3) | (0x01 << 4));
		  LPC_I2S->IRQ &= ~(0x01 << 0);	/* Disable RX */	
		  I2SRXDone = 1;
		  break;
		}
		else
		{
		  I2SRXBuffer[I2SReadLength++] = LPC_I2S->RXFIFO;
		}
		RxCount--;
	  }
	}
  }
  return;
}

/*****************************************************************************
** Function name:		I2SStart
**
** Descriptions:		Start I2S DAI and DAO
**
** parameters:			None
** Returned value:		None
** 
*****************************************************************************/
void I2SStart( void )
{
  uint32_t DAIValue, DAOValue;
  
  /* Audio output is the master, audio input is the slave, */
  /* 16 bit data, stereo, reset, master mode, not mute. */
  DAOValue = LPC_I2S->DAO;
  DAIValue = LPC_I2S->DAI;
  LPC_I2S->DAO = DAOValue & (~((0x01 << 4)|(0x01 <<3)));
  /* 16 bit data, stereo, reset, slave mode, not mute. */
  LPC_I2S->DAI = DAIValue & (~((0x01 << 4)|(0x01 <<3)));
  return;
}

/*****************************************************************************
** Function name:		I2SStop
**
** Descriptions:		Stop I2S DAI and DAO
**
** parameters:			None
** Returned value:		None
** 
*****************************************************************************/
void I2SStop( void )
{
  uint32_t DAIValue, DAOValue;

  /* Stop the I2S to start. Audio output is master, audio input is the slave. */
  /* 16 bit data, set STOP and RESET bits to reset the channels */
  DAOValue = LPC_I2S->DAO;
  /* Switch to master mode, TX channel, no mute */
  DAOValue &= ~((0x01 << 5)|(0x01 << 15));
  DAIValue = LPC_I2S->DAI;
  DAIValue &= ~(0x01 << 15);
  LPC_I2S->DAO = (0x01 << 4) | (0x01 << 3) | DAOValue;	/* Master */
  LPC_I2S->DAI = (0x01 << 4) | (0x01 << 3) | DAIValue;	/* Slave */
  return;
}

/*****************************************************************************
** Function name:		I2SInit
**
** Descriptions:		Initialize I2S controller
**
** parameters:			None
** Returned value:		true or false, return false if the I2S
**						interrupt handler was not installed correctly
** 
*****************************************************************************/
void I2SInit( void ) 
{

  /*enable I2S in the PCONP register. I2S is disabled on reset*/
  LPC_SC->PCONP |= (1 << 27);

  /*connect the I2S sigals to port pins(P0.4-P0.9)*/
  LPC_PINCON->PINSEL0 &= ~0x000FFF00;
  LPC_PINCON->PINSEL0 |= 0x00055500;

  /* Please note, in order to generate accurate TX/RX clock rate for I2S, 
  PCLK and CCLK needs to be carefully reconsidered. For this test 
  program, the TX is looped back to RX without external I2S device, 
  clock rate is not critical in this matter. */
  LPC_I2S->TXRATE = 0x241;
  LPC_I2S->RXRATE = 0x241;

  I2SStop();
  return;
}

/******************************************************************************
**                            End Of File
******************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆精品秘密| 色香蕉成人二区免费| 亚洲尤物在线视频观看| 国产精品色哟哟网站| 久久久久久久久久久99999| 日韩一区二区三免费高清| 777精品伊人久久久久大香线蕉| 欧美综合亚洲图片综合区| 欧美日韩一级片在线观看| 欧美另类高清zo欧美| 欧美精品18+| 欧美本精品男人aⅴ天堂| 久久蜜桃av一区精品变态类天堂 | 成人免费毛片aaaaa**| 国产成人小视频| 成人激情开心网| 色婷婷国产精品综合在线观看| 欧美日韩精品一二三区| 日韩女优视频免费观看| 久久久99精品免费观看| 国产无一区二区| 亚洲蜜臀av乱码久久精品| 亚洲国产一区视频| 久久黄色级2电影| 成人网在线免费视频| 日本精品裸体写真集在线观看| 欧美日韩高清不卡| 久久久久久久性| 亚洲一卡二卡三卡四卡五卡| 理论电影国产精品| av一区二区三区| 3atv一区二区三区| 国产日韩欧美精品一区| 亚洲狠狠爱一区二区三区| 久久国产精品露脸对白| 91色|porny| 欧美大胆一级视频| 一区二区欧美国产| 国产麻豆午夜三级精品| 欧美三级视频在线播放| 欧美国产日韩a欧美在线观看| 日本欧美加勒比视频| 国产在线精品一区在线观看麻豆| 91在线视频播放地址| 欧美成人一区二区三区在线观看| 日韩理论片网站| 国产一二精品视频| 欧美精品亚洲二区| 亚洲天堂免费看| 国产乱人伦偷精品视频免下载 | 一区二区激情小说| 极品美女销魂一区二区三区| 在线中文字幕一区| 中文字幕av在线一区二区三区| 五月天激情小说综合| 91麻豆免费看片| 国产午夜精品福利| 国产最新精品免费| 日韩欧美一二三| 午夜视频一区二区三区| 91国模大尺度私拍在线视频| 欧美激情一区二区三区在线| 韩国女主播一区二区三区| 欧美精品黑人性xxxx| 亚洲高清不卡在线观看| 91麻豆蜜桃一区二区三区| 欧美韩国日本综合| 成人天堂资源www在线| 精品国产91亚洲一区二区三区婷婷| 亚洲小少妇裸体bbw| 91久久国产综合久久| 亚洲女厕所小便bbb| 国产精品一二三四区| 久久久夜色精品亚洲| 国产最新精品精品你懂的| 91精品国产乱码久久蜜臀| 亚洲电影欧美电影有声小说| 色噜噜狠狠色综合中国| 中文字幕一区二区三区不卡| 国产91色综合久久免费分享| 国产日韩欧美高清| 成人午夜激情视频| 国产精品久久久久aaaa樱花| 成人av网站大全| 亚洲视频你懂的| 欧美在线高清视频| 日韩专区在线视频| 日韩欧美综合在线| 国产一区二区主播在线| 国产日韩在线不卡| 一本色道久久综合亚洲aⅴ蜜桃 | 色婷婷综合久久久| 一区二区高清视频在线观看| 在线观看免费视频综合| 视频一区在线播放| xnxx国产精品| 91丨porny丨户外露出| 亚洲一区在线观看视频| 7777精品久久久大香线蕉| 日韩av在线发布| 欧美精品一区二区三区高清aⅴ| 精品无码三级在线观看视频| 亚洲精品在线电影| av电影天堂一区二区在线| 一区二区三区中文字幕在线观看| 精品视频免费看| 国产在线精品一区二区不卡了| 国产精品无圣光一区二区| 在线免费观看日本一区| 日韩成人免费电影| 中文字幕乱码日本亚洲一区二区| 日本韩国一区二区三区视频| 日韩av中文字幕一区二区| 国产精品人成在线观看免费| 91福利小视频| 懂色av一区二区夜夜嗨| 亚洲与欧洲av电影| 国产精品视频在线看| 在线播放/欧美激情| 懂色av一区二区三区免费观看| 亚洲精品va在线观看| 国产蜜臀97一区二区三区| 欧美日韩电影在线播放| 北条麻妃国产九九精品视频| 日韩精彩视频在线观看| 亚洲日本在线视频观看| 久久久五月婷婷| 7777精品伊人久久久大香线蕉的| 94-欧美-setu| 国产麻豆精品在线观看| 免费成人在线观看视频| 亚洲国产一区视频| 亚洲精品国产品国语在线app| 久久伊人蜜桃av一区二区| 欧美日韩成人在线一区| 色婷婷综合久久久久中文 | 成人精品视频一区二区三区| 美女精品自拍一二三四| 亚洲成人中文在线| 亚洲黄色免费网站| 亚洲三级免费观看| 亚洲四区在线观看| 中文字幕中文字幕一区二区| 欧美成人三级电影在线| 欧美日韩免费观看一区三区| 色悠悠久久综合| 97久久精品人人做人人爽50路| 国产精品99久久久久久有的能看 | 在线亚洲高清视频| 99精品视频在线观看免费| 成人夜色视频网站在线观看| 国产麻豆精品在线观看| 国产成人综合视频| 国产91精品免费| 国产盗摄一区二区| 成人高清在线视频| 成人黄色免费短视频| 国产99精品视频| 成人av影院在线| a亚洲天堂av| 色成人在线视频| 色综合欧美在线视频区| 欧美午夜精品一区二区蜜桃| 在线亚洲人成电影网站色www| 91丝袜美女网| 91久久国产综合久久| 制服丝袜在线91| 久久综合精品国产一区二区三区| 久久伊99综合婷婷久久伊| 国产免费观看久久| 亚洲精品久久久蜜桃| 一区二区三区精品| 日韩不卡免费视频| 蜜桃精品视频在线观看| 国产99久久久国产精品| 色域天天综合网| 在线播放国产精品二区一二区四区| 日韩一区和二区| 国产婷婷色一区二区三区| 亚洲精选免费视频| 日韩av一区二区三区| 国产盗摄精品一区二区三区在线| 色综合久久久久久久久| 日韩一区二区在线看| 亚洲国产精品精华液ab| 亚洲国产欧美日韩另类综合| 久久超碰97中文字幕| 91一区二区三区在线播放| 777午夜精品视频在线播放| 中文字幕欧美日韩一区| 亚洲国产欧美在线| 懂色av中文一区二区三区| 在线不卡免费欧美| 亚洲人成电影网站色mp4| 免费观看成人av| 色一情一乱一乱一91av| 久久精品视频免费| 日本强好片久久久久久aaa| 97久久久精品综合88久久| 欧美成人欧美edvon|