Ivan Scherbakov
/
last_2_1_0_interchange_208_byte
AAAAAAAAAAAAAAAAAAA
Diff: main.cpp
- Revision:
- 13:032f94430b0b
- Parent:
- 12:acfe1d7232e3
- Child:
- 14:551ee0b21bc6
--- a/main.cpp Mon Mar 20 15:16:35 2017 +0000 +++ b/main.cpp Mon Mar 27 15:35:40 2017 +0000 @@ -220,6 +220,7 @@ ctest(); if (ct == 1) {continue;} else {wait_us(10); printf("7\r\n"); fflush (stdout); wait_us(100);}; + ddsreset; request(); while(true){ t.reset(); @@ -299,7 +300,7 @@ II = mj; IG = mj+1; DI1 = mj; DI2 = mj+1; igmux(); imux(); DI1mux(); DI2mux(); int xa = (int)5000/freqdata; - int xaa = (int)xa/10; + int xaa = (int)xa/5; uint16_t x[xa]; adc_init(); dma_init(); @@ -307,12 +308,12 @@ adc_readn(x,xa); sort(x+xaa,x + xa); aread = (int)x[xa-1]; - if ((aread > 2400) &&(test_button.read() == 1)) + if ((aread > 4000) &&(test_button.read() == 1)) {printf("%i,%i\r\n",mg+1, mj+1); printf("%i,%i\r\n",mg+1, mj+2);ct = 1;} } } - mclkstop; + //mclkstop; } @@ -523,7 +524,7 @@ //button_check(); if (j==15) {IG = j; II = 0;} else {IG = j; II = j+1;} DI2=j;igmux(); imux();DI2mux(); - if ((j==0)&&(IE==0)){wait_ms(1);} + if ((j==0)&&(IE==0)){wait_ms(10);} for (k = 0; k<16; k++) { DI1 = k; DI1mux(); @@ -566,10 +567,10 @@ void ranging()//определение коэффициента усиления и знака { - int xa = (int)10000/freqdata; + int xa = (int)8000/freqdata; if (xa < 100){xa=100;} - else if (xa > 1000){xa=1000;}; - int xaa = (int)xa/5; + else if (xa > 500){xa=500;}; + int xaa = (int)xa/3; uint16_t x[xa]; int s_ok=0; //IG = 0; II = 1;DI1 = II;DI2=IG;igmux();imux();DI1mux();DI2mux();wait_ms(10); @@ -584,11 +585,11 @@ sort(x+xaa,x + xa); //printf("sorted\r\n"); //for (s_ok = 0; s_ok < xa; s_ok++) {printf("%i\r\n",x[s_ok]);}; - ymax = (int)((x[xa-1]+x[xa-2]+x[xa-3])-(x[xaa]+x[xaa+1]+x[xaa+2]))/3; + ymax = (int)((x[xa-1]+x[xa-2])-(x[xaa]+x[xaa+1]))/2; if (ymax <= 4) {range=1000;s_ok=1;wait_us(50);} - else if (((ymax > 4)&&(ymax <= 35))) {range=100;s_ok=1;wait_us(50);} - else if (((ymax > 35)&&(ymax <= 350))) {range=10;s_ok=1;wait_us(50);} - else if (ymax > 350) {range=1;s_ok=1;wait_us(50);}; + else if (((ymax > 4)&&(ymax <= 40))) {range=100;s_ok=1;wait_us(50);} + else if (((ymax > 40)&&(ymax <= 400))) {range=10;s_ok=1;wait_us(50);} + else if (ymax > 400) {range=1;s_ok=1;wait_us(50);}; //} PA = range; preamp(); //printf("%i,%i,%i,%i\r\n",ymax,x[xa-(xaa+1)], x[0], range); @@ -608,9 +609,9 @@ { int ya = (int)10000/freqdata; float ym = 0; - if (ya < 100){ya=100;} - else if (ya > 1000){ya=1000;}; - int yaa = (int)ya/10; + if (ya < 200){ya=200;} + else if (ya > 1500){ya=1500;}; + int yaa = (int)ya/3; uint16_t y[ya]; adc_init(); dma_init(); @@ -618,7 +619,7 @@ adc_readn(y,ya); // for (yp = 0; yp < 400; yp++) {printf("%i\r\n",y[yp]);}; sort(y+yaa,y + ya); - ym = ((y[ya-2]+y[ya-3]+y[ya-4]+y[ya-5]+y[ya-6])-(y[yaa+1]+y[yaa+2]+y[yaa+3]+y[yaa+4]+y[yaa+5]))/10; + ym = ((y[ya-1]+y[ya-2]+y[ya-3]+y[ya-4])-(y[yaa]+y[yaa+1]+y[yaa+2]+y[yaa+3]))/8; yprint[yp]=(((ym)*3.3*10)/(4096*range));yp++; memset(y,0,sizeof y);