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

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

?? main.c.c

?? TIC6000系列MCBSP控制AD的程序
?? C
字號:
#define CHIP_6713 1
#include <csl.h>
#include <csl_mcbsp.h>
#include <csl_edma.h>
#include <csl_irq.h>
#include <stdio.h>

#pragma DATA_SECTION(xmitbuf,"xmit_buf");    // 預留buffers,并且分配到L2空間
unsigned short xmitbuf[0x0400];
#pragma DATA_SECTION(recvbuf,"recv_buf");
unsigned short recvbuf[0x0400];
#define BUFFER_SIZE 19                       // UART一次通信的數據個數
#define TRUE 1
#define FALSE 0
#define McBSP1Mux 0x90080006
MCBSP_Handle hMcbsp1;                      //  McBSP1句柄函數
EDMA_Handle hEdma14;                      //  EDMA 14句柄函數
EDMA_Handle hEdma15;                      //  EDMA 15句柄函數
volatile int receive_done = FALSE;
volatile int transmit_done = TRUE;
volatile int cnt=0;
char xmit_msg[BUFFER_SIZE] = "DSP6713W00E\n";
char recv_msg[BUFFER_SIZE] = "\n";
extern far void vectors();
void ConfigMcBSP(void);
void ConfigEDMA(void);
void ProcessTransmitData(void);
unsigned char ProcessReceiveData(void);
short VoteLogic(unsigned short);
int CheckTestCase(void);
interrupt void c_int08(void);
void initMCBSP(void);


void main(void)                         		// 主函數
{
    int i;
    CSL_init();                             		// 初始化CSL庫
    IRQ_nmiEnable();                       		// 使能nmi中斷
    IRQ_globalEnable();                     		// 使能全局中斷
    IRQ_setVecs(vectors);                    		// 設置中斷向量表地址
    IRQ_reset(IRQ_EVT_EDMAINT);
    EDMA_clearPram(0x00000000);					// 清空EDMA參數RAM
    
    initMCBSP();									// 打開緩沖串口1
    
    while(1)
    {	if(cnt>=BUFFER_SIZE)
		{   
		cnt=0;
		for(i=0;i<=BUFFER_SIZE;i++)
		xmit_msg[i]=recv_msg[i];		
		EDMA_enableChannel(hEdma14);
		MCBSP_enableXmt(hMcbsp1);
		}
    };
} 

void initMCBSP(void) 									// 初始化緩沖串口函數
{
    int waittime = 0;
    hMcbsp1 = MCBSP_open(MCBSP_DEV1, MCBSP_OPEN_RESET);
    ConfigMcBSP();									// 配置緩沖串口
    MCBSP_enableSrgr(hMcbsp1);						// 開啟采樣時鐘發生器
    							// 配置EDMA通道14發送數據,通道15接收數據
    ConfigEDMA();									// 配置EDMA控制器
    IRQ_enable(IRQ_EVT_EDMAINT);					// 使能EDMA中斷CPU
    EDMA_intEnable(14);
    EDMA_intEnable(15);
    EDMA_enableChannel(hEdma14);
    EDMA_enableChannel(hEdma15);
    MCBSP_enableRcv(hMcbsp1);						// 緩沖串口使能接收和發送
    MCBSP_enableFsync(hMcbsp1);
}

void ConfigEDMA(void)     							// EDMA參數RAM設置
{
    EDMA_configArgs(hEdma14,						// 設置EDMA通道14
        EDMA_OPT_RMK(
            EDMA_OPT_PRI_HIGH,
            EDMA_OPT_ESIZE_16BIT, 
            EDMA_OPT_2DS_NO, 
            EDMA_OPT_SUM_INC, 
            EDMA_OPT_2DD_NO,
            EDMA_OPT_DUM_NONE, 
            EDMA_OPT_TCINT_YES, 
            EDMA_OPT_TCC_OF(14), 
            EDMA_OPT_LINK_NO, 
            EDMA_OPT_FS_NO 
                        ),
        EDMA_SRC_RMK((Uint32) xmitbuf),      			// 設置SRC寄存器
        EDMA_CNT_RMK(					  			// 設置CNT寄存器
            EDMA_CNT_FRMCNT_DEFAULT,
            EDMA_CNT_ELECNT_OF(BUFFER_SIZE*10)
                        ),
        EDMA_DST_RMK(MCBSP_getXmtAddr(hMcbsp1)),	// 設置DST寄存器
        EDMA_IDX_RMK(0,0),							// 設置IDX寄存器
        EDMA_RLD_RMK(0,0)							// 設置RLD寄存器
                        );

        EDMA_configArgs(hEdma15, 						// 設置EDMA通道15
            EDMA_OPT_RMK(
                EDMA_OPT_PRI_HIGH, 
                EDMA_OPT_ESIZE_16BIT, 
                EDMA_OPT_2DS_NO, 
                EDMA_OPT_SUM_NONE, 
                EDMA_OPT_2DD_NO, 
                EDMA_OPT_DUM_INC,
                EDMA_OPT_TCINT_YES, 
                EDMA_OPT_TCC_OF(15),
                EDMA_OPT_LINK_NO, 
                EDMA_OPT_FS_NO
                              ),

            EDMA_SRC_RMK(MCBSP_getRcvAddr(hMcbsp1)),	// 設置SRC寄存器
            EDMA_CNT_RMK(0, (10)),							// 設置CNT寄存器
            EDMA_DST_RMK((Uint32) recvbuf), 				// 設置DST寄存器
            EDMA_IDX_RMK(0,0),							// 設置IDX寄存器
            EDMA_RLD_RMK(0,0)							// 設置RMK寄存器
                              );
}									

void ConfigEDMA1(void)
{
    EDMA_configArgs(hEdma15,							// 設置EDMA通道15
       EDMA_OPT_RMK(
            EDMA_OPT_PRI_HIGH,
            EDMA_OPT_ESIZE_16BIT, 
            EDMA_OPT_2DS_NO, 
            EDMA_OPT_SUM_NONE, 
            EDMA_OPT_2DD_NO, 
            EDMA_OPT_DUM_INC, 
            EDMA_OPT_TCINT_YES, 
            EDMA_OPT_TCC_OF(15), 
            EDMA_OPT_LINK_NO, 
            EDMA_OPT_FS_NO
                        ),
       EDMA_SRC_RMK(MCBSP_getRcvAddr(hMcbsp1)),		// 設置SRC寄存器
       EDMA_CNT_RMK(0, (10)),							// 設置CNT寄存器
       EDMA_DST_RMK((Uint32) recvbuf),					// 設置DST寄存器
       EDMA_IDX_RMK(0,0),								// 設置IDX寄存器
       EDMA_RLD_RMK(0,0)								// 設置RMK寄存器
                     );
} 

void ConfigMcBSP(void)									// 配置緩沖串口
{
MCBSP_Config mcbspCfg1 = {
       0x00000010, 										// 配置spcr寄存器
       0x80450840, 										// 配置rcr寄存器
       0x80400840, 										// 配置xcr寄存器
       0x20000050, 										// 配置srgr寄存器
       0x00000000, 										// 配置mcr寄存器
       0x00000000, 										// 配置rcer寄存器
       0x00000000, 										// 配置xcer寄存器
       0x00000B0C 										// 配置pcr寄存器
                     };
    MCBSP_config(hMcbsp1, &mcbspCfg1);
} 														//完成緩沖串口的配置

void ProcessTransmitData(void)								// 數據發送程序
{
    int i;
    short cnt = 1;
    unsigned char xmit_char;
    unsigned short *xmitbufptr;								// 指向發送數據緩沖區
    xmitbufptr = (unsigned short *)xmitbuf;
    for (i=0; i<(sizeof(xmitbuf)/sizeof(unsigned int)); i++)
        {
            xmitbufptr[i] = 0xFFFF; 						// 發送數據緩沖區清0
        }
    xmitbufptr = (unsigned short *)xmitbuf;					// 處理數據字節
    for (i = 0; i < BUFFER_SIZE; i++)
        {
            xmit_char = xmit_msg[i];
            for (cnt = -1; cnt < 9; cnt++)					// 發送每個字節的8位數據
                {
                    if (cnt == -1)
                        *xmitbufptr++ = 0x0000;
                        else if (cnt >=8)
                            *xmitbufptr++ = 0xFFFF;
                        else if (xmit_char & (1 << cnt))
                            *xmitbufptr++ = 0xFFFF;
                    else
                        *xmitbufptr++ = 0x0000;

                }					 					// 結束8位的數據發送
        } 				

} 														// 數據發送結束

unsigned char ProcessReceiveData(void) 						// 數據接收程序
{
    unsigned char recv_char = 0;
    short cnt = -1;
    short recv_val;
    unsigned short raw_data;
    unsigned short *recvbufptr;
    recvbufptr = (unsigned short *)recvbuf;               // 指向接收數據緩沖區
    recv_char = 0;
    for (cnt = -1; cnt < 9; cnt++)							// 處理每個接收到的數據幀
        {
            if(cnt == -1 || cnt == 8 || cnt == 9)
                {
                    *recvbufptr++;					// 放棄開始位和停止位
                }
            else
                {
                    raw_data = *recvbufptr;				 // 得到16位的數據
                    recvbufptr++;
                    recv_val = VoteLogic(raw_data);
                    recv_char += recv_val << cnt;
                }
        }					 					    // 結束8位的數據接收
    return(recv_char);
} 													// 數據接收結束

short VoteLogic(unsigned short value)
{
    short returnvalue;
    switch ((value >> 6) & 0x0F)
        {
            case 0:
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
            case 6:
            case 8:
            case 9:
            case 10:
            returnvalue = 0;
            break;
            case 7:
            case 11:
            case 12:
            case 13:
            case 14:
            case 15:
            returnvalue = 1 ;
            break;
        } 											
   return (returnvalue);
} 						

interrupt void c_int08(void)					// EDMA傳輸結束發送中斷
{
   int i;

   if (EDMA_intTest(15))
      {	
      	EDMA_intClear(15);
	    recv_msg[cnt]=ProcessReceiveData();	
	    cnt++;
	    ConfigEDMA1();
	    EDMA_intEnable(15);
     }

   if (EDMA_intTest(14))
      { 	
         EDMA_intClear(14);
         transmit_done = TRUE;
         EDMA_disableChannel(hEdma14);
      }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲va综合人人澡精品 | 蜜桃久久久久久| 久久av资源网| 99久久精品一区二区| 日韩一级黄色片| 综合婷婷亚洲小说| 国产在线精品免费| 欧美日韩dvd在线观看| 欧美国产一区在线| 美国精品在线观看| 欧美日韩在线三级| 国产精品欧美综合在线| 蜜桃精品视频在线| 在线看日本不卡| 国产精品久久久久久久久晋中| 日韩中文字幕区一区有砖一区 | 日韩久久久精品| 亚洲黄色免费网站| 成人免费不卡视频| 欧美va亚洲va香蕉在线| 丝袜美腿亚洲色图| 欧美在线色视频| 中文字幕一区二区三区视频| 美女www一区二区| 欧美日韩成人高清| 同产精品九九九| 欧美系列日韩一区| 亚洲一区二区三区小说| 99精品欧美一区二区三区小说| 久久网站热最新地址| 蜜臀久久久久久久| 日韩一区国产二区欧美三区| 99久久免费精品| 国产亚洲视频系列| 国产自产高清不卡| 欧美一级生活片| 亚洲一区二区精品视频| av亚洲精华国产精华精华| 久久尤物电影视频在线观看| 日本亚洲视频在线| 欧美色大人视频| 日韩三级精品电影久久久| 亚洲成av人片观看| 欧美性猛交xxxxxx富婆| 亚洲人精品午夜| av电影一区二区| 国产精品欧美久久久久无广告| 狠狠狠色丁香婷婷综合久久五月| 日韩三级免费观看| 免费人成网站在线观看欧美高清| 51精品国自产在线| 蜜芽一区二区三区| 日韩视频一区二区三区| 日韩电影免费在线看| 欧美日韩aaa| 日本麻豆一区二区三区视频| 欧美电影一区二区三区| 美日韩一区二区三区| 国产精品美女www爽爽爽| 亚洲日本va在线观看| 国精产品一区一区三区mba桃花| 欧美精品自拍偷拍| 日韩影院在线观看| 日韩一区二区三区免费观看| 麻豆91小视频| 国产日韩v精品一区二区| 九九国产精品视频| 国产三级一区二区| 韩国欧美国产1区| 亚洲国产精品精华液ab| 波多野结衣在线aⅴ中文字幕不卡| 国产精品久久99| 91麻豆精东视频| 天天色 色综合| 亚洲精品自拍动漫在线| 99综合电影在线视频| 午夜精品一区二区三区电影天堂 | 亚洲高清免费观看高清完整版在线观看| 99re视频精品| 天天色天天操综合| 久久综合九色综合久久久精品综合| 国产一区二区导航在线播放| 亚洲欧洲精品一区二区三区| 精品视频1区2区| 久久精品国内一区二区三区| 欧美激情中文字幕一区二区| 国产ts人妖一区二区| 夜色激情一区二区| 欧美电影一区二区| 国产精品77777竹菊影视小说| 国产精品麻豆一区二区| 欧美最新大片在线看| 精品一区二区三区视频| 国产精品成人免费在线| 在线播放91灌醉迷j高跟美女| 国产成人综合精品三级| 亚洲一区在线观看免费| 国产丝袜在线精品| 欧美理论在线播放| jlzzjlzz国产精品久久| 亚洲国产裸拍裸体视频在线观看乱了 | 国产精品丝袜91| 正在播放亚洲一区| 精品一区二区三区影院在线午夜| 国产精品午夜春色av| 日韩欧美成人午夜| 精品国产91久久久久久久妲己| 不卡一区二区在线| 奇米一区二区三区| 亚洲精品乱码久久久久久久久| 欧美成人欧美edvon| 色综合久久中文字幕综合网| 国内精品不卡在线| 日韩中文字幕一区二区三区| 亚洲欧美成人一区二区三区| 久久夜色精品国产噜噜av| 欧美丝袜丝交足nylons| 高清av一区二区| 麻豆91在线观看| 日韩av网站免费在线| 国产人成亚洲第一网站在线播放| 91免费小视频| 国产电影一区在线| 国产在线播放一区| 蜜桃视频免费观看一区| 日本成人在线一区| 亚洲一区免费视频| 亚洲蜜臀av乱码久久精品| 久久精品一区二区三区不卡牛牛| 日韩欧美一级二级三级久久久| 69p69国产精品| 欧美日韩国产另类一区| 欧美婷婷六月丁香综合色| 91麻豆国产自产在线观看| 91免费视频网址| 色婷婷av一区二区三区大白胸| 国产在线不卡一卡二卡三卡四卡| 国产露脸91国语对白| 久久国产生活片100| 久久国产精品72免费观看| 日韩av一二三| 捆绑紧缚一区二区三区视频 | 成人福利视频网站| 韩国在线一区二区| 麻豆一区二区三| 久久草av在线| 久热成人在线视频| 久久精品国产网站| 久久国产三级精品| 成人中文字幕合集| av在线一区二区三区| 99精品偷自拍| 色综合久久久久久久久久久| 精品视频在线免费观看| 日韩一区二区视频| 欧美中文字幕不卡| 欧美一级高清片| 精品99一区二区| 国产精品色在线观看| 伊人色综合久久天天人手人婷| 五月婷婷综合网| 九色|91porny| 风间由美一区二区三区在线观看| 制服丝袜一区二区三区| 久久男人中文字幕资源站| 国产欧美一区二区精品婷婷| 亚洲婷婷在线视频| 日本vs亚洲vs韩国一区三区| 黄色成人免费在线| 99久久精品久久久久久清纯| 欧美日韩国产中文| 久久毛片高清国产| 一区二区三区久久久| 久久99久久久久| 国产一区二区在线电影| 欧美另类videos死尸| 国产午夜精品一区二区三区视频 | 国产专区欧美精品| 99免费精品在线观看| 欧美一区二区三区公司| 亚洲国产精品二十页| 亚洲另类在线制服丝袜| 日日噜噜夜夜狠狠视频欧美人| 国产麻豆精品视频| 欧美日韩高清影院| 国产欧美久久久精品影院| 亚洲成人手机在线| 成人午夜在线免费| 欧美做爰猛烈大尺度电影无法无天| 久久伊人中文字幕| 偷拍一区二区三区| 99vv1com这只有精品| 日韩欧美一区二区免费| 亚洲精品免费在线| 另类小说色综合网站| 欧美在线观看一区二区| 欧美经典一区二区| 男男成人高潮片免费网站| 色成年激情久久综合| 国产欧美日韩不卡免费|