📄 20dfae0f3a21001b1296d4682c4d4515
字号:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <io.h>
#include <fcntl.h>
#include <unistd.h>
#include <math.h>
#include "altera_avalon_pio_regs.h"
#include "system.h"
#include "VGA.h"
#define PI 3.1415926
#define M1 17
#define M2 15
void main(void)
{
unsigned int i=0;
unsigned int j=0;
unsigned int k;
unsigned int l;
unsigned long pixelindex;
unsigned long pixel;
printf("\nstart!");
usleep(2000000);
//IOWR(VGA_0_BASE,40000+256,RGB(1023,1023,1023));
unsigned int d,m,a;
// for(;;)
{
a=0;
for(j=0;j<624;j++)
for(i=0;i<852;i++)
{
IOWR(LOCK_PIXEL_NUM_BASE,0,a);
pixelindex=IORD(CURRENT_PIXEL_NUM_BASE,0);
// printf("\n%d,%D",a,pixelindex);
pixel = 0;
//if((j>=0&&j<200)&&(i>=0&&i<200))
{
while(!(pixel&1073741824)) { pixel = IORD(RGB_DATA_BASE,0); }
printf("\n%d",pixel);
//SetPixel1(i,j,(int)(pixel&1023),(int)((pixel>>10)&1023),(int)((pixel>>20)&1023));
}
a++;
// printf("\n.......%d",IORD(PIXELCOUNT_RD_BASE,0));
}
}
/* IOWR(VGA_0_BASE,40000+12,1929178929);
for(i=0;i<200;i++)
{
SetPixel(VGA_0_BASE,i,9,12);
SetPixel(VGA_0_BASE,i,10,12);
SetPixel(VGA_0_BASE,i,11,12);
SetPixel(VGA_0_BASE,i,12,12);
}*/
//以下为光栅产生程序
/* for(a=0;a<15;a++)
{
usleep(2000000);
if(!((a/4)%2))
{
for(j=0;j<M1;j++)
{
d=(unsigned int)(floor(180+70*sin((2*PI*j/M1)+a*PI/2))); //I
d=1024*d/256;
//printf("\n%d,%d",d,RGB(d,d,d));
for(i=0; i<11; i++)
{
MoveTo(1,j+M1*i+4);
LineTo(199,j+M1*i+4,d,d,d);
}
}
}
else
{
for(j=0;j<M2;j++)
{
d=(unsigned int)(floor(180+70*sin((2*PI*j/M2)+a*PI/2))); //I
d=1024*d/256;
for(i=0; i<11; i++)
{
MoveTo(1,j+M2*i+4);
LineTo(199,j+M2*i+4,d,d,d);
}
}
}
} */
//////////////////////////////////
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -