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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? dma.c

?? sw44b0test
?? C
字號(hào):
/**********************************************************************
 CAUTION: DMA operation is being done in cache-on state NOW.
	  So,some read value may be not same with real memory value
	  because of the cache. Users must fully consider the role of
	  cache after DMA has been being operated. It is the best way
	  using non-cacheable region in the memory area written by DMA.
 **********************************************************************/

#include <string.h>
#include "..\inc\44b.h"
#include "..\inc\44blib.h"
#include "..\inc\def.h"

void Zdma0Int(int srcAddr,int dstAddr,int length,int dw);
void Zdma1Int(int srcAddr,int dstAddr,int length,int dw);
void __irq Zdma0Done(void);
void __irq Zdma1Done(void);


volatile int zdma0Done,zdma1Done;



void Test_Zdma0(void)
{
    unsigned char *src, *dst;
    int i;
    unsigned int memSum;

    rINTMSK|=BIT_GLOBAL;
    pISR_ZDMA0=(int)Zdma0Done;

    Uart_Printf("[ZDMA0 MEM2MEM Test]\n");

    dst=(unsigned char *)malloc(0x80000);
    src=(unsigned char *)malloc(0x80000);
	 
    rNCACHBE1=( ( (((unsigned)dst+0x100000)>>12) +1 )<<16 )|((unsigned)dst>>12);

    Uart_Printf("dst=%x,src=%x\n",(int)dst,(int)src);

/* Copy by word */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=0x1;
    Zdma0Int((int)src,(int)dst,0x80000,2); //word
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x80000)Uart_Printf("O.K.\n");
    else Uart_Printf("ERROR!!!\n");

/* Copy by half-word */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=2;
    Zdma0Int((int)src,(int)dst,0x80000,1); //half-word
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x100000)Uart_Printf("O.K.\n");
    else Uart_Printf("ERROR!!!\n");

/* Copy by byte */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=3;
    Zdma0Int((int)src,(int)dst,0x80000,0); //byte
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x180000)Uart_Printf("O.K.\n");
    else Uart_Printf("ERROR!!!\n");

    free(src);
    free(dst);
}


void Test_Zdma1(void)
{
    unsigned char *src, *dst;
    int i;
    unsigned int memSum;

    rINTMSK|=BIT_GLOBAL;
    pISR_ZDMA1=(int)Zdma1Done;

    Uart_Printf("[ZDMA1 MEM2MEM Test]\n");

    dst=(unsigned char *)malloc(0x80000);
    src=(unsigned char *)malloc(0x80000);

    rNCACHBE1=( ( (((unsigned)dst+0x100000)>>12) +1 )<<16 )|((unsigned)dst>>12);


/* Copy by word */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=1;
    Zdma1Int((int)src,(int)dst,0x80000,2); //word
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x80000)Uart_Printf("O.K.\n");
    else Uart_Printf("ERROR!!!\n");

/* Copy by half-word */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=2;
    Zdma1Int((int)src,(int)dst,0x80000,1); //half-word
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x100000)Uart_Printf("O.K.\n");
    else Uart_Printf("ERROR!!!\n");

/* Copy by byte */
    memSum=0;
    for(i=0;i<0x80000;i++)
	*(src+i)=3;
    Zdma1Int((int)src,(int)dst,0x80000,0); //byte
    for(i=0;i<0x80000;i++)
	memSum+=*(dst+i);
    Uart_Printf("memSum=%8x:",memSum);
    if(memSum==0x180000)
	Uart_Printf("O.K.\n");
    else
	Uart_Printf("ERROR!!!\n");

    free(src);
    free(dst);
}




void Zdma0Int(int srcAddr,int dstAddr,int length,int dw)
//returns the checksum
{
    int time;
    zdma0Done=0;
    rINTMSK=~(BIT_GLOBAL|BIT_ZDMA0);
    rZDISRC0=srcAddr|(dw<<30)|(1<<28); // inc
    rZDIDES0=dstAddr|( 2<<30)|(1<<28); // inc
    rZDICNT0=length |( 2<<28)|(1<<26)|(3<<22)|(1<<20);
    //whole,unit transfer,int@TC,enable DMA
    rZDCON0=0x1; // start!!!  

    Timer_Start(3);//128us resolution	      
    while(zdma0Done==0);
    time=Timer_Stop();
    Uart_Printf("ZDMA0 %8x->%8x,%x:time=%f\n",srcAddr,dstAddr,length,time*128E-6);
    rINTMSK=BIT_GLOBAL;
}



void Zdma1Int(int srcAddr,int dstAddr,int length,int dw) 
//returns the checksum
{
    int time;
    zdma1Done=0;
    rINTMSK=~(BIT_GLOBAL|BIT_ZDMA1);
    rZDISRC1=srcAddr|(dw<<30)|(1<<28);	  // inc
    rZDIDES1=dstAddr|( 2<<30)|(1<<28);	  // inc
    rZDICNT1=length |( 2<<28)|(1<<26)|(3<<22)|(1<<20);
    //whole,unit transfer,int@TC,enable DMA
    rZDCON1=0x1; // start!!!

    Timer_Start(3);//128us resolution 
    while(zdma1Done==0);
    time=Timer_Stop();
    Uart_Printf("ZDMA1 %8x->%8x,%x:time=%f\n",srcAddr,dstAddr,length,time*128E-6);
    rINTMSK=BIT_GLOBAL;
}



void __irq Zdma0Done(void)
{
    rI_ISPC=BIT_ZDMA0;	//clear pending
    //rI_ISPC;		//is needed only when cache=on & wrbuf=on & BSFRD=0
    zdma0Done=1;
}



void __irq Zdma1Done(void)
{
    rI_ISPC=BIT_ZDMA1;	//clear pending
    //rI_ISPC;		//is needed only when cache=on & wrbuf=on & BSFRD=0
    zdma1Done=1;
}




?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人激情开心网| 日韩成人精品在线| 91精品国产色综合久久ai换脸| 麻豆免费看一区二区三区| 中文字幕视频一区| 欧美一级艳片视频免费观看| 成人国产精品免费观看| 午夜免费欧美电影| 亚洲少妇中出一区| 中文av一区特黄| 亚洲h动漫在线| 国产精品成人免费| 色猫猫国产区一区二在线视频| 免费在线观看不卡| 国产亚洲成av人在线观看导航| 91久久精品日日躁夜夜躁欧美| 国模大尺度一区二区三区| 亚洲一区二区av在线| 亚洲人成在线播放网站岛国| 国产亚洲va综合人人澡精品| 欧美日韩激情一区二区| 91官网在线观看| 播五月开心婷婷综合| 成人激情免费视频| av在线这里只有精品| 高清成人在线观看| 国产酒店精品激情| 国产一区二区三区四区在线观看| 亚洲高清中文字幕| 日韩**一区毛片| 精品一区二区三区在线观看| 亚洲va国产va欧美va观看| 亚洲国产美女搞黄色| 亚洲在线免费播放| 日本不卡在线视频| 国产精品一区二区黑丝| 国模一区二区三区白浆| 国产一区二区三区高清播放| 国产在线一区二区| 国产伦精品一区二区三区免费| 国产成人亚洲精品青草天美| 国产精品一区二区三区99| 福利视频网站一区二区三区| 在线一区二区三区四区五区 | 欧美婷婷六月丁香综合色| 欧美在线不卡一区| 欧美日韩国产一区二区三区地区| 欧美日韩一区二区电影| 在线不卡免费欧美| 久久综合久色欧美综合狠狠| 精品国产电影一区二区| 欧美激情一区三区| 欧美日韩一级黄| 国产欧美日本一区视频| 亚洲一区在线观看网站| 国产在线精品一区二区夜色| 麻豆国产欧美日韩综合精品二区| av网站一区二区三区| 制服丝袜中文字幕一区| 中文一区二区完整视频在线观看| 亚洲成人激情综合网| 99久久精品国产毛片| 欧美成人福利视频| 秋霞av亚洲一区二区三| 色菇凉天天综合网| 一区二区三区在线观看视频| 国产一区二区三区在线观看精品| 欧美精品日韩一本| 亚洲成av人片一区二区三区| 色综合久久久久综合| 国产日韩三级在线| 国产九色sp调教91| 国产情人综合久久777777| 99精品视频一区| 亚洲精品视频自拍| 日韩欧美一区二区免费| 黄网站免费久久| 国产午夜亚洲精品理论片色戒 | 欧美高清视频在线高清观看mv色露露十八| 久久久亚洲高清| 国产成人av电影免费在线观看| 久久免费精品国产久精品久久久久| 激情都市一区二区| 91精品国产色综合久久不卡电影| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩欧美久久久| 丁香亚洲综合激情啪啪综合| 精品粉嫩aⅴ一区二区三区四区| 国产自产高清不卡| 伊人色综合久久天天人手人婷| 一本色道综合亚洲| 午夜视频久久久久久| 51精品视频一区二区三区| 日韩av中文字幕一区二区 | 成人国产精品免费观看视频| 亚洲高清免费观看| 久久蜜臀中文字幕| 欧美午夜片在线看| 国产精品99久久久久久有的能看| 亚洲欧美一区二区三区极速播放 | 国产精品视频线看| 欧美日韩综合在线| 日本不卡1234视频| 精品久久国产字幕高潮| 欧美亚洲一区二区在线| 狠狠狠色丁香婷婷综合久久五月| 亚洲美女淫视频| 久久精品一区二区三区不卡| 欧美日本在线播放| 成人中文字幕在线| 蜜桃久久久久久| 国产精品欧美一级免费| 欧美体内she精视频| 91在线精品秘密一区二区| 丁香婷婷深情五月亚洲| 久久精品理论片| 日韩精品国产欧美| 丝袜亚洲另类丝袜在线| 国产精品久久免费看| 欧美日韩1234| 粉嫩aⅴ一区二区三区四区五区 | 一区二区日韩av| 亚洲天堂av一区| 国产精品久久综合| 91视视频在线直接观看在线看网页在线看| 日韩精品高清不卡| 国产真实乱对白精彩久久| 国产精品一线二线三线精华| 国产成人夜色高潮福利影视| 国产99久久精品| 欧美在线播放高清精品| 日本高清视频一区二区| 欧美一区二区福利视频| 欧美一区二区美女| 国产日韩成人精品| 久久久久久久电影| 亚洲裸体在线观看| 久久国产欧美日韩精品| 丁香桃色午夜亚洲一区二区三区| 欧美午夜在线一二页| 日韩区在线观看| 亚洲日本免费电影| 国产精品一区二区三区乱码| 国产69精品一区二区亚洲孕妇| 国产乱对白刺激视频不卡| 欧美日韩高清在线播放| 中文字幕中文乱码欧美一区二区| 亚洲综合激情小说| 国产在线精品一区二区| 日韩一区二区三区高清免费看看| 亚洲乱码中文字幕综合| 色综合一个色综合| 中文字幕一区二区不卡| 激情综合色播五月| 久久久国际精品| 国产成人免费在线观看| 国产精品全国免费观看高清| 成人污污视频在线观看| 国产精品黄色在线观看| 成人一区在线观看| 日韩精品一区二| 在线观看国产日韩| 欧美午夜精品免费| 日本美女视频一区二区| 欧美精品一区二区三区很污很色的| 欧美日韩免费电影| 中文字幕综合网| 91网站最新地址| 另类小说视频一区二区| 自拍偷拍亚洲激情| 2021久久国产精品不只是精品| 一本色道久久综合亚洲精品按摩 | 亚洲欧美另类小说视频| 一本色道久久综合精品竹菊| 亚洲成人免费av| 久久精品这里都是精品| 91成人在线观看喷潮| 日韩影院免费视频| 国产三级精品视频| 色综合久久综合网欧美综合网| 亚洲人亚洲人成电影网站色| 色成人在线视频| 青椒成人免费视频| 久久久久九九视频| 北条麻妃国产九九精品视频| 视频在线观看91| 中文字幕av一区二区三区高| 91电影在线观看| 国产一区在线观看视频| 亚洲国产精品综合小说图片区| 久久一夜天堂av一区二区三区| 91麻豆精品国产无毒不卡在线观看 | **欧美大码日韩| 欧美一区二区精美| 欧美色图片你懂的| 99久精品国产| 国产91在线观看| 国产成人在线视频免费播放| 五月婷婷综合在线| 一区二区在线观看免费|