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:
@@ -0,0 +1,144 @@
|
||||
/* ---------------------------------------------------------------------------
|
||||
* remote_misc.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, Nov 11, 2008, MMi
|
||||
* Creation.
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
/* ---------------------------------------------------------------------------
|
||||
* System include files
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
#include "lpc23xx.h"
|
||||
#include "types.h"
|
||||
|
||||
/* FreeRTOS includes */
|
||||
#include "FreeRTOS.h"
|
||||
#include "Task.h"
|
||||
#include "Semphr.h"
|
||||
/* ---------------------------------------------------------------------------
|
||||
* Application include files
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
#include "BusProtocol.h"
|
||||
#include "protocolfunctions.h"
|
||||
|
||||
#include "remote_misc.h"
|
||||
#include "SerOut.h"
|
||||
|
||||
/* ---------------------------------------------------------------------------
|
||||
* Local constant and macro definitions
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
#define ident_calibrated 0x55
|
||||
#define ident_default 0xAA
|
||||
/* ---------------------------------------------------------------------------
|
||||
* Global variable definitions
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
extern UINT32 UINT32result; /* from topoftests.c */
|
||||
/* ---------------------------------------------------------------------------
|
||||
* Local variable definitions
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
/* ---------------------------------------------------------------------------
|
||||
* Local function definitions
|
||||
* ---------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#if ((PINSET_TESTER == 1) || (PINSET_TESTER == 2))
|
||||
BOOLEAN makeHandshake (void)
|
||||
{
|
||||
/* Make Handshake with first Slave device.
|
||||
* Take Semaphore, call remote function and take Semaphore again with
|
||||
* waitcycle. Semaphore can just be taken when remote function
|
||||
* finished and returns call to release Semaphore.
|
||||
*/
|
||||
|
||||
BOOLEAN handshakeResult;
|
||||
|
||||
xSemaphoreTake(generalSemaphore, 1); /* Take generalSemaphore */
|
||||
bpSendCallRpc (handleBus1, 2, 1, 0, NULL); /* Call Slaves Handshake */
|
||||
if (xSemaphoreTake(generalSemaphore, 2000) == pdPASS)
|
||||
{ /* Wait for Handshake done */
|
||||
handshakeResult = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
handshakeResult = FALSE;
|
||||
}
|
||||
|
||||
return (handshakeResult);
|
||||
}
|
||||
#endif
|
||||
|
||||
UINT8 returnRemoteCalibrationStatus (INT32 correctionType)
|
||||
{
|
||||
xSemaphoreTake(generalSemaphore, 0);
|
||||
bpSendCallRpc(handleBus1, 2, 13, 1, &correctionType);
|
||||
if (xSemaphoreTake(generalSemaphore, 5000) != pdPASS)
|
||||
{
|
||||
/* Semaphore is not released, timeout in transmission */
|
||||
xSemaphoreGive (generalSemaphore);
|
||||
UINT32result = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (UINT32result & ident_default)
|
||||
{
|
||||
}
|
||||
else if (UINT32result & ident_calibrated)
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
}
|
||||
}
|
||||
return ((UINT8) UINT32result);
|
||||
}
|
||||
|
||||
|
||||
UINT8 showRemoteCalibrationStatus (INT32 correctionType)
|
||||
{
|
||||
xSemaphoreTake(generalSemaphore, 0);
|
||||
bpSendCallRpc(handleBus1, 2, 13, 1, &correctionType);
|
||||
if (xSemaphoreTake(generalSemaphore, 5000) != pdPASS)
|
||||
{
|
||||
/* Semaphore is not released, timeout in transmission */
|
||||
xSemaphoreGive (generalSemaphore);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (UINT32result & ident_default)
|
||||
{
|
||||
sendString (SerOutPort, FALSE, testMessage,
|
||||
"Values are in DEFAULT Mode", Dummy, Dummy);
|
||||
}
|
||||
else if (UINT32result & ident_calibrated)
|
||||
{
|
||||
sendString (SerOutPort, FALSE, testMessage,
|
||||
"Values are in CALIBRATED Mode", Dummy, Dummy);
|
||||
}
|
||||
else
|
||||
{
|
||||
sendString (SerOutPort, FALSE, testMessage,
|
||||
"NO VALID VALUES IN EEPROM", Dummy, Dummy);
|
||||
}
|
||||
}
|
||||
return ((UINT8) UINT32result);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user