DSPRelated.com
Forums

Re: video in/out on the BF533 EZKIT

Started by roei...@intellimind.co.il October 31, 2007
Hello,

Can you give me file that does out put video?
Or tell me who config PII, DMA, SDRAM and do resets the ADV7171 device.

I have ADSP-BF533 EZLITE.
I do input frame video and put that in address: 0x01000.
I want to see that output in the monitor.

In the demo the file write in the Assembler.
I don't understand this file.

I work in the PAL video

Thanks,
Aizler
Look to this function.
It creates a frame in memory. It is not the most eficient way to Output
video, but gives you insight of the topic.
After you have the frame just you set the DMA and PPI for output this
frame.
Good luck.

void create_frame(void){

volatile extern unsigned char *pim_itu;

volatile unsigned short *imagen_bay,auxiliar;
volatile unsigned short *field2;

int x,j;

//semaphore_frames_received = true;

pim_itu=0x1000000; //Pointer to the outputl Image with
blanking
imagen_bay=0xc400 //Pointer to the original Image without
blanking.

for(x=0;x<3;x++){
esav(0xf1); //EAV

ancillary();
esav(0xec); //SAV
for(j=0;j<360;j++){//black
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
}
}//for 3

for(x=0;x<17;x++){

esav(0xb6);//EAV
ancillary();
esav(0xab); //SAV

for(j=0;j<360;j++){
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
}
}//for 17

for(x=0;x<243;x++){

esav(0x9d);//EAV
ancillary();
esav(0x80); //SAV

for(j=0;j<360;j++){ ////data image FIELD 1
*pim_itu=0x0; //Cb
pim_itu++;

auxiliar=(*imagen_bay);

auxiliar=auxiliar>>2; //Original data is 10 bits. Output image 8 bits.
*pim_itu=0x00;
pim_itu++;
imagen_bay++;

*pim_itu=0x0; //Cr
pim_itu++;

auxiliar=(*imagen_bay);
auxiliar=auxiliar>>2;
*pim_itu=0x0;

pim_itu++;
imagen_bay++;
}
imagen_bay+=(560+1280);
}//for 243

for(x=0;x<2;x++){

esav(0xb6); //EAV
ancillary();
esav(0xab); //SAV

for(j=0;j<360;j++){//black
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
}
}//for 2
for(x=0;x<17;x++){
esav(0xf1);//EAV
ancillary();
esav(0xec); //SAV

for(j=0;j<360;j++){
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
*pim_itu=0x80;
pim_itu++;
*pim_itu=0x10;
pim_itu++;
}
}//for 17
imagen_bay=field2;

for(x=0;x<243;x++){

esav(0xda);//EAV
ancillary();
esav(0xc7); //SAV

for(j=0;j<360;j++){ ////datos imagen FIELD 2
*pim_itu=0x0; //Cb
pim_itu++;
auxiliar=(*imagen_bay);
auxiliar=auxiliar>>2;
*pim_itu=0x0;

pim_itu++;
imagen_bay++;

*pim_itu=0x0; //Cr
pim_itu++;
auxiliar=(*imagen_bay);
auxiliar=auxiliar>>2;
*pim_itu=0x0;

pim_itu++;
imagen_bay++;
}
imagen_bay+=(560+1280);
}//for 243

}
void esav(unsigned char xy){

volatile extern unsigned char *pim_itu;

*pim_itu=0xFF;
pim_itu++;

*pim_itu=0x00;
pim_itu++;

*pim_itu=0x00;
pim_itu++;

*pim_itu=xy;
pim_itu++;
}

void ancillary(void){
int x,y;

volatile extern unsigned char *pim_itu;

for(x=0;x<134;x++)
{

*pim_itu=0x80;
pim_itu++;

*pim_itu=0x00;
pim_itu++;
}
}

2007/10/31, r...@intellimind.co.il :
>
> Hello,
>
> Can you give me file that does out put video?
> Or tell me who config PII, DMA, SDRAM and do resets the ADV7171 device.
>
> I have ADSP-BF533 EZLITE.
> I do input frame video and put that in address: 0x01000.
> I want to see that output in the monitor.
>
> In the demo the file write in the Assembler.
> I don't understand this file.
>
> I work in the PAL video
>
> Thanks,
> Aizler
>

--
Att.
Ing. Diego Andr Botero Galeano
BSB Ingenier.
Bogota - Colombia.