Ahoj Štury

Dependencies:   LIS302 mbed

Committer:
havri
Date:
Wed Jan 28 11:15:59 2015 +0000
Revision:
1:cae174481a60
Parent:
0:7d02a614f4e7
Child:
2:5506657d79a8
ahoj

Who changed what in which revision?

UserRevisionLine numberNew contents of line
havri 0:7d02a614f4e7 1 #include "mbed.h"
havri 0:7d02a614f4e7 2 DigitalOut myled(LED1);
havri 0:7d02a614f4e7 3 AnalogIn CameraIn(PTD5);
havri 0:7d02a614f4e7 4 DigitalOut SI(PTD7);
havri 0:7d02a614f4e7 5 DigitalOut CLK(PTE1);
havri 1:cae174481a60 6
havri 0:7d02a614f4e7 7 Serial pc(USBTX,USBRX);
havri 0:7d02a614f4e7 8 DigitalIn butt(PTC13);
havri 0:7d02a614f4e7 9
havri 1:cae174481a60 10 int i;
havri 1:cae174481a60 11 float camera[128];
havri 1:cae174481a60 12 float convolutions[142];
havri 1:cae174481a60 13 float camera_con[156];
havri 1:cae174481a60 14 float jadro[] = {0,0.222520749166399,0.433883397574414,0.623489357288624,0.78183100975747,
havri 1:cae174481a60 15 0.900968456705778,0.974927659118645,1,0.974928249597434,0.900969608054333,
havri 1:cae174481a60 16 0.781832664242464,0.623491431947411,0.433885788375115,0.222523336224485,2.65358979335278E-06};
havri 1:cae174481a60 17
havri 1:cae174481a60 18 int convolution()
havri 1:cae174481a60 19 {
havri 1:cae174481a60 20 float temp;
havri 1:cae174481a60 21 for(int a = 0; a<15; a++)
havri 1:cae174481a60 22 {
havri 1:cae174481a60 23 camera_con[a] = 1;
havri 1:cae174481a60 24 }
havri 1:cae174481a60 25
havri 1:cae174481a60 26 for(int a = 15; a<143; a++)
havri 1:cae174481a60 27 {
havri 1:cae174481a60 28 camera_con[a] = camera[a-15];
havri 1:cae174481a60 29 }
havri 1:cae174481a60 30
havri 1:cae174481a60 31 for(int a = 143; a<157; a++)
havri 1:cae174481a60 32 {
havri 1:cae174481a60 33 camera_con[a] = 1;
havri 1:cae174481a60 34 }
havri 1:cae174481a60 35
havri 1:cae174481a60 36 for(int a = 0; a<143; a++)
havri 1:cae174481a60 37 {
havri 1:cae174481a60 38 for(int b = 0; b < 15; b++)
havri 1:cae174481a60 39 {
havri 1:cae174481a60 40 temp += camera_con[a + b]*jadro[b];
havri 1:cae174481a60 41 }
havri 1:cae174481a60 42 convolutions[a] = temp;
havri 1:cae174481a60 43 }
havri 1:cae174481a60 44
havri 1:cae174481a60 45 return(1);
havri 1:cae174481a60 46 }
havri 1:cae174481a60 47
havri 1:cae174481a60 48 int scan()
havri 1:cae174481a60 49 {
havri 1:cae174481a60 50 CLK = 0;
havri 1:cae174481a60 51 SI = 1;
havri 1:cae174481a60 52 wait_us(65);
havri 1:cae174481a60 53 CLK = 1;
havri 1:cae174481a60 54 SI = 0;
havri 1:cae174481a60 55 wait_us(65);
havri 1:cae174481a60 56 for(i=0; i<128; i++)
havri 1:cae174481a60 57 {
havri 1:cae174481a60 58 camera[i]= CameraIn;
havri 1:cae174481a60 59 wait_us(65);
havri 1:cae174481a60 60 CLK=0;
havri 1:cae174481a60 61 wait_us(65);
havri 1:cae174481a60 62 CLK = 1;
havri 1:cae174481a60 63 }
havri 1:cae174481a60 64 return(1);
havri 1:cae174481a60 65 }
havri 1:cae174481a60 66
havri 1:cae174481a60 67
havri 1:cae174481a60 68
havri 0:7d02a614f4e7 69 int main() {
havri 1:cae174481a60 70 while(1) {
havri 1:cae174481a60 71 scan();
havri 1:cae174481a60 72 convolution();
havri 1:cae174481a60 73 if(butt == 1)
havri 1:cae174481a60 74 {
havri 1:cae174481a60 75
havri 1:cae174481a60 76 for(i=0; i<142; i++)
havri 0:7d02a614f4e7 77 {
havri 1:cae174481a60 78 pc.printf(" %f;",convolutions[i]);
havri 0:7d02a614f4e7 79 wait_us(20);
havri 0:7d02a614f4e7 80 }
havri 0:7d02a614f4e7 81 pc.printf("\n");
havri 0:7d02a614f4e7 82 }
havri 0:7d02a614f4e7 83
havri 0:7d02a614f4e7 84
havri 0:7d02a614f4e7 85 }
havri 0:7d02a614f4e7 86 }