00001 <?php
00002
00003 $focus_rdonly=array(
00004 "FOCUS_SHOW"=>0,
00005 "FOCUS_VALUE"=>0,
00006 "FOCUS_LEFT"=>0,
00007 "FOCUS_WIDTH"=>0,
00008 "FOCUS_TOP"=>0,
00009 "FOCUS_HEIGHT"=>0,
00010 "FOCUS_TOTWIDTH"=>0,
00011 "FOCUS_FILTER"=>0
00012 );
00013 $filter=array(
00014 array(0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00015 0.1, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00016 0.25, 0.25, 0.5, 1.0, 1.0, 0.5, 0.25, 0,
00017 0.5, 0.5, 1.0, 1.0, 0.5, 0.25, 0.15, 0,
00018 1.0, 1.0, 1.0, 0.5, 0.25, 0.15, 0.1, 0,
00019 1.0, 1.0, 0.5, 0.25, 0.15, 0.1, 0, 0,
00020 0.5, 0.5, 0.25, 0.15, 0.1, 0, 0, 0,
00021 0, 0, 0, 0, 0, 0, 0, 0),
00022
00023 array(0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00024 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00025 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00026 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00027 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00028 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00029 0, 0.1, 0.25, 0.5, 1.0, 1.0, 0.5, 0,
00030 0, 0, 0, 0, 0, 0, 0, 0),
00031
00032 array(0, 0, 0, 0, 0, 0, 0, 0,
00033 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1,
00034 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25,
00035 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
00036 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
00037 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
00038 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5,
00039 0, 0, 0, 0, 0, 0, 0, 0),
00040
00041 array(0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00042 0, 0.1, 0.15, 0.4, 0.9, 1.0, 1.0, 0,
00043 0.1, 0.15, 0.4, 0.6, 1.0, 1.0, 1.0, 0,
00044 0.3, 0.4, 0.6, 1.0, 1.0, 1.0, 1.0, 0,
00045 0.8, 0.9, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00046 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00047 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00048 0, 0, 0, 0, 0, 0, 0, 0),
00049
00050 array(0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00051 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00052 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00053 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00054 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00055 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00056 0, 0, 0.1, 0.3, 0.8, 1.0, 1.0, 0,
00057 0, 0, 0, 0, 0, 0, 0, 0),
00058
00059 array(0, 0, 0, 0, 0, 0, 0, 0,
00060 0, 0, 0, 0, 0, 0, 0, 0,
00061 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1,
00062 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3,
00063 0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8,
00064 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
00065 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
00066 0, 0, 0, 0, 0, 0, 0, 0),
00067
00068 array(0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00069 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00070 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00071 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00072 0.2, 0.2, 0.2, 0.2, 0.2, 1.0, 1.0, 0,
00073 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00074 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00075 0, 0, 0, 0, 0, 0, 0, 0),
00076
00077 array(0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00078 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00079 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00080 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00081 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00082 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00083 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00084 0, 0, 0, 0, 0, 0, 0, 0),
00085
00086 array(0, 0, 0, 0, 0, 0, 0, 0,
00087 0, 0, 0, 0, 0, 0, 0, 0,
00088 0, 0, 0, 0, 0, 0, 0, 0,
00089 0, 0, 0, 0, 0, 0, 0, 0,
00090 0.2, 0.2, 0.2, 0.2, 0.2, 1.0, 1.0, 0,
00091 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00092 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00093 0, 0, 0, 0, 0, 0, 0, 0),
00094
00095 array(0, 0, 0, 0, 0, 0.2, 1.0, 0,
00096 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00097 0, 0, 0, 0.2, 1.0, 1.0, 1.0, 0,
00098 0, 0, 0.2, 1.0, 1.0, 1.0, 1.0, 0,
00099 0, 0.2, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00100 0.2, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00101 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00102 0, 0, 0, 0, 0, 0, 0, 0),
00103
00104 array(0, 0, 0, 0, 0, 0.2, 1.0, 0,
00105 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00106 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00107 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00108 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00109 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00110 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00111 0, 0, 0, 0, 0, 0, 0, 0),
00112
00113 array(0, 0, 0, 0, 0, 0, 0, 0,
00114 0, 0, 0, 0, 0, 0, 0, 0,
00115 0, 0, 0, 0, 0, 0, 0, 0,
00116 0, 0, 0, 0, 0, 0, 0, 0,
00117 0, 0, 0, 0, 0, 0, 0, 0,
00118 0.2, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00119 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00120 0, 0, 0, 0, 0, 0, 0, 0),
00121
00122 array(0, 0, 0, 0, 0, 0, 0.2, 0,
00123 0, 0, 0, 0, 0, 0.2, 1.0, 0,
00124 0, 0, 0, 0, 0.2, 1.0, 1.0, 0,
00125 0, 0, 0, 0.2, 1.0, 1.0, 1.0, 0,
00126 0, 0, 0.2, 1.0, 1.0, 1.0, 1.0, 0,
00127 0, 0.2, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00128 0.2, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0,
00129 0, 0, 0, 0, 0, 0, 0, 0),
00130
00131 array(0, 0, 0, 0, 0, 0, 0, 0,
00132 0, 0, 0, 0, 0, 0, 0, 0,
00133 0, 0, 0, 0, 0, 0, 0, 0,
00134 0, 0, 0, 0, 0, 0, 0, 0,
00135 0, 0, 0, 0, 0, 0, 0, 0,
00136 0, 0, 0, 0, 0, 0, 0, 0,
00137 0, 0, 0, 0, 0, 0, 0, 0,
00138 0, 0, 0, 0, 0, 0, 0, 0),
00139 array(0, 0, 0, 0, 0, 0, 0, 0,
00140 0, 0, 0, 0, 0, 0, 0, 0,
00141 0, 0, 0, 0, 0, 0, 0, 0,
00142 0, 0, 0, 0, 0, 0, 0, 0,
00143 0, 0, 0, 0, 0, 0, 0, 0,
00144 0, 0, 0, 0, 0, 0, 0, 0,
00145 0, 0, 0, 0, 0, 0, 0, 0,
00146 0, 0, 0, 0, 0, 0, 0, 0)
00147 );
00148 echo "<pre>";
00149 print_r($_GET);
00150 print_r (elphel_get_P_warr($focus_rdonly));
00151 print_r (elphel_get_P_arr ($focus_rdonly));
00152 $scale=$_GET["SCALE"]*1.0;
00153 if (!(($scale>0) && ($scale<100000))) $scale=4096;
00154 if (count($_GET) > 0 ) {
00155 $pars=array();
00156 foreach($_GET as $key=>$value) {
00157 if ($key=="SCALE") {
00158 } else if ($key=="TABLE") {
00159 $fn=$value+0;
00160 if ($fn<0) $fn=0;
00161 else if ($fn>14) $fn=14;
00162 for ($i=0; $i<64; $i++) {
00163 $filter[$fn][$i]=intval($scale*$filter[$fn][$i]);
00164 if ($filter[$fn][$i]>65535) $filter[$fn][$i]=65535;
00165 }
00166 for ($i=0; $i<64; $i+=8)
00167 printf("%4x %4x %4x %4x %4x %4x %4x %4x\n",$filter[$fn][$i+0],$filter[$fn][$i+1],$filter[$fn][$i+2],$filter[$fn][$i+3],
00168 $filter[$fn][$i+4],$filter[$fn][$i+5],$filter[$fn][$i+6],$filter[$fn][$i+7]);
00169 $binary_tab="";
00170 for ($i=0; $i<64; $i++) $binary_tab.=pack("L",$filter[$fn][$i]);
00171 $tables_file = fopen('/dev/fpga_tables', 'w');
00172 fseek ($tables_file, 0x2000+256*$fn) ;
00173 printf ("file position before table write=0x%x\n",ftell($tables_file));
00174 fwrite($tables_file, $binary_tab);
00175 printf ("file position after table write=0x%x\n",ftell($tables_file));
00176 fclose($tables_file);
00177 elphel_set_P_value(ELPHEL_FOCUS_FILTER,$fn);
00178 } else {
00179 $pars[$key]=$value+0;
00180 }
00181 }
00182 elphel_set_P_arr ($pars);
00183 elphel_program_sensor (1);
00184 print_r (elphel_get_P_warr($focus_rdonly));
00185 print_r (elphel_get_P_arr ($focus_rdonly));
00186 }
00187
00188
00189 echo "</pre>";
00190
00191 ?>