servo
Dependencies: Servo mbed tsi_sensor SLCD
main.cpp@1:854f2f39affd, 2016-03-22 (annotated)
- Committer:
- sim2egor
- Date:
- Tue Mar 22 17:00:58 2016 +0000
- Revision:
- 1:854f2f39affd
- Parent:
- 0:f5fd64350b21
ALL NEW
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sim2egor | 1:854f2f39affd | 1 | #include "mbed.h" |
sim2egor | 0:f5fd64350b21 | 2 | #include "tsi_sensor.h" |
sim2egor | 0:f5fd64350b21 | 3 | #include "Servo.h" |
sim2egor | 1:854f2f39affd | 4 | #include "SLCD.h" |
sim2egor | 0:f5fd64350b21 | 5 | |
sim2egor | 0:f5fd64350b21 | 6 | //для FRDM-46Z slider |
sim2egor | 0:f5fd64350b21 | 7 | #define ELEC0 9 |
sim2egor | 0:f5fd64350b21 | 8 | #define ELEC1 10 |
sim2egor | 0:f5fd64350b21 | 9 | |
sim2egor | 1:854f2f39affd | 10 | //DigitalOut gpo(D0); |
sim2egor | 1:854f2f39affd | 11 | //DigitalOut gpo(D1); |
sim2egor | 1:854f2f39affd | 12 | //Servo myservo(D0); |
sim2egor | 1:854f2f39affd | 13 | SLCD slcd; |
sim2egor | 1:854f2f39affd | 14 | InterruptIn sw2(SW1); |
sim2egor | 0:f5fd64350b21 | 15 | Servo myservo(D0); |
sim2egor | 1:854f2f39affd | 16 | PwmOut led(D1); |
sim2egor | 1:854f2f39affd | 17 | int Flag=0; |
sim2egor | 1:854f2f39affd | 18 | void sw2_release(void) |
sim2egor | 1:854f2f39affd | 19 | { |
sim2egor | 1:854f2f39affd | 20 | Flag=1; |
sim2egor | 1:854f2f39affd | 21 | } |
sim2egor | 1:854f2f39affd | 22 | |
sim2egor | 0:f5fd64350b21 | 23 | int main() |
sim2egor | 0:f5fd64350b21 | 24 | { |
sim2egor | 1:854f2f39affd | 25 | int angle =30; |
sim2egor | 1:854f2f39affd | 26 | // TSIAnalogSlider tsi(ELEC0, ELEC1, 40); |
sim2egor | 1:854f2f39affd | 27 | float delay1= 0.02f; |
sim2egor | 1:854f2f39affd | 28 | sw2.rise(&sw2_release); |
sim2egor | 0:f5fd64350b21 | 29 | while (true) { |
sim2egor | 1:854f2f39affd | 30 | for(int i=0; i<100;i++) |
sim2egor | 1:854f2f39affd | 31 | { |
sim2egor | 1:854f2f39affd | 32 | if(Flag) goto a1; |
sim2egor | 1:854f2f39affd | 33 | led = 1.0 - i/100; |
sim2egor | 1:854f2f39affd | 34 | for( int j=0; j<=angle; j++) |
sim2egor | 1:854f2f39affd | 35 | { |
sim2egor | 1:854f2f39affd | 36 | myservo.position((float)j); |
sim2egor | 1:854f2f39affd | 37 | wait(delay1); |
sim2egor | 1:854f2f39affd | 38 | } |
sim2egor | 1:854f2f39affd | 39 | |
sim2egor | 1:854f2f39affd | 40 | for( int j=angle; j>=-angle; j--) |
sim2egor | 1:854f2f39affd | 41 | { |
sim2egor | 1:854f2f39affd | 42 | myservo.position((float)j); |
sim2egor | 1:854f2f39affd | 43 | slcd.Home(); |
sim2egor | 1:854f2f39affd | 44 | slcd.printf("%d",j); |
sim2egor | 1:854f2f39affd | 45 | |
sim2egor | 1:854f2f39affd | 46 | wait(delay1); |
sim2egor | 1:854f2f39affd | 47 | } |
sim2egor | 1:854f2f39affd | 48 | for( int j=-angle; j<=0; j++) |
sim2egor | 1:854f2f39affd | 49 | { |
sim2egor | 1:854f2f39affd | 50 | myservo.position((float)j); |
sim2egor | 1:854f2f39affd | 51 | wait(delay1); |
sim2egor | 1:854f2f39affd | 52 | } |
sim2egor | 1:854f2f39affd | 53 | |
sim2egor | 1:854f2f39affd | 54 | } |
sim2egor | 1:854f2f39affd | 55 | |
sim2egor | 0:f5fd64350b21 | 56 | } |
sim2egor | 1:854f2f39affd | 57 | a1: myservo.position(0.0f); |
sim2egor | 1:854f2f39affd | 58 | while (1){ |
sim2egor | 1:854f2f39affd | 59 | }; |
sim2egor | 0:f5fd64350b21 | 60 | } |