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

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

?? mcbsp.c

?? DSP5416串口編程
?? C
字號:
/*********************************************************************************
*  MCPSB.C	v1.00   測試MCBSP同步串口測試的主程序	                             *
*  版權(c) 	2003-		北京合眾達電子技術有限責任公司			                 *
*  設計者:	段立鋒								                                 *
**********************************************************************************/
#include "type.h"
#include "uart.h"
#include "sysreg.h"
#include "mcbsp54.h"
#include "comm.h"

#define mcbsp1   1
/*幀長度的設定*/
#define  FRAMLONGTH    0x104

#define  DataLongth   0x100

typedef struct _UartForDec5416{
	unsigned int Length;
	unsigned int Type;
	unsigned int Mutul;
	unsigned int Data[DataLongth];
	unsigned int Check;
}UartForDec5416, *PuartForDec5416; 

HANDLE uart_a =0;
unsigned int audiodata =0;
PuartForDec5416 precieve =0;	
unsigned int i= 0;
unsigned int k= 0;
int uart_s=0,uart_err=0,fifostatus=0;
PuartForDec5416 psend=0;
PAdConfig padset = 0;
unsigned int datasendlong = 0;
unsigned int errorsend = 0;
unsigned int uart[0x104] ={0};
unsigned int uarts[0x104] = {0};

char s_uart_r[20],s_uart_t[20];


main()
{
	/*設置系統時鐘*/
	sys_clk(CLK160);
	/*初始化DEC5416板卡*/
	dec5416_init();
	for(i= 0; i<0x104;i++)
	{
		uart[i] = 0x5555;
		uarts[i] = 0x5555;
	}
	/*同步串口選擇*/
	sys_set(0x10);
	/*同步串口初始化*/
	/****************************************************************/
	/* Place port in reset - setting XRST & RRST to 0               */
	/****************************************************************/
	/*進行發送復位*/
	MCBSP_SUBREG_BITWRITE(mcbsp1, SPCR1_SUBADDR, RRST, RRST_SZ, 0);
	/*進行接收復位*/
	MCBSP_SUBREG_BITWRITE(mcbsp1, SPCR2_SUBADDR, XRST, XRST_SZ, 0); 
	/****************************************************************/
	/* Set values of all control registers                          */
	/****************************************************************/
	/*設置SPCR1寄存器,禁止SPI模式*/
	MCBSP_SUBREG_WRITE(mcbsp1, SPCR1_SUBADDR, 0);
	/*設置XCR1寄存器,單數據相,發送數據長度為16位,每相1個數據*/
	MCBSP_SUBREG_WRITE(mcbsp1, XCR1_SUBADDR, 0x40);
	/*設置XCR2寄存器,發送數據延時一個位*/
	MCBSP_SUBREG_WRITE(mcbsp1, XCR2_SUBADDR, 0x1);
	/*設置RCR1寄存器,單數據相,接受數據長度為16位,每相1個數據*/
	MCBSP_SUBREG_WRITE(mcbsp1, RCR1_SUBADDR, 0x040);
	/*設置RCR2寄存器,單數據相,接收延時一個位*/
	MCBSP_SUBREG_WRITE(mcbsp1, RCR2_SUBADDR, 0x01);
	/*設置PCR寄存器,設置BLCKR為輸入,下降沿接收數據
	   		         設置BFSR為輸入,并且其極性為高有效
	   		         設置BCLKX由內部時鐘產生,并且上沿發送數據*/
	MCBSP_SUBREG_WRITE(mcbsp1, PCR_SUBADDR, 0xA00);
	/*使能波特率寄存器*/
 	MCBSP_SUBREG_BITWRITE(mcbsp1, SPCR2_SUBADDR, GRST, GRST_SZ, 1);
 	/*等待兩個CLKG時鐘周期*/
	asm(" nop ");
	asm(" nop ");
	/*設置SRGR1,確定分頻數為0x0FF,MCBSP2的波待率為625k
	,幀脈沖寬度為1個數據位,0x0FF*/
	MCBSP_SUBREG_WRITE(mcbsp1, SRGR1_SUBADDR, 0xFFFF);
	/*設置SRGR2,確定時鐘來源為內部的CPU
		           ,確定幀同步為低有效。*/
	MCBSP_SUBREG_WRITE(mcbsp1, SRGR2_SUBADDR, 0x2000);
	/*使能MCBSP2發送與接收*/
	MCBSP_SUBREG_BITWRITE(mcbsp1, SPCR1_SUBADDR, RRST, RRST_SZ, 1);
	MCBSP_SUBREG_BITWRITE(mcbsp1, SPCR2_SUBADDR, XRST, XRST_SZ, 1); 
	/*等待兩個CLKG時鐘周期*/
 	asm(" nop ");
	asm(" nop ");
	/**********************************************************************/
	/*  同步串口初始化結束                                                */
	/**********************************************************************/
	/*獲取有效的串口句柄*/
	uart_a = uart_open(UART_A);
	/*初始化串口*/
	uart_setup(uart_a,    /*串口A*/
			   buad_19k2,  /*串口的波特率設置*/
			   data_w8,   /*數據長度為8*/ 
			   data_s1,   /*數據停止位為1*/ 
			   //uart_parity,    /*設置奇較驗位*/	 
			   0,
			   (fifo_enable+fifo_txdip16+fifo_rxdip16),/*FIFO設置*/ 
			   0);       /*設置自閉環方式*/		   
	/*串口A中斷設置*/		   
	uart_interrupt_control( uart_a, uartint_rhr, uart_enable);
	/*設置接收長度*/
	uart_reclong_set(uart_a,FRAMLONGTH);
	/*打開系統的串口中斷*/
	sysint_enable(0x2);
	
	/*配置系統存儲器*/	
	memory_set(0x80);
	
	/*實驗主控程序*/
	psend =  (PuartForDec5416)(&uarts[0]);
	/*通知主機,系統準備好*/
	psend->Length = FRAMLONGTH;
	psend->Type = UARTCOMMAND;
	psend->Data[0] = INITOVER;
	psend->Mutul = UARTCONT;
	uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
	for(;;)
	{	
		uart_recive(uart_a,&uart[0]);
		/*判斷串口的狀態*/
		uart_s =uart_status(uart_a);
		if( uart_s == 2)
		{
			/*讀RHR清 RHR interrupt*/
			uart_read_reg(uart_a,rhr);
			/*復位FIFO指針*/
			fifostatus = uart_read_reg(uart_a,fcr);
			uart_write_reg(uart_a,fcr,fifo_rreset);
			uart_write_reg(uart_a,fcr,fifostatus);
			continue;	
		}
		/*串口出錯*/
		if(uart_s == ERROR)
		{
			/*讀狀態寄存器*/
			uart_err = uart_read_reg(uart_a,lsr);
			/*復位FIFO指針*/
			fifostatus = uart_read_reg(uart_a,fcr);
			uart_write_reg(uart_a,fcr,fifo_rreset);
			uart_write_reg(uart_a,fcr,fifostatus);
			/*通知主機程序通訊出錯,準備重發*/
			psend->Length = FRAMLONGTH;
			psend->Type = UARTCOMMAND;
			psend->Data[0] =  RECIEVEERROR;
			psend->Mutul = UARTCONT;
			uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
			continue;
		}
		/*數據較驗出錯*/
		if(uart_s == 3)
		{
			/*復位FIFO指針*/
			fifostatus = uart_read_reg(uart_a,fcr);
			uart_write_reg(uart_a,fcr,fifo_rreset);
			uart_write_reg(uart_a,fcr,fifostatus);
			/*通知主機程序通訊出錯,準備重發*/
			psend->Length = FRAMLONGTH;
			psend->Type = UARTCOMMAND;
			psend->Data[0] =  RECIEVEERROR;
			psend->Mutul = UARTCONT;
			uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
			continue;	
		}
		/*數據未準備好*/
		if(uart_s == 0)
		{
			precieve = (PuartForDec5416)(&uart[0]);
			/*不是命令幀*/
			if(precieve->Type != UARTCOMMAND)
			{
				/*無效命令*/
				psend->Length = FRAMLONGTH;
				psend->Type = UARTCOMMAND;
				psend->Data[0] =  COMMANDNODO;
				psend->Mutul = UARTCONT;
				uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
				precieve->Data[0] = 0;	
			}
			continue;
		}
		/*接收從主機的數據*/
		precieve = (PuartForDec5416)(&uart[0]);
		switch(precieve->Data[0])
		{
			/*打開同步串口*/	
			case MCBSPOPEN:
				/* Wait for sample from handset */
			   /* while (!MCBSP_RRDY(mcbsp1)) {};*/
			    if(MCBSP_RRDY(mcbsp1))
			    {
			       	/* Read sample from and write back to handset codec */
					s_uart_r[i] = *(volatile u16*)DRR1_ADDR(mcbsp1);
					*(volatile u16*)DXR1_ADDR(mcbsp1) = s_uart_r[i];			     
					s_uart_t[i] = s_uart_r[i];
					i = i+1;
					if(i == 20)
					{
					    i= 0;
					}
				}	     

/*			    if(MCBSP_XRDY(mcbsp1))
			  	{
			  		*(volatile u16*)DXR1_ADDR(mcbsp1) = s_uart_t[i];
			  	  	k = k+1;
					if(i == 20)
					{
					    k= 0;
					}		
			  	  }*/
			  	 break;
			case MCBSPCLOSE:
				precieve->Data[0] = 0;
				break;
				  	  
			/*系統復位*/
			case SYSRESET:
				sys_set(0x4);
				precieve->Data[0] = 0;
				break;
			
			default:
				break;
		} 		
	}					   
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美国产麻豆| 国内外成人在线| 亚洲精品少妇30p| 国产精品久久久久桃色tv| 国产日韩欧美精品综合| 国产日韩高清在线| 中文字幕第一页久久| 国产女人aaa级久久久级| 国产欧美日韩三级| 国产精品久久久久久久第一福利| 国产欧美日韩亚州综合| 最新日韩在线视频| 一区二区三区日韩在线观看| 一区二区高清视频在线观看| 亚洲mv在线观看| 日韩黄色免费电影| 韩国av一区二区| 成人一区二区三区视频| 一本到三区不卡视频| 欧美亚洲国产bt| 欧美一二三四区在线| 久久综合九色综合97婷婷| 国产欧美一区视频| 亚洲女与黑人做爰| 亚洲成人av电影在线| 蜜桃av一区二区在线观看 | 99精品桃花视频在线观看| 成人av在线一区二区三区| 91免费版在线看| 欧美日韩国产中文| 精品久久久久av影院| 中文字幕av不卡| 一区二区高清免费观看影视大全| 日本美女一区二区三区| 国产不卡视频在线播放| 色综合av在线| 日韩欧美一卡二卡| 国产精品美女一区二区在线观看| 亚洲人成人一区二区在线观看| 一区二区国产盗摄色噜噜| 麻豆精品视频在线观看视频| 不卡影院免费观看| 欧美喷潮久久久xxxxx| 久久久久一区二区三区四区| 亚洲女人小视频在线观看| 美国三级日本三级久久99| 97精品超碰一区二区三区| 日韩一级视频免费观看在线| 国产精品久久久久久久久久久免费看| 亚洲国产精品麻豆| 国产91对白在线观看九色| 在线免费视频一区二区| 久久综合狠狠综合久久综合88| 一区二区三区免费| 国产乱妇无码大片在线观看| 欧美日韩在线直播| 中文字幕国产一区| 免费成人在线观看视频| 色先锋aa成人| 久久网站最新地址| 亚洲成人在线免费| 懂色av一区二区三区免费看| 欧美一区二区三区成人| 亚洲欧洲美洲综合色网| 久久国产尿小便嘘嘘尿| 在线看日韩精品电影| 国产视频一区二区三区在线观看| 偷拍一区二区三区四区| 91在线观看地址| 久久精品日产第一区二区三区高清版 | 亚洲三级在线播放| 美国三级日本三级久久99| 色丁香久综合在线久综合在线观看| 欧美人妖巨大在线| 亚洲精品国产a久久久久久 | 欧美tk—视频vk| 亚洲国产精品自拍| 91亚洲大成网污www| 久久久久国产精品人| 蜜臀久久久久久久| 欧美午夜片在线看| 亚洲精品国产第一综合99久久| 粉嫩av一区二区三区粉嫩 | 日本不卡一区二区三区高清视频| 日本黄色一区二区| 亚洲天堂2016| 99re在线精品| 亚洲欧洲精品一区二区精品久久久 | 亚洲曰韩产成在线| 国产成人av影院| www激情久久| 免费观看91视频大全| 欧美精品丝袜中出| 亚洲va天堂va国产va久| 91行情网站电视在线观看高清版| ㊣最新国产の精品bt伙计久久| 成人午夜电影久久影院| 欧美国产日本视频| 国产伦精品一区二区三区免费| 欧美成人精品高清在线播放 | av中文字幕不卡| 国产精品区一区二区三区| 国产精品亚洲专一区二区三区 | 欧美日韩国产精选| 香蕉久久一区二区不卡无毒影院 | ●精品国产综合乱码久久久久| 丁香啪啪综合成人亚洲小说| 久久久久久97三级| 国产成人精品免费看| 日本一区免费视频| www.爱久久.com| 亚洲欧美日韩久久精品| 在线观看av一区| 日韩 欧美一区二区三区| 91精品国产免费久久综合| 蜜乳av一区二区三区| 久久亚洲一级片| 国产成人鲁色资源国产91色综 | 精品中文av资源站在线观看| 欧美精品一区男女天堂| 国产成人啪午夜精品网站男同| 国产精品每日更新在线播放网址 | 337p粉嫩大胆噜噜噜噜噜91av | 欧美成人r级一区二区三区| 麻豆一区二区三区| 久久精品视频在线看| 91麻豆精品视频| 午夜视频一区二区| 欧美大肚乱孕交hd孕妇| 国产69精品久久777的优势| 亚洲欧洲99久久| 欧美日韩精品欧美日韩精品| 久久国产精品72免费观看| 国产午夜精品理论片a级大结局| 99国产精品视频免费观看| 午夜伦理一区二区| 精品久久人人做人人爱| 成人综合在线视频| 一区二区成人在线| 精品国产百合女同互慰| av亚洲精华国产精华| 亚洲gay无套男同| 26uuu色噜噜精品一区| 成人免费观看视频| 天堂在线一区二区| 欧美一级在线视频| 国产在线精品不卡| 综合久久国产九一剧情麻豆| 91精品蜜臀在线一区尤物| 国产69精品久久久久777| 午夜精品成人在线| 国产网站一区二区| 欧美亚洲国产一区二区三区 | 99久久精品国产麻豆演员表| 亚洲成人www| 国产精品久久久久久久岛一牛影视 | 国产精品成人午夜| 在线成人av影院| www.亚洲国产| 久久精品72免费观看| 欧美高清在线一区| 欧美一区二区在线免费播放| 成人ar影院免费观看视频| 日韩精品每日更新| 中文字幕一区av| 欧美成人vps| 精品视频1区2区3区| 成人a免费在线看| 九九九精品视频| 午夜精品免费在线观看| 国产视频一区不卡| 日韩视频在线观看一区二区| 91视视频在线直接观看在线看网页在线看 | 欧美一区在线视频| 不卡影院免费观看| 国产在线精品一区二区不卡了| 亚洲免费色视频| 欧美激情一区二区| 欧美va亚洲va香蕉在线| 欧美精品乱码久久久久久| 99九九99九九九视频精品| 国产精品99久久久久久似苏梦涵| 日韩av中文在线观看| 亚洲夂夂婷婷色拍ww47| 国产精品拍天天在线| 久久久久久久久久久久久女国产乱| 欧美日韩在线综合| 欧美影院精品一区| 91在线观看美女| av在线不卡电影| 成人免费视频免费观看| 国产一区三区三区| 免播放器亚洲一区| 日本欧美久久久久免费播放网| 亚洲第一综合色| 亚洲国产一区二区在线播放| 亚洲欧美怡红院| 亚洲欧美福利一区二区| 亚洲欧美在线视频观看| 中文字幕色av一区二区三区|