GPT tested.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2780 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
gdisirio 2011-02-28 18:58:07 +00:00
parent 6b5ddb71fc
commit ab3e72edaa
2 changed files with 18 additions and 19 deletions

View File

@ -57,7 +57,7 @@
*/
void hal_lld_init(void) {
/* Reset of all the peripherals.*/
/* Reset of all peripherals.*/
RCC->APB1RSTR = 0xFFFFFFFF;
RCC->APB2RSTR = 0xFFFFFFFF;
RCC->APB1RSTR = 0;

View File

@ -21,21 +21,22 @@
#include "hal.h"
/*
* Red LEDs blinker thread, times are in milliseconds.
* GPT1 callback.
*/
static WORKING_AREA(waThread1, 128);
static msg_t Thread1(void *arg) {
static void gpt1cb(GPTDriver *gptp) {
(void)arg;
while (TRUE) {
palClearPad(IOPORT3, GPIOC_LED);
chThdSleepMilliseconds(500);
palSetPad(IOPORT3, GPIOC_LED);
chThdSleepMilliseconds(500);
}
return 0;
(void)gptp;
palTogglePad(IOPORT3, GPIOC_LED);
}
/*
* GPT1 configuration.
*/
static const GPTConfig gpt1cfg = {
10000, /* 10KHz timer clock.*/
gpt1cb /* Timer callback.*/
};
/*
* Application entry point.
*/
@ -51,21 +52,19 @@ int main(void) {
halInit();
chSysInit();
/*
* Creates the blinker thread.
*/
chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL);
/*
* Initializes the GPT driver 1.
*/
// gptStart(&GPTD1, &pwmcfg);
gptStart(&GPTD1, &gpt1cfg);
/*
* Normal main() thread activity, in this demo it does nothing.
*/
while (TRUE) {
chThdSleepMilliseconds(500);
gptStartContinuous(&GPTD1, 5000);
chThdSleepMilliseconds(5000);
gptStartContinuous(&GPTD1, 2500);
chThdSleepMilliseconds(5000);
}
return 0;
}