Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp@0:3728e947c2c0, 2020-10-16 (annotated)
- Committer:
- skouki
- Date:
- Fri Oct 16 07:35:47 2020 +0000
- Revision:
- 0:3728e947c2c0
;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
skouki | 0:3728e947c2c0 | 1 | #include "mbed.h" |
skouki | 0:3728e947c2c0 | 2 | #include "FEP.h" |
skouki | 0:3728e947c2c0 | 3 | #include "pin_config.h" |
skouki | 0:3728e947c2c0 | 4 | |
skouki | 0:3728e947c2c0 | 5 | AnalogIn finger[]={ |
skouki | 0:3728e947c2c0 | 6 | AnalogIn(A_IN_7), |
skouki | 0:3728e947c2c0 | 7 | AnalogIn(A_IN_6), |
skouki | 0:3728e947c2c0 | 8 | AnalogIn(A_IN_5), |
skouki | 0:3728e947c2c0 | 9 | AnalogIn(A_IN_3), |
skouki | 0:3728e947c2c0 | 10 | AnalogIn(A_IN_2) |
skouki | 0:3728e947c2c0 | 11 | }; |
skouki | 0:3728e947c2c0 | 12 | //8,1 |
skouki | 0:3728e947c2c0 | 13 | //5 |
skouki | 0:3728e947c2c0 | 14 | |
skouki | 0:3728e947c2c0 | 15 | FEP fep(PC_12,PD_2,003); |
skouki | 0:3728e947c2c0 | 16 | |
skouki | 0:3728e947c2c0 | 17 | Serial pc(USBTX,USBRX,115200); |
skouki | 0:3728e947c2c0 | 18 | //Serial serial(PC_10,PC_11,9600); |
skouki | 0:3728e947c2c0 | 19 | |
skouki | 0:3728e947c2c0 | 20 | DigitalIn b(USER_BUTTON); |
skouki | 0:3728e947c2c0 | 21 | |
skouki | 0:3728e947c2c0 | 22 | int main() |
skouki | 0:3728e947c2c0 | 23 | { |
skouki | 0:3728e947c2c0 | 24 | |
skouki | 0:3728e947c2c0 | 25 | float open_val[5],close_val[5],now_val[5],bending_condition[5]; |
skouki | 0:3728e947c2c0 | 26 | uint8_t data[5]; |
skouki | 0:3728e947c2c0 | 27 | |
skouki | 0:3728e947c2c0 | 28 | for(int i=0;i<5;i++)close_val[i] = finger[i]; |
skouki | 0:3728e947c2c0 | 29 | |
skouki | 0:3728e947c2c0 | 30 | while(1) { |
skouki | 0:3728e947c2c0 | 31 | bool b_ = b; |
skouki | 0:3728e947c2c0 | 32 | if(!b_){ |
skouki | 0:3728e947c2c0 | 33 | for(int i=0;i<5;i++)open_val[i] = finger[i]; |
skouki | 0:3728e947c2c0 | 34 | |
skouki | 0:3728e947c2c0 | 35 | while(1){ |
skouki | 0:3728e947c2c0 | 36 | |
skouki | 0:3728e947c2c0 | 37 | for(int i = 0;i<5;i++){ |
skouki | 0:3728e947c2c0 | 38 | now_val[i] = finger[i]; |
skouki | 0:3728e947c2c0 | 39 | bending_condition[i] = (now_val[i] - close_val[i]) / (open_val[i] - close_val[i]) * 100; |
skouki | 0:3728e947c2c0 | 40 | if(open_val[i] <= now_val[i]) bending_condition[i] = 100.0; |
skouki | 0:3728e947c2c0 | 41 | if(close_val[i] >= now_val[i]) bending_condition[i] = 0.0; |
skouki | 0:3728e947c2c0 | 42 | data[i] = (uint8_t)((1-bending_condition[i] / 100 )* 255); |
skouki | 0:3728e947c2c0 | 43 | //pc.printf("finger%d:%3d%",i+1,data[i]); |
skouki | 0:3728e947c2c0 | 44 | //pc.printf(",close:%.2f,open:%.2f,now:%.2f",close_val[i],open_val[i],now_val[i]); |
skouki | 0:3728e947c2c0 | 45 | } |
skouki | 0:3728e947c2c0 | 46 | |
skouki | 0:3728e947c2c0 | 47 | |
skouki | 0:3728e947c2c0 | 48 | /* |
skouki | 0:3728e947c2c0 | 49 | pc.printf("---"); |
skouki | 0:3728e947c2c0 | 50 | if(bending_condition[0]+bending_condition[1]+bending_condition[2]+bending_condition[3]+bending_condition[4] <= 50.0)pc.printf("グー"); |
skouki | 0:3728e947c2c0 | 51 | if(bending_condition[0]+bending_condition[3]+bending_condition[4] <= 100.0 && bending_condition[1]+bending_condition[2] >= 150.0)pc.printf("チョキ"); |
skouki | 0:3728e947c2c0 | 52 | if(bending_condition[1]+bending_condition[2]+bending_condition[3]+bending_condition[4] <= 50.0 &&+bending_condition[0] >= 80.0)pc.printf("good"); |
skouki | 0:3728e947c2c0 | 53 | if(bending_condition[0]+bending_condition[1]+bending_condition[2]+bending_condition[3]+bending_condition[4] >= 400.0)pc.printf("パー"); |
skouki | 0:3728e947c2c0 | 54 | pc.printf("---"); |
skouki | 0:3728e947c2c0 | 55 | */ |
skouki | 0:3728e947c2c0 | 56 | //pc.printf("\n\r"); |
skouki | 0:3728e947c2c0 | 57 | |
skouki | 0:3728e947c2c0 | 58 | |
skouki | 0:3728e947c2c0 | 59 | |
skouki | 0:3728e947c2c0 | 60 | |
skouki | 0:3728e947c2c0 | 61 | pc.printf("%3d,%3d,%3d,%3d,%3d\n\r",data[0],data[1],data[2],data[3],data[4]); |
skouki | 0:3728e947c2c0 | 62 | //for(int j = 0;j<=5;j++)serial.putc(data[j]); |
skouki | 0:3728e947c2c0 | 63 | fep.sendData(data,5); |
skouki | 0:3728e947c2c0 | 64 | |
skouki | 0:3728e947c2c0 | 65 | } |
skouki | 0:3728e947c2c0 | 66 | } |
skouki | 0:3728e947c2c0 | 67 | } |
skouki | 0:3728e947c2c0 | 68 | } |