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.
Dependents: serial_connected_mcu_nucleo rotary_encoder_mbed serial_connected_mcu_nucleo omuni_speed_pid ... more
Fork of rotary_encoder by
Revision 2:4580c3869b7b, committed 2016-02-26
- Comitter:
- inst
- Date:
- Fri Feb 26 16:08:52 2016 +0000
- Parent:
- 1:0b315dd1bbbf
- Child:
- 3:65021ea3fae5
- Commit message:
- add servo and PID
Changed in this revision
--- a/rotary_encoder.cpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder.cpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,6 +1,8 @@
#include "mbed.h"
#include "rotary_encoder.hpp"
+namespace mbed_stl {
+
const size_t rotary_encoder::max_counts_ = 0xFFFF;
rotary_encoder::rotary_encoder(size_t resolution) :
@@ -10,3 +12,5 @@
float rotary_encoder::get_revol_num() const {
return static_cast<float>(get_counts()) / resolution_;
}
+
+} /* namespace mbed_stl */
--- a/rotary_encoder.hpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder.hpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,8 +1,10 @@
-#ifndef INCLUDED_ROTARY_ENCODER_H
-#define INCLUDED_ROTARY_ENCODER_H
+#ifndef INCLUDED_MBED_STL_ROTARY_ENCODER_H
+#define INCLUDED_MBED_STL_ROTARY_ENCODER_H
#include "mbed.h"
+namespace mbed_stl {
+
class rotary_encoder {
public:
rotary_encoder(size_t resolution);
@@ -20,4 +22,6 @@
const size_t resolution_;
};
+} /* namespace mbed_stl */
+
#endif
--- a/rotary_encoder_a_phase.hpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_a_phase.hpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,5 +1,5 @@
-#ifndef INCLUDED_ROTARY_ENCODER_A_PHASE_H
-#define INCLUDED_ROTARY_ENCODER_A_PHASE_H
+#ifndef INCLUDED_MBED_STL_ROTARY_ENCODER_A_PHASE_H
+#define INCLUDED_MBED_STL_ROTARY_ENCODER_A_PHASE_H
#include "rotary_encoder_base.hpp"
#include "mbed.h"
@@ -21,6 +21,8 @@
* TIM5_CH2: AF2 @ PA_1*
*
*/
+
+namespace mbed_stl {
class rotary_encoder_a_phase : public rotary_encoder_base {
public:
@@ -29,4 +31,6 @@
virtual ~rotary_encoder_a_phase() {}
};
+} /* namespace mbed_stl */
+
#endif
--- a/rotary_encoder_ab_phase.hpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_ab_phase.hpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,5 +1,5 @@
-#ifndef INCLUDED_ROTARY_ENCODER_AB_PHASE_H
-#define INCLUDED_ROTARY_ENCODER_AB_PHASE_H
+#ifndef INCLUDED_MBED_STL_ROTARY_ENCODER_AB_PHASE_H
+#define INCLUDED_MBED_STL_ROTARY_ENCODER_AB_PHASE_H
#include "rotary_encoder_base.hpp"
#include "mbed.h"
@@ -21,6 +21,8 @@
* TIM5_CH2: AF2 @ PA_1*
*
*/
+
+namespace mbed_stl {
class rotary_encoder_ab_phase : public rotary_encoder_base {
public:
@@ -29,4 +31,6 @@
virtual ~rotary_encoder_ab_phase() {}
};
+} /* namespace mbed_stl */
+
#endif
--- a/rotary_encoder_abz_phase/rotary_encoder_abz_phase.cpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_abz_phase/rotary_encoder_abz_phase.cpp Fri Feb 26 16:08:52 2016 +0000
@@ -2,6 +2,8 @@
#include "rotary_encoder_abz_phase.hpp"
#include "rotary_encoder_base.hpp"
+namespace mbed_stl {
+
rotary_encoder_abz_phase::rotary_encoder_abz_phase(TIM_TypeDef* timer_type, PinName z_pin, size_t resolution) :
rotary_encoder_base(timer_type, TIM_ENCODERMODE_TI12, resolution),
z_phase_intr_(z_pin),
@@ -36,3 +38,5 @@
counts_in_prev_intr_ = 0;
timer_handler_->Instance->CNT = 0;
}
+
+} /* namespace mbed_stl */
--- a/rotary_encoder_abz_phase/rotary_encoder_abz_phase.hpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_abz_phase/rotary_encoder_abz_phase.hpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,5 +1,5 @@
-#ifndef INCLUDED_ROTARY_ENCODER_ABZ_PHASE_H
-#define INCLUDED_ROTARY_ENCODER_ABZ_PHASE_H
+#ifndef INCLUDED_MBED_STL_ROTARY_ENCODER_ABZ_PHASE_H
+#define INCLUDED_MBED_STL_ROTARY_ENCODER_ABZ_PHASE_H
#include "rotary_encoder_base.hpp"
#include "mbed.h"
@@ -21,6 +21,8 @@
* TIM5_CH2: AF2 @ PA_1*
*
*/
+
+namespace mbed_stl {
class rotary_encoder_abz_phase : public rotary_encoder_base {
public:
@@ -39,4 +41,6 @@
uint32_t counts_in_prev_intr_;
};
+} /* namespace mbed_stl */
+
#endif
--- a/rotary_encoder_base/EncoderMspInitF4.cpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_base/EncoderMspInitF4.cpp Fri Feb 26 16:08:52 2016 +0000
@@ -28,8 +28,7 @@
*/
#ifdef TARGET_STM32F4
-void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim)
-{
+void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim) {
GPIO_InitTypeDef GPIO_InitStruct;
if (htim->Instance == TIM1) { //PA8 PA9 = Nucleo D7 D8
@@ -41,8 +40,7 @@
GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM1;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
- }
- else if (htim->Instance == TIM2) { //PA0 PA1 = Nucleo A0 A1
+ } else if (htim->Instance == TIM2) { //PA0 PA1 = Nucleo A0 A1
__TIM2_CLK_ENABLE();
__GPIOA_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_1;
@@ -51,8 +49,7 @@
GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM2;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
- }
- else if (htim->Instance == TIM3) { //PB4 PB5 = Nucleo D5 D4
+ } else if (htim->Instance == TIM3) { //PB4 PB5 = Nucleo D5 D4
__TIM3_CLK_ENABLE();
__GPIOB_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_4 | GPIO_PIN_5;
@@ -61,8 +58,7 @@
GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF2_TIM3;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
- }
- else if (htim->Instance == TIM4) { // PB6 PB7 = Nucleo D10 MORPHO_PB7
+ } else if (htim->Instance == TIM4) { // PB6 PB7 = Nucleo D10 MORPHO_PB7
__TIM4_CLK_ENABLE();
__GPIOB_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_6 | GPIO_PIN_7;
@@ -73,4 +69,5 @@
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
}
}
+
#endif
\ No newline at end of file
--- a/rotary_encoder_base/rotary_encoder_base.cpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_base/rotary_encoder_base.cpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,6 +1,8 @@
#include "rotary_encoder_base.hpp"
#include "rotary_encoder.hpp"
+namespace mbed_stl {
+
rotary_encoder_base::rotary_encoder_base(TIM_TypeDef* timer_type,
uint32_t encoder_mode,
size_t resolution) : rotary_encoder(resolution) {
@@ -55,3 +57,5 @@
error("couldn't start encoder\r\n");
}
}
+
+} /* namespace mbed_stl */
--- a/rotary_encoder_base/rotary_encoder_base.hpp Fri Feb 26 05:30:53 2016 +0000
+++ b/rotary_encoder_base/rotary_encoder_base.hpp Fri Feb 26 16:08:52 2016 +0000
@@ -1,8 +1,10 @@
-#ifndef INCLUDED_ROTARY_ENCODER_BASE_H
-#define INCLUDED_ROTARY_ENCODER_BASE_H
+#ifndef INCLUDED_MBED_STL_ROTARY_ENCODER_BASE_H
+#define INCLUDED_MBED_STL_ROTARY_ENCODER_BASE_H
#include "rotary_encoder.hpp"
+namespace mbed_stl {
+
class rotary_encoder_base : public rotary_encoder {
public:
rotary_encoder_base(TIM_TypeDef* timer_type,
@@ -20,4 +22,7 @@
TIM_HandleTypeDef* timer_handler_;
};
+
+} /* namespace mbed_stl */
+
#endif
