Added Software projects

git-svn-id: file:///srv/dev-disk-by-uuid-17e88007-4d0c-45e0-8757-cacfcc458630/repositories/svn/Diplomarbeit@55 9fe90eed-be63-e94b-8204-d34ff4c2ff93
This commit is contained in:
Matthias
2008-12-23 10:34:08 +00:00
parent ee5a771818
commit 373a8c32b2
348 changed files with 86781 additions and 0 deletions
@@ -0,0 +1,172 @@
/* ---------------------------------------------------------------------------
* testeeprom.c (c) 2008 Micro-key bv
* ---------------------------------------------------------------------------
* Micro-key bv
* Industrieweg 28, 9804 TG Noordhorn
* Postbus 92, 9800 AB Zuidhorn
* The Netherlands
* Tel: +31 594 503020
* Fax: +31 594 505825
* Email: support@microkey.nl
* Web: www.microkey.nl
* ---------------------------------------------------------------------------
* Description:
* ---------------------------------------------------------------------------
* Version(s): 0.1, Mar 11, 2008, MMi
* Creation.
* ---------------------------------------------------------------------------
*/
/* ---------------------------------------------------------------------------
* System include files
* ---------------------------------------------------------------------------
*/
#include "lpc23xx.h"
#include "types.h"
/* FreeRTOS includes */
#include "FreeRTOS.h"
#include "Task.h"
/* ---------------------------------------------------------------------------
* Application include files
* ---------------------------------------------------------------------------
*/
#include "testeeprom.h"
#include "eeprom.h"
#include "SerOut.h"
#include "dio.h"
/* ---------------------------------------------------------------------------
* Local constant and macro definitions
* ---------------------------------------------------------------------------
*/
/* ---------------------------------------------------------------------------
* Global variable definitions
* ---------------------------------------------------------------------------
*/
/* Use same Arrays as Flash Test to minimize Memory usage */
// \MARK ARRAYS NOT NECESSARY ON OLIMEXBOARD
#if ((PINSET_TESTER == 1) || (PINSET_TESTER == 2))
UINT8 eepromResponseString[3000];
UINT8 eepromTestString[3000];
#endif
/* ---------------------------------------------------------------------------
* Local variable definitions
* ---------------------------------------------------------------------------
*/
UINT16 adres_var[2];
/* ---------------------------------------------------------------------------
* Local function definitions
* ---------------------------------------------------------------------------
*/
BOOLEAN testeepromStart(void)
{
BOOLEAN eepromTestResult;
eepromTestResult = doeepromTest();
return (eepromTestResult);
}
BOOLEAN doeepromTest (void)
{
BOOLEAN testFailed= FALSE;
// \MARK TEST NOT NECESSARY ON OLIMEXBOARD
#if ((PINSET_TESTER == 1) || (PINSET_TESTER == 2))
/*Local Variable Declaration */
UINT8 testByte;
UINT8 testString[] = "Dit is een oefening";
UINT16 index;
UINT8 oneByte = 0;
sendString (COM2, TRUE, testMessage,
"\tWrite Byte 0x34 to Adress 256", Dummy, Dummy);
eepromWrite (256, 0x34); /* Write one Byte to EEPROM */
eepromRead (256, &testByte); /* Read written Byte from EEPROM */
testFailed = (testByte != 0x34); /* compare read and written Bytes */
if (testFailed == FALSE)
{
sendString (COM2, FALSE, testMessage,
"\t DONE", Dummy, Dummy);
dioWrite (0, 1, TRUE);
}
else
{
sendString (COM2, FALSE, testMessage,
"\t FAILURE", Dummy, Dummy);
dioWrite (0, 0, TRUE);
}
if (!testFailed) /* If no Test fail up to here */
{
sendString (COM2, TRUE, testMessage,
"\tWrite 10 Bytes to Adress 511", Dummy, Dummy);
eepromWriteBuffer( 511, testString, 10);
/* Write Teststring to EEPROM with */
/* width of 10 Bytes */
eepromReadBuffer( 511, eepromResponseString, 10);
/* Read written String from EEPROM */
for (index = 0; index < 10; index++)
{ /* Compare both Strings */
if (eepromResponseString[index] != testString[index])
{ /* If Strings are not equal */
testFailed = TRUE; /* Set Test Result to FALSE */
}
}
if (testFailed == FALSE)
{
sendString (COM2, FALSE, testMessage,
"\t DONE", Dummy, Dummy);
dioWrite (0, 3, TRUE);
}
else
{
sendString (COM2, FALSE, testMessage,
"\t FAILURE", Dummy, Dummy);
dioWrite (0, 2, TRUE);
}
}
if (!testFailed) /* If no Test fail up to here */
{
sendString (COM2, TRUE, testMessage,
"\tWrite 3000 Byte to Adress 500", Dummy, Dummy);
int loopcnt;
for (loopcnt=0; loopcnt < 3000; loopcnt++)
{ /* Fill flashTestString */
eepromTestString[loopcnt] = oneByte++;
}
eepromWriteBuffer( 500, eepromTestString, 3000);
/* Write flashTestString to EEPROM */
/* with width of 3000 Bytes */
eepromReadBuffer( 500, eepromResponseString, 3000);
/* Read written String from EEPROM */
for (index = 0; index < 3000; index++)
{ /* Compare both Strings */
if (eepromResponseString[index] != eepromTestString[index])
{ /* If Strings are not equal */
testFailed = TRUE; /* Set Test Result to FALSE */
}
}
if (testFailed == FALSE)
{
sendString (COM2, FALSE, testMessage, "\t DONE", Dummy, Dummy);
dioWrite (0, 5, TRUE);
}
else
{
sendString (COM2, FALSE, testMessage, "\t FAILURE", Dummy, Dummy);
dioWrite (0, 4, TRUE);
}
}
#endif
return (!testFailed); /* Return Test Result */
}