关于BH1750光照传感器 所得数据的整理

正在做一个毕设作品,通过电机控制一个反射镜移动到各个坐标,让BH1750记录每个坐标的光强(大约50个坐标),然后比较所有数据,得出一个最大的数据,再返回得到这个最大数据时反射镜的位置坐标,请问这个代码应该怎么写比较简短呢?(下面是一个实验函数,只会用if函数处理三个数据,C语言不是很拿手,真心求问)

void practice(void)
{
float light[3]; //因禁止重复,下面有些light用光代替,[消除

// 反光镜位置1
TIM_SetCompare1(TIM3,182.5);
delay_ms(1000);
光[0]=read_BH1750();   //读取反光镜位置1时的光照强度
delay_ms(1000);

// 反光镜位置2
TIM_SetCompare1(TIM3,187.5);
delay_ms(1000);
light[1]=read_BH1750();  //读取反光镜位置2时的光照强度
delay_ms(1000);

// 反光镜位置3
TIM_SetCompare1(TIM3,192.5);
delay_ms(1000);
光[2]=read_BH1750();  //读取反光镜位置3时的光照强度
delay_ms(1000);

if(光 0 >light 1 | 光1 >光 2 )
{
TIM_SetCompare1(TIM3,182.5); //返回反光镜位置1
}
if(光t 1 >light[0] | light[1]>光 2)
{
TIM_SetCompare1(TIM3,187.5); //返回反光镜位置2
}
if(光 2 >light 0 | light 2 >光 1 )
{
TIM_SetCompare1(TIM3,192.5); //返回反光镜位置3
}

}