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

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

?? dpram.c

?? Linux操作系統
?? C
字號:
/*************************************************************/
/*  dpram  - A program for test DPRAM communication between  */
/*           PowerPC405EP and DSP320VC33 with DualPort RAM   */
/*           This program is meant as an aid only and is     */
/*           not supported by tomxue gbe.tao.xue@gmail.com   */
/*                  Usage:  dpram                            */
/*************************************************************/
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <fcntl.h>
#include <getopt.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/termios.h>
#include <sys/time.h>
#include <string.h>
#include <signal.h>

static struct sigaction	irq1_act;
static struct sigaction irq2_act;
static unsigned long count;
static unsigned char buffer_ready;
static int dpram_fd;
static unsigned char buffer[128*1024];//we use a 128KBytes buffer for dpram opration
/* DPRAM memory table: 						*/
/*	0x0000 - 0x7FFF	PowerPC->DSP data transmit		*/
/*	0x8000 - 0xAFFF	PowerPC<-DSP data receive		*/
/*	0xB000 - 0xFFFF PowerPC<-DSP data receive reserved	*/
//signal process for IRQ1
void irq1_drvSigHandler(int signo)
{                       
        //unsigned char *buffer;
        unsigned char i;
        int     tom, status;
        
        //printf("signal is %d.\n", signo);
        if(46 == signo)         
        {
                //TODO: do something here.
		//read 16KBytes here
		//printf("Read DPRAM 16KBytes.\n");
		status = read(dpram_fd, buffer, (32*1024));	//read data and save in buffer[]
		//for(count=0;count<16;count++)
		//{
		//	printf("0x%02X.\n", buffer[count]);		
		//}		
		buffer_ready = 0;
		//read 16KBytes end
        }
}
//signal process for IRQ2
void irq2_drvSigHandler(int signo)
{
        //unsigned char *buffer;
        unsigned char i;
        int     tom, status;

        printf("signal is %d.\n", signo);
        if(47 == signo)
        {
                //TODO: do something here.
		//read 16KBytes here
		printf("Read DPRAM 16KBytes.\n");
		status = read(dpram_fd, buffer, (16*1024));	//read data and save in buffer[]
		for(count=0;count<16;count++)
		{
			printf("0x%02X.\n", buffer[count]);		
		}		
		buffer_ready = 0;
		//read 16KBytes end
	}
}
void init_dpram_system(void)
{
	int ret;

        buffer_ready = 1;
        //register signal
        printf("register the signal process function.\n");
        //irq1
        irq1_act.sa_handler = irq1_drvSigHandler;
        irq1_act.sa_flags = 0;
        sigemptyset(&irq1_act.sa_mask);
        //irq2
        irq2_act.sa_handler = irq2_drvSigHandler;
        irq2_act.sa_flags = 0;
        sigemptyset(&irq2_act.sa_mask);
        //register
        ret = sigaction(46, &irq1_act, NULL);
        if (ret == -1)
                printf("Request signal 46 failed.\n");
        ret = sigaction(47, &irq2_act, NULL);
        if (ret == -1)
                printf("Request signal 47 failed.\n");
        //open a device
        dpram_fd = open("/dev/dpram",O_SYNC | O_RDWR,0);
        printf("Transmit pid of %d to driver.\n", getpid());
        ret = ioctl(dpram_fd, 0xAA, getpid());
}
unsigned long offset_address;
int main(int argc, char *argv[])
{
	unsigned char i;
	int status, ret;
	char * mychar;
	char my;
	mychar = argv[1];
	my = mychar[0];

	init_dpram_system();
	
	//process
	if(my=='t')
	{
		//printf("Write 32KBytes to DPRAM.\n");
		for(count=0;count<(64*1024);count++)
		{
			//fill data to buffer;
			buffer[count] = count;
		}
		offset_address = 0x00018000;
		lseek(dpram_fd, offset_address, SEEK_SET);
		status = write(dpram_fd, buffer, (64*1024));
		
		printf("Output a low pulse on output1.\n");
		ioctl(dpram_fd, 1, 0);//set output1 high
		ioctl(dpram_fd, 0, 0);//set output1 low
		ioctl(dpram_fd, 1, 0);//set output1 high

                //read 16KBytes here
                printf("Read DPRAM 16KBytes.\n");
                status = read(dpram_fd, buffer, (16*1024));     //read data and save in buffer[]
                for(count=0;count<16;count++)
                {
                        printf("0x%02X.\n", buffer[count]);
                }

	}
	else if(my=='r')
	{
		while(1)
		{
			//printf("Wait for IRQ signal for DSP data ready.\n");
		/*
			read(dpram_fd, buffer, (16*1024));
			for(count=(0);count<((0) + 16);count++)
                	{
                        	printf("0x%02X.\n", buffer[count]);
                	}
		*/
			while(buffer_ready == 1)
			{};

	                //printf("Output a low pulse on output2.\n");
        	        ioctl(dpram_fd, 4, 0);//set output2 high
                	ioctl(dpram_fd, 3, 0);//set output2 low
                	ioctl(dpram_fd, 4, 0);//set output2 high		
			
			buffer_ready = 1;
			
		}
	}	
	else
	{
		printf("Usage: testdpram t for write 32KBytes to   DPRAM.\n");
		printf("       testdpram r for read  16KBytes from DPRAM.\n");
	}
	//close a device
  	close(dpram_fd);  
  	printf("End of test PowerPC DSP data tranceiver function with DPRAM.\n");	  
  	return 0;
} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu亚洲| 中文字幕中文乱码欧美一区二区| 91精品国产麻豆国产自产在线| 日韩一区二区免费高清| 91电影在线观看| 日韩精品一区二区三区在线观看| 久久免费看少妇高潮| 伊人一区二区三区| 韩日av一区二区| 欧美中文字幕一区二区三区亚洲| 日本久久电影网| 久久九九全国免费| 亚洲国产视频a| 国产黄人亚洲片| 欧美日韩国产美| 国产精品成人免费在线| 看电视剧不卡顿的网站| 在线观看视频91| 国产日韩欧美高清| 亚洲最色的网站| 国产高清不卡一区| 欧美一区二区国产| 洋洋av久久久久久久一区| 国产suv精品一区二区883| 日韩一区二区三区免费观看| 欧美mv日韩mv国产网站| 亚洲一区二区黄色| 波多野结衣亚洲一区| 欧美人与禽zozo性伦| 中文字幕精品三区| 国精产品一区一区三区mba视频 | 日本韩国一区二区三区视频| 欧美大片拔萝卜| 亚洲国产综合在线| 91丨九色丨蝌蚪富婆spa| 欧美精品一区二区三区在线| 亚洲欧美激情视频在线观看一区二区三区 | 蜜臀av性久久久久蜜臀aⅴ| 欧美日韩一本到| 综合久久一区二区三区| 91麻豆swag| 亚洲成人免费看| 精品免费国产一区二区三区四区| 韩国精品在线观看| 中文子幕无线码一区tr | 粉嫩13p一区二区三区| 国产亚洲午夜高清国产拍精品| 国产一区二区三区黄视频| 国产午夜精品久久| 色天使色偷偷av一区二区| 污片在线观看一区二区| 日韩美女视频在线| 成人午夜又粗又硬又大| 亚洲乱码日产精品bd| 欧美日韩国产一二三| 久久精品久久综合| 国产精品乱子久久久久| 91成人在线精品| 国产呦精品一区二区三区网站| 日本一区二区三区视频视频| 91久久精品一区二区二区| 日本成人在线不卡视频| 国产欧美日韩另类视频免费观看| 欧美亚洲一区二区在线| 国产精品自在在线| 亚洲欧美另类久久久精品2019| 欧美一级免费观看| 不卡一二三区首页| 美国精品在线观看| 亚洲卡通动漫在线| 精品国产区一区| 91久久免费观看| 国产精品77777| 午夜成人在线视频| 亚洲视频一区在线观看| 欧美mv日韩mv| 欧美日韩二区三区| 不卡的av电影在线观看| 麻豆精品视频在线观看免费 | 欧美午夜不卡视频| 国产成人免费av在线| 一级特黄大欧美久久久| 亚洲国产精品v| 日韩视频在线你懂得| 色婷婷国产精品综合在线观看| 极品少妇一区二区三区精品视频| 一区二区三区精品视频| 国产午夜久久久久| 欧美不卡一区二区| 欧美一区二区三区在线观看| 色哟哟欧美精品| 高清不卡一区二区| 国产主播一区二区| 丁香一区二区三区| 经典一区二区三区| 日韩av一区二区在线影视| 亚洲啪啪综合av一区二区三区| 精品电影一区二区三区| 欧美一区二区三区视频免费| 在线观看国产日韩| 一本久久精品一区二区| 成人av电影免费观看| 国产精品18久久久久| 精品中文字幕一区二区| 日韩高清不卡一区二区| 亚洲一区电影777| 亚洲成人中文在线| 亚洲小说欧美激情另类| 亚洲自拍与偷拍| 亚洲国产综合色| 亚洲最大成人网4388xx| 一区二区三区.www| 尤物视频一区二区| 亚洲一区二区三区在线| 亚洲大片一区二区三区| 亚洲国产精品一区二区久久 | 制服.丝袜.亚洲.另类.中文 | 国产午夜精品一区二区三区视频| 欧美videos中文字幕| 26uuu精品一区二区在线观看| 精品国产精品一区二区夜夜嗨| 亚洲精品一区二区三区香蕉| 精品国产一区二区三区四区四| 日韩精品一区二区三区三区免费 | 日韩一区在线免费观看| 亚洲色大成网站www久久九九| 亚洲欧洲日韩综合一区二区| 亚洲精品精品亚洲| 天天操天天综合网| 国产在线播放一区| 成人av在线看| 在线观看日韩毛片| 日韩一级在线观看| 国产欧美精品一区二区三区四区| 国产精品久久久久久久久动漫 | 欧美色精品在线视频| 欧美久久一区二区| 精品日韩成人av| 国产亚洲一区二区三区在线观看| 国产精品免费久久| 亚洲国产一区二区视频| 狠狠色丁香婷婷综合| 91在线精品一区二区| 欧美电影一区二区三区| 久久综合国产精品| ●精品国产综合乱码久久久久 | 欧美成人精精品一区二区频| 国产精品麻豆网站| 亚洲国产精品久久不卡毛片| 久久电影网电视剧免费观看| 成人av片在线观看| 欧美片在线播放| 国产精品乱码一区二区三区软件 | 日韩avvvv在线播放| 成人av片在线观看| 日韩一区二区不卡| 日韩美女久久久| 麻豆精品国产传媒mv男同| 亚洲一区二区在线免费看| 99久久99久久精品免费观看| 国产无一区二区| 亚洲色图色小说| 麻豆精品久久精品色综合| 91麻豆国产精品久久| 日韩免费观看高清完整版| 亚洲卡通欧美制服中文| 国产精品系列在线播放| 69久久99精品久久久久婷婷| 最新成人av在线| 国产乱码精品一区二区三区忘忧草| 欧洲精品视频在线观看| 欧美国产欧美亚州国产日韩mv天天看完整 | 日韩 欧美一区二区三区| www..com久久爱| 一级精品视频在线观看宜春院| 国内精品视频666| 欧美一区二区大片| 亚洲一级电影视频| 99精品偷自拍| 中文av字幕一区| 国产成a人亚洲精品| 久久综合九色欧美综合狠狠| 视频一区中文字幕| 欧美在线免费视屏| 一区二区三区产品免费精品久久75| 成人福利视频在线| 国产日本亚洲高清| 国产精品1024| 久久久精品综合| 国产一区二区三区黄视频| 欧美va在线播放| 国模娜娜一区二区三区| 亚洲精品在线三区| 久久99精品国产麻豆婷婷洗澡| 日韩午夜激情电影| 国内外成人在线| 久久久久久久av麻豆果冻| 精品系列免费在线观看| 久久久美女毛片| 成人妖精视频yjsp地址|