⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 black-fin DSP处理器单帧图像获取程序
💻 C
字号:
#include"init.h"
#include"file_system.h"

//for encoder
#include"video_in.h"
#include"mpeg4const.h"
#include"adsp21532.h"
void init_camera();
//
/////////////////////////////
extern int encode_init(vidcodec_t *,vidcodec_t *, ubyte *,ubyte *, naltable_t *);
extern ifrm_t *encode(vidcodec_t *, ifrm_t *, ubyte *, naltable_t *);
extern ifrm_t *encode_close(vidcodec_t *, ubyte *, naltable_t *);
//
vidcodec_t clargs;
vidcodec_t pvc;

unsigned char *pfre=REFFRAME;
unsigned char *ps=OUTSTREAM;
dsect(l1b,4,rw) naltable_t  pn;

dsect(l1b,4,rw) rc_info_t  rc_info;
dsect(l1b,4,rw) rc_info_t *rcp;
dsect(l1b,4,rw) ifrm_t   *pf;
////////////////////////////////////////////////////////globle 
int globle_counter=0;
short tiemr_1s_flag=0;
////////////////////////////////////////////////////////
//csect(drivers_L1_code,4) void Init_PLL(int MSEL, int SSSEL)
dsect(l1,4,rw) char buffer[100];
int frame_num;


void main()
{ 

    int i,j;
    unsigned int temp;
    unsigned char *start=(unsigned char *)(0);
    unsigned char temp1;
    int time=0; 
    int size;
    unsigned int frame_add;
    unsigned int vfile_add;
    char file_name[20];
    
    int result;
    
	
		
    M_FILE fp;
    
    Init_PLL(24,6);
    init_pf();
    //init_timer();
    //init_realtimer();
	init_sdram();
    dma_init(); 
    frame_add=(unsigned int)(FRAMEBUFFERA);
//////////////////camera init
	init_camera();
	memset((unsigned char *)(FRAMEBUFFERA+720*480),128,360*240*4);
//////////////////file_system_init
    m_format();
    Sect_Init();
	FileSys_Init();
	/*
	mm_fopen(&fp,"test3.txt","w");
	mm_fwrite(&fp,"hello world2",13);
	m_fclose(&fp);	*/
////////////////encoder_init
	initsettings();
	decide_channels(&clargs);
	rcp=&rc_info;
	result=encode_init(&clargs, &pvc, pfre,ps, &pn);
	init_dma_base(&pvc, MDMA_D0_BASE_ADDR);
	mm_fopen(&fp,"test1.m4v","w");
	stream_out(&pn,0,&fp);
 ///////////////encoder_test
 	vfile_add=(unsigned int)VFILE;
 	for(i=0;i<300;i++)
 	{
 	    flag_got_one_frame=0;    
 	    init_dma();
    	while(!flag_got_one_frame);
    	
    	pf=current_frame();
    	result=encode(&pvc,pf,ps,&pn);
    	stream_out(&pn,i+1,&fp);
   		*pFIO_FLAG_T = 0x0008;
 	}
 	
	m_fclose(&fp);
    while(1);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -