太郎 九大
/
2013naturobo
夏ロボ用
init.cpp@0:7d18a91d0d19, 2013-09-07 (annotated)
- Committer:
- kurt
- Date:
- Sat Sep 07 06:34:29 2013 +0000
- Revision:
- 0:7d18a91d0d19
for publish
;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kurt | 0:7d18a91d0d19 | 1 | #include "init.h" |
kurt | 0:7d18a91d0d19 | 2 | #include "QEI.h" |
kurt | 0:7d18a91d0d19 | 3 | |
kurt | 0:7d18a91d0d19 | 4 | |
kurt | 0:7d18a91d0d19 | 5 | DigitalOut MOTOR_POWER(PTC10); |
kurt | 0:7d18a91d0d19 | 6 | |
kurt | 0:7d18a91d0d19 | 7 | PwmOut PWM0(PTC9); |
kurt | 0:7d18a91d0d19 | 8 | PwmOut PWM1(PTC8); |
kurt | 0:7d18a91d0d19 | 9 | PwmOut PWM2(PTA5); |
kurt | 0:7d18a91d0d19 | 10 | PwmOut PWM3(PTA4); |
kurt | 0:7d18a91d0d19 | 11 | PwmOut PWM4(PTA12); |
kurt | 0:7d18a91d0d19 | 12 | PwmOut PWM5(PTD4); |
kurt | 0:7d18a91d0d19 | 13 | AnalogIn AD0(PTB0); |
kurt | 0:7d18a91d0d19 | 14 | AnalogIn AD1(PTB1); |
kurt | 0:7d18a91d0d19 | 15 | AnalogIn AD2(PTB2); |
kurt | 0:7d18a91d0d19 | 16 | AnalogIn AD3(PTB3); |
kurt | 0:7d18a91d0d19 | 17 | AnalogIn AD4(PTC2); |
kurt | 0:7d18a91d0d19 | 18 | |
kurt | 0:7d18a91d0d19 | 19 | DigitalOut OUT0(PTC6); |
kurt | 0:7d18a91d0d19 | 20 | //DigitalIn IN0(PTC6); |
kurt | 0:7d18a91d0d19 | 21 | DigitalOut OUT1(PTC5); |
kurt | 0:7d18a91d0d19 | 22 | //DigitalIn IN1(PTC5); |
kurt | 0:7d18a91d0d19 | 23 | DigitalOut OUT2(PTC4); |
kurt | 0:7d18a91d0d19 | 24 | //DigitalIn IN2(PTC4); |
kurt | 0:7d18a91d0d19 | 25 | DigitalOut OUT3(PTC3); |
kurt | 0:7d18a91d0d19 | 26 | //DigitalIn IN3(PTC3); |
kurt | 0:7d18a91d0d19 | 27 | DigitalOut OUT4(PTC0); |
kurt | 0:7d18a91d0d19 | 28 | //DigitalIn IN4(PTC0); |
kurt | 0:7d18a91d0d19 | 29 | DigitalOut OUT5(PTC7); |
kurt | 0:7d18a91d0d19 | 30 | //DigitalIn IN5(PTC7); |
kurt | 0:7d18a91d0d19 | 31 | |
kurt | 0:7d18a91d0d19 | 32 | Serial pc(USBTX, USBRX); |
kurt | 0:7d18a91d0d19 | 33 | |
kurt | 0:7d18a91d0d19 | 34 | QEI ENC0(PTD6, PTD7, NC, 624, QEI::X2_ENCODING); |
kurt | 0:7d18a91d0d19 | 35 | QEI ENC1(PTD3, PTD1, NC, 624, QEI::X2_ENCODING); |
kurt | 0:7d18a91d0d19 | 36 | QEI ENC2(PTA13, PTD5, NC, 624, QEI::X2_ENCODING); |
kurt | 0:7d18a91d0d19 | 37 | QEI ENC3(PTD0, PTD2, NC, 624, QEI::X2_ENCODING); |
kurt | 0:7d18a91d0d19 | 38 | |
kurt | 0:7d18a91d0d19 | 39 | I2C i2c0(PTE0,PTE1); |
kurt | 0:7d18a91d0d19 | 40 | |
kurt | 0:7d18a91d0d19 | 41 | DigitalIn SW0(PTE29); |
kurt | 0:7d18a91d0d19 | 42 | DigitalIn SW1(PTE30); |
kurt | 0:7d18a91d0d19 | 43 | |
kurt | 0:7d18a91d0d19 | 44 | DigitalOut rled(LED_RED); |
kurt | 0:7d18a91d0d19 | 45 | DigitalOut gled(LED_GREEN); |
kurt | 0:7d18a91d0d19 | 46 | DigitalOut bled(LED_BLUE); |
kurt | 0:7d18a91d0d19 | 47 | |
kurt | 0:7d18a91d0d19 | 48 | void InitBoard(){ |
kurt | 0:7d18a91d0d19 | 49 | SW0.mode(PullUp); |
kurt | 0:7d18a91d0d19 | 50 | SW1.mode(PullUp); |
kurt | 0:7d18a91d0d19 | 51 | i2c0.frequency(1000000); |
kurt | 0:7d18a91d0d19 | 52 | MOTOR_POWER = 1; |
kurt | 0:7d18a91d0d19 | 53 | } |
kurt | 0:7d18a91d0d19 | 54 | |
kurt | 0:7d18a91d0d19 | 55 | Timer AdCycle; |
kurt | 0:7d18a91d0d19 | 56 | |
kurt | 0:7d18a91d0d19 | 57 | void AdjustCycle(int t_us){ |
kurt | 0:7d18a91d0d19 | 58 | if(AdCycle.read_us() == 0) AdCycle.start(); |
kurt | 0:7d18a91d0d19 | 59 | |
kurt | 0:7d18a91d0d19 | 60 | if(AdCycle.read_us()>t_us)gled=0; |
kurt | 0:7d18a91d0d19 | 61 | else gled=1; |
kurt | 0:7d18a91d0d19 | 62 | while(AdCycle.read_us()<=t_us); |
kurt | 0:7d18a91d0d19 | 63 | AdCycle.reset(); |
kurt | 0:7d18a91d0d19 | 64 | } |
kurt | 0:7d18a91d0d19 | 65 | |
kurt | 0:7d18a91d0d19 | 66 | int Limit(int value,int max,int min) { |
kurt | 0:7d18a91d0d19 | 67 | if (value>max)return max; |
kurt | 0:7d18a91d0d19 | 68 | if (value<min)return min; |
kurt | 0:7d18a91d0d19 | 69 | else return value; |
kurt | 0:7d18a91d0d19 | 70 | } |
kurt | 0:7d18a91d0d19 | 71 | |
kurt | 0:7d18a91d0d19 | 72 | double Limit_d(double value,double max,double min) { |
kurt | 0:7d18a91d0d19 | 73 | if (value>max)return max; |
kurt | 0:7d18a91d0d19 | 74 | if (value<min)return min; |
kurt | 0:7d18a91d0d19 | 75 | else return value; |
kurt | 0:7d18a91d0d19 | 76 | } |
kurt | 0:7d18a91d0d19 | 77 |