/** ###################################################################
** Filename : default.C
** Project : default
** Processor : 56F807
** Version : Driver 01.09
** Compiler : Metrowerks DSP C Compiler
** Date/Time : 10-Feb-05, 14:56
** Abstract :
** Main module.
** Here is to be placed user's code.
** Settings :
** Contents :
** No public methods
**
** Copyright Freescale Semiconductor, Inc. All Rights Reserved.
** ###################################################################*/
/* MODULE default */
/* Including used modules for compilling procedure */
#include "Cpu.h"
#include "PWM1.h"
#include "Cap1.h"
#include "TEST1.h"
/* Include shared modules, which are used for whole project */
#include "PE_Types.h"
#include "PE_Error.h"
#include "PE_Const.h"
#include "IO_Map.h"
void main(void)
{
test_sRec testRec;
/*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/
PE_low_level_init();
/*** End of Processor Expert internal initialization. ***/
TEST1_testStart(&testRec, "PWM test");
overflow = FALSE;
end = FALSE;
event = 0;
TEST1_testComment(&testRec, "PWM bean will generate 3 pulses (26.214ms period/3ms duty)");
Cap1_Enable(); /* enable measuring */
PWM1_Enable(); /* start pulse generation */
Cpu_Delay100US(800); /* wait 80ms */
Cap1_Disable(); /* 3 pulses should be measured then disable capture bean */
TEST1_testComment(&testRec, "test capture overflow");
if (overflow) {
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "OK");
}
TEST1_testComment(&testRec, "test PWM event OnEnd");
if (!end) {
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "OK");
}
event=0;
TEST1_testComment(&testRec, "first pulse - low level (1%)");
if ((Ticks[event] < (1875-18)) || (Ticks[event] > (1875+18))) { /* 3ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
event++;
TEST1_testComment(&testRec, "first pulse - high level (1%)");
if ((Ticks[event] < (16384-163)) || (Ticks[event] > (16384+163))) { /* 26.214ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
event++;
TEST1_testComment(&testRec, "second pulse - low level (1%)");
if ((Ticks[event] < (18258-182)) || (Ticks[event] > (18258+182))) { /* 29.214ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
event++;
TEST1_testComment(&testRec, "second pulse - high level (1%)");
if ((Ticks[event] < (32768-327)) || (Ticks[event] > (32768+327))) { /* 52.428ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
event++;
TEST1_testComment(&testRec, "third pulse - low level (1%)");
if ((Ticks[event] < (34508-345)) || (Ticks[event] > (34508+345))) { /* 55.214ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
event++;
TEST1_testComment(&testRec, "third pulse - high level (1%)");
if ((Ticks[event] < (49151-491)) || (Ticks[event] > (49151+491))) { /* 78.642ms */
TEST1_testFailed(&testRec, "");
} else {
TEST1_testComment(&testRec, "number of ticks OK");
}
TEST1_testEnd(&testRec);
}
/* END default */
/*
** ###################################################################
**
** This file was created by Processor Expert
** for the Freescale 56800 series of microcontrollers.
**
** ###################################################################
*/