diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-06-23 15:21:44 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-06-23 15:21:44 +0000 |
commit | fdc0555892c21c6aa6b582c468dfa31d05005273 (patch) | |
tree | 4d36ca147f5ffa270a601270a22706b18d8d90b8 | |
parent | 2abe2c479f15f9b4c66af007461c1ab2e2626ee0 (diff) | |
download | ChibiOS-fdc0555892c21c6aa6b582c468dfa31d05005273.tar.gz ChibiOS-fdc0555892c21c6aa6b582c468dfa31d05005273.tar.bz2 ChibiOS-fdc0555892c21c6aa6b582c468dfa31d05005273.zip |
PWM and ICU working on the STM32F0.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4329 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r-- | readme.txt | 2 | ||||
-rw-r--r-- | testhal/STM32F0xx/PWM-ICU/main.c | 15 |
2 files changed, 11 insertions, 6 deletions
diff --git a/readme.txt b/readme.txt index f49a68be8..ce6a5bc86 100644 --- a/readme.txt +++ b/readme.txt @@ -175,7 +175,7 @@ support several new devices.
- NEW: Demo for STM32F0-Discovery board.
- NEW: Initial support for STM32F0xx devices, added a specific ADC driver.
- Validated EXT, PAL, Serial, SPI drivers.
+ Validated EXT, GPT, ICU, PAL, PWM, Serial, SPI drivers.
- NEW: Added a common ancestor class to the SDC and MMC_SPI drivers. This
allows to share code and definitions.
- NEW: Modified the SDC driver to implement the new block devices abstract
diff --git a/testhal/STM32F0xx/PWM-ICU/main.c b/testhal/STM32F0xx/PWM-ICU/main.c index 8d771299a..2cabd2844 100644 --- a/testhal/STM32F0xx/PWM-ICU/main.c +++ b/testhal/STM32F0xx/PWM-ICU/main.c @@ -60,12 +60,17 @@ static void icuperiodcb(ICUDriver *icup) { last_period = icuGetPeriod(icup);
}
+static void icuoverflowcb(ICUDriver *icup) {
+
+ (void)icup;
+}
+
static ICUConfig icucfg = {
ICU_INPUT_ACTIVE_HIGH,
10000, /* 10kHz ICU clock frequency. */
icuwidthcb,
icuperiodcb,
- NULL,
+ icuoverflowcb,
ICU_CHANNEL_1
};
@@ -86,14 +91,14 @@ int main(void) { /*
* Initializes the PWM driver 2 and ICU driver 3.
- * GPIOA15 is the PWM output.
- * GPIOC6 is the ICU input.
+ * GPIOA6 is the ICU input (CH1).
+ * GPIOA15 is the PWM output (CH1).
* The two pins have to be externally connected together.
*/
pwmStart(&PWMD2, &pwmcfg);
- palSetPadMode(GPIOA, 15, PAL_MODE_ALTERNATE(1));
+ palSetPadMode(GPIOA, 15, PAL_MODE_ALTERNATE(2));
icuStart(&ICUD3, &icucfg);
- palSetPadMode(GPIOC, 6, PAL_MODE_ALTERNATE(2));
+ palSetPadMode(GPIOA, 6, PAL_MODE_ALTERNATE(1));
icuEnable(&ICUD3);
chThdSleepMilliseconds(2000);
|