Ruprecht Altenburger
/
mirror_actuator_V1
Mirror actuator for RT2 lab
Library_Misc/EncoderCounterIndex.h@15:9f32f64eee5b, 2021-05-02 (annotated)
- Committer:
- altb2
- Date:
- Sun May 02 08:17:06 2021 +0000
- Revision:
- 15:9f32f64eee5b
commit for students, 2.5.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
altb2 | 15:9f32f64eee5b | 1 | /* |
altb2 | 15:9f32f64eee5b | 2 | * EncoderCounterIndex.h |
altb2 | 15:9f32f64eee5b | 3 | * Copyright (c) 2018, ZHAW |
altb2 | 15:9f32f64eee5b | 4 | * All rights reserved. |
altb2 | 15:9f32f64eee5b | 5 | * |
altb2 | 15:9f32f64eee5b | 6 | * Created on: 13.08.2018 |
altb2 | 15:9f32f64eee5b | 7 | * Author: Marcel Honegger |
altb2 | 15:9f32f64eee5b | 8 | */ |
altb2 | 15:9f32f64eee5b | 9 | |
altb2 | 15:9f32f64eee5b | 10 | #ifndef ENCODER_COUNTER_INDEX_H_ |
altb2 | 15:9f32f64eee5b | 11 | #define ENCODER_COUNTER_INDEX_H_ |
altb2 | 15:9f32f64eee5b | 12 | |
altb2 | 15:9f32f64eee5b | 13 | #include <cstdlib> |
altb2 | 15:9f32f64eee5b | 14 | #include <stdint.h> |
altb2 | 15:9f32f64eee5b | 15 | #include <mbed.h> |
altb2 | 15:9f32f64eee5b | 16 | |
altb2 | 15:9f32f64eee5b | 17 | class EncoderCounter; |
altb2 | 15:9f32f64eee5b | 18 | |
altb2 | 15:9f32f64eee5b | 19 | /** |
altb2 | 15:9f32f64eee5b | 20 | * The <code>EncoderCounterIndex</code> class implements an interrupt service routine |
altb2 | 15:9f32f64eee5b | 21 | * to catch the current encoder position when an index pulse is received. |
altb2 | 15:9f32f64eee5b | 22 | */ |
altb2 | 15:9f32f64eee5b | 23 | class EncoderCounterIndex { |
altb2 | 15:9f32f64eee5b | 24 | |
altb2 | 15:9f32f64eee5b | 25 | public: |
altb2 | 15:9f32f64eee5b | 26 | |
altb2 | 15:9f32f64eee5b | 27 | EncoderCounterIndex(EncoderCounter& encoderCounter, InterruptIn& channelIndex); |
altb2 | 15:9f32f64eee5b | 28 | virtual ~EncoderCounterIndex(); |
altb2 | 15:9f32f64eee5b | 29 | int32_t getPositionAtIndexPulse(); |
altb2 | 15:9f32f64eee5b | 30 | int32_t positionAtIndexPulse; |
altb2 | 15:9f32f64eee5b | 31 | |
altb2 | 15:9f32f64eee5b | 32 | private: |
altb2 | 15:9f32f64eee5b | 33 | |
altb2 | 15:9f32f64eee5b | 34 | EncoderCounter& encoderCounter; |
altb2 | 15:9f32f64eee5b | 35 | InterruptIn& channelIndex; |
altb2 | 15:9f32f64eee5b | 36 | void rise(); |
altb2 | 15:9f32f64eee5b | 37 | }; |
altb2 | 15:9f32f64eee5b | 38 | |
altb2 | 15:9f32f64eee5b | 39 | #endif /* ENCODER_COUNTER_INDEX_H_ */ |
altb2 | 15:9f32f64eee5b | 40 | |
altb2 | 15:9f32f64eee5b | 41 |