summaryrefslogtreecommitdiff
path: root/nuttx
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-02-21 23:23:18 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-02-21 23:23:18 +0000
commited21ea00afa6272bddcca7070ca0fa89e851c14c (patch)
tree8f935c05e96bea2d1fb97dc3508507189e231675 /nuttx
parent5c775298fca577723a497605f0f4dec4df9fa05a (diff)
downloadpx4-nuttx-ed21ea00afa6272bddcca7070ca0fa89e851c14c.tar.gz
px4-nuttx-ed21ea00afa6272bddcca7070ca0fa89e851c14c.tar.bz2
px4-nuttx-ed21ea00afa6272bddcca7070ca0fa89e851c14c.zip
Misc fixes to quadrature encoder debug output
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4411 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx')
-rw-r--r--nuttx/arch/arm/src/stm32/stm32_qencoder.c17
-rw-r--r--nuttx/configs/stm32f4discovery/src/up_qencoder.c4
2 files changed, 14 insertions, 7 deletions
diff --git a/nuttx/arch/arm/src/stm32/stm32_qencoder.c b/nuttx/arch/arm/src/stm32/stm32_qencoder.c
index 97d7c4235..67ba1eabb 100644
--- a/nuttx/arch/arm/src/stm32/stm32_qencoder.c
+++ b/nuttx/arch/arm/src/stm32/stm32_qencoder.c
@@ -77,18 +77,18 @@
# ifdef CONFIG_DEBUG_VERBOSE
# define qevdbg vdbg
# define qellvdbg llvdbg
-# define stm32_dumpgpio(p,m) stm32_dumpgpio(p,m)
+# define qe_dumpgpio(p,m) stm32_dumpgpio(p,m)
# else
-# define qelldbg(x...)
+# define qevdbg(x...)
# define qellvdbg(x...)
-# define stm32_dumpgpio(p,m)
+# define qe_dumpgpio(p,m)
# endif
#else
# define qedbg(x...)
# define qelldbg(x...)
# define qevdbg(x...)
# define qellvdbg(x...)
-# define stm32_dumpgpio(p,m)
+# define qe_dumpgpio(p,m)
#endif
/************************************************************************************
@@ -604,6 +604,7 @@ static int stm32_setup(FAR struct qe_lowerhalf_s *lower)
uint16_t ccmr1;
uint16_t ccer;
uint16_t cr1;
+ uint16_t regval;
int ret;
/* NOTE: Clocking should have been enabled in the low-level RCC logic at boot-up */
@@ -754,7 +755,12 @@ static int stm32_setup(FAR struct qe_lowerhalf_s *lower)
cr1 &= ~GTIM_CR1_URS;
stm32_putreg16(priv, STM32_GTIM_CR1_OFFSET, cr1);
- /* Enable the update interrupt */
+ /* Clear any pending update interrupts */
+
+ regval = stm32_getreg16(priv, STM32_GTIM_SR_OFFSET);
+ stm32_putreg16(priv, STM32_GTIM_SR_OFFSET, regval & ~GTIM_SR_UIF)
+
+ /* Then enable the update interrupt */
dier = stm32_getreg16(priv, STM32_GTIM_DIER_OFFSET);
dier |= GTIM_DIER_UIE;
@@ -947,6 +953,7 @@ static int stm32_reset(FAR struct qe_lowerhalf_s *lower)
FAR struct stm32_lowerhalf_s *priv = (FAR struct stm32_lowerhalf_s *)lower;
irqstate_t flags;
+ qevdbg("Resetting position to zero\n");
DEBUGASSERT(lower && priv->inuse);
/* Reset the timer and the counter. Interrupts are disabled to make this atomic
diff --git a/nuttx/configs/stm32f4discovery/src/up_qencoder.c b/nuttx/configs/stm32f4discovery/src/up_qencoder.c
index 5d91f4c36..60d4d760e 100644
--- a/nuttx/configs/stm32f4discovery/src/up_qencoder.c
+++ b/nuttx/configs/stm32f4discovery/src/up_qencoder.c
@@ -89,7 +89,7 @@
# define qevdbg vdbg
# define qellvdbg llvdbg
# else
-# define qelldbg(x...)
+# define qevdbg(x...)
# define qellvdbg(x...)
# endif
#else
@@ -118,7 +118,7 @@
int qe_devinit(void)
{
- static initialized = false;
+ static bool initialized = false;
int ret;
/* Check if we are already initialized */