Francesco Pistone
/
FORIGO_Modula_V4_R5_DoubleEnc_2019
new_2019
iodefinition.hpp@3:36da019e6bb6, 2018-10-23 (annotated)
- Committer:
- nerit
- Date:
- Tue Oct 23 15:58:49 2018 +0000
- Revision:
- 3:36da019e6bb6
Versione Box Argento
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nerit | 3:36da019e6bb6 | 1 | #if defined(speedMaster) |
nerit | 3:36da019e6bb6 | 2 | InterruptIn tractorSpeedRead(PB_1); // define interrupt pin for tractor speed calculation MASTER MODE |
nerit | 3:36da019e6bb6 | 3 | #else |
nerit | 3:36da019e6bb6 | 4 | InterruptIn tractorSpeedRead(PA_5); // define interrupt pin for tractor speed calculation SLAVE MODE |
nerit | 3:36da019e6bb6 | 5 | #endif |
nerit | 3:36da019e6bb6 | 6 | DigitalIn TBzeroPinInputRev(PB_11); // define input of reading zero position of distributor wheel |
nerit | 3:36da019e6bb6 | 7 | //DigitalIn ElementPosition(PB_2); // define input for reading if seed element is down or up for master module, speed clock for slave |
nerit | 3:36da019e6bb6 | 8 | InterruptIn ElementPosition(PB_2); // define input for reading speed of seed wheel with fixed 25 hole |
nerit | 3:36da019e6bb6 | 9 | DigitalIn seedWheelZeroPinInputRev(PB_12); // define input of reading zero position of seeding wheel |
nerit | 3:36da019e6bb6 | 10 | DigitalIn buttonUser(PC_13); // pulsante su scheda |
nerit | 3:36da019e6bb6 | 11 | |
nerit | 3:36da019e6bb6 | 12 | DigitalOut speedClock(PA_6); // define out for speed clock repeater |
nerit | 3:36da019e6bb6 | 13 | |
nerit | 3:36da019e6bb6 | 14 | InterruptIn pwmCheck(PB_13); |
nerit | 3:36da019e6bb6 | 15 | PwmOut SDmotorPWM(PB_13); // define frequency command for seeding whell motor driver |
nerit | 3:36da019e6bb6 | 16 | DigitalOut SDmotorInB(PB_14); // sd motor half bridge direction selector |
nerit | 3:36da019e6bb6 | 17 | DigitalOut SDmotorInA(PB_15); // SD motor half bridge direction selector |
nerit | 3:36da019e6bb6 | 18 | DigitalIn enDiag_A(PB_5); // SD motor fault condition input A |
nerit | 3:36da019e6bb6 | 19 | DigitalIn enDiag_B(PB_4); // SD motor fault condition input A |
nerit | 3:36da019e6bb6 | 20 | AnalogIn SDcurrent(PA_4); // SD power current feedback |
nerit | 3:36da019e6bb6 | 21 | |
nerit | 3:36da019e6bb6 | 22 | DigitalOut TBmotor_M1(PC_8); // TB motor step division M1 |
nerit | 3:36da019e6bb6 | 23 | DigitalOut TBmotor_M2(PC_6); // TB motor step division M2 |
nerit | 3:36da019e6bb6 | 24 | DigitalOut TBmotor_M3(PC_6); // TB motor step division M3 |
nerit | 3:36da019e6bb6 | 25 | DigitalOut TBmotorRst(PC_4); // TB motor driver reset |
nerit | 3:36da019e6bb6 | 26 | DigitalOut TBmotorStepOut(PB_3); // TB motor step command |
nerit | 3:36da019e6bb6 | 27 | DigitalOut TBmotorDirecti(PA_10); // TB motor direction command |
nerit | 3:36da019e6bb6 | 28 | |
nerit | 3:36da019e6bb6 | 29 | |
nerit | 3:36da019e6bb6 | 30 | #if defined(M1) |
nerit | 3:36da019e6bb6 | 31 | DigitalOut quinconceOut(PA_1); // sincro per quinconcio out |
nerit | 3:36da019e6bb6 | 32 | DigitalIn quinconceIn(PA_0,PullUp); |
nerit | 3:36da019e6bb6 | 33 | #else |
nerit | 3:36da019e6bb6 | 34 | DigitalIn quinconceIn(PA_0,PullUp); |
nerit | 3:36da019e6bb6 | 35 | DigitalIn quinconceOut(PA_1); // sincro per quinconcio out |
nerit | 3:36da019e6bb6 | 36 | #endif |
nerit | 3:36da019e6bb6 | 37 | |
nerit | 3:36da019e6bb6 | 38 | #if defined(speedMaster) |
nerit | 3:36da019e6bb6 | 39 | DigitalOut led(LED1); // ATTENZIONE: LED1 E' SU PA5 / D13 |
nerit | 3:36da019e6bb6 | 40 | #else |
nerit | 3:36da019e6bb6 | 41 | DigitalOut led(PC_7); // ATTENZIONE: LED1 E' SU PA5 / D13 |
nerit | 3:36da019e6bb6 | 42 | #endif |
nerit | 3:36da019e6bb6 | 43 | |
nerit | 3:36da019e6bb6 | 44 | DigitalIn zeroRequestIn(PB_6); // define input of zero request for slave module |
nerit | 3:36da019e6bb6 | 45 | DigitalIn runRequestIn(PB_9); // define input of run request for slave module |
nerit | 3:36da019e6bb6 | 46 | |
nerit | 3:36da019e6bb6 | 47 | #if defined(canbusActive) |
nerit | 3:36da019e6bb6 | 48 | CAN can1(PA_11,PA_12,100000); // CAN BUS channel for communication with other slave and master consolle |
nerit | 3:36da019e6bb6 | 49 | int checkState=0; |
nerit | 3:36da019e6bb6 | 50 | #endif |
nerit | 3:36da019e6bb6 | 51 | CANMessage txMsg; |
nerit | 3:36da019e6bb6 | 52 | CANMessage rxMsg; |
nerit | 3:36da019e6bb6 | 53 | |
nerit | 3:36da019e6bb6 | 54 | #if defined(pcSerial) |
nerit | 3:36da019e6bb6 | 55 | Serial pc(USBTX, USBRX,250000); // serial channel for PC communication |
nerit | 3:36da019e6bb6 | 56 | #else |
nerit | 3:36da019e6bb6 | 57 | #if defined(speedTime) |
nerit | 3:36da019e6bb6 | 58 | Serial pc(USBTX, USBRX,250000); // serial channel for PC communication |
nerit | 3:36da019e6bb6 | 59 | #endif |
nerit | 3:36da019e6bb6 | 60 | #endif |
nerit | 3:36da019e6bb6 | 61 |