注册会员
- 积分
- 128
- 威望
- 70
- 贡献
- 30
- 兑换币
- 32
- 注册时间
- 2014-10-5
- 在线时间
- 14 小时
- 毕业学校
- 上海理工大学
|
void CCD_Init(void)
{
unsigned char j;
unsigned char min=Pixel[0],max=Pixel[0];
for(j=1;j<127;j++)
{
if(Pixel[j]<min) min=Pixel[j];
}
for(j=1;j<127;j++)
{
if(Pixel[j]>max) max=Pixel[j];
}
Threshold=(max+min)/2; //找到最高点和最低点取平均值作为阈值
}
/*********************************************/
void binaryzation(void)
{
unsigned char j;
for(j=0;j<128;j++)
{
if(Pixel[j]<Threshold) //低于阈值的全部当为 黑色
{
Pixel_History0[j]=1;
}
else Pixel_History0[j]=0; //高于阈值的全部当为 白色
}
}
/************************************************/
void scan(void)
{
unsigned char j;
unsigned char n,m;
j=10;
while(!Pixel_History0[j])
{
j++;
}
n=j;
j=118;
while(!Pixel_History0[j])
{
j--;
}
m=j;
Midpoint=(n+m)/2;
/* if((Midpoint-64>5)&&(Midpoint-64<=15)) ex_angle=75;
else if((Midpoint-64>15)&&(Midpoint-64<=25)) ex_angle=78;
else if((Midpoint-64>25)&&(Midpoint-64<=35)) ex_angle=81;
else if((Midpoint-64>35)&&(Midpoint-64<=45)) ex_angle=84;
else if((Midpoint-64>45)&&(Midpoint-64<=55)) ex_angle=87;
else if(Midpoint-64>55) ex_angle=90;
else if((Midpoint-64<-5)&&(Midpoint-64>=-15)) ex_angle=69;
else if((Midpoint-64<-15)&&(Midpoint-64>=-25)) ex_angle=66;
else if((Midpoint-64<-25)&&(Midpoint-64>=-35)) ex_angle=63;
else if((Midpoint-64<-35)&&(Midpoint-64>=-45)) ex_angle=60;
else if((Midpoint-64<-45)&&(Midpoint-64>=-55)) ex_angle=57;
else if(Midpoint-64<-55) ex_angle=54;
else ex_angle=72; */
//不同中心数组的序数与占空比的线性关系
angle=Midpoint/3+51;
}
/***********************************************/
void run(unsigned char speed,unsigned char angle)
{
PWMDTY3=speed;
PWMDTY1=angle;
}
|
|