Здравствуйте!
1. По умолчанию в windows включен UART3 или CAN?
2. CAN контроллер работает на какой чатоте?
3. Как задать скорость работы CAN интерфейса в WIndows CE?
Спасибо.
P.S. В SDK файл cansdk.cpp описывает функцию получения скорости так, но у меня она возвращает все время 0.
//-----------------------------------------------------------------------------
//
// Function: CANGetClockRate
//
// This function will retrieve the clock rate divisor. Note that the value
// is not the absolute peripheral clock frequency. The value retrieved should
// be compared against the CAN specifications to obtain the true frequency.
//
// Parameters:
// hCAN
// [in] The CAN device handle retrieved from CANOpenHandle().
//
// pwClkRate
// [out] The pointer of WORD variable that retrieves divisor index.
// Refer to CAN specification to obtain the true clock frequency.
//
// Returns:
// Return TRUE or FALSE. If the result is TRUE, the operation is
// successful.
//
//-----------------------------------------------------------------------------
BOOL CANGetClockRate(HANDLE hCAN, PWORD pwClkRate)
{
CAN_FUNCTION_ENTRY();
if (!DeviceIoControl(hCAN, // file handle to the driver
CAN_IOCTL_GET_CLOCK_RATE, // I/O control code
NULL, // in buffer
0, // in buffer size
pwClkRate, // out buffer
sizeof(WORD), // out buffer size
NULL, // pointer to number of bytes returned
NULL)) // ignored (=NULL)
{
DEBUGMSG(ZONE_ERROR,
(TEXT("%s: CAN_IOCTL_GET_CLOCK_RATE failed!\r\n"), __WFUNCTION__));
return FALSE;
}
CAN_FUNCTION_EXIT();
return TRUE;
}