EtherCAT slave that reads 3 Xsens IMU's connected to a Xbus Master
Dependencies: MODSERIAL mbed KL25Z_ClockControl
Fork of EtherCAT by
xbus.h
- Committer:
- vsluiter
- Date:
- 2015-03-03
- Revision:
- 12:cac4e7c2bd0f
- Child:
- 13:5e4dcbd44786
File content as of revision 12:cac4e7c2bd0f:
#ifndef XBUS_H_ #define XBUS_H_ 1 #define XBUS_BUFFER_LENGTH 255 enum XBUS_STATE {XBUS_IDLE = 0, XBUS_BID, XBUS_MID, XBUS_LEN, XBUS_DATA, XBUS_CS}; struct xbus_uart { uint16_t counter; uint8_t checksum; volatile uint8_t checksum_ok; volatile uint8_t message_complete; uint8_t quelength; uint8_t buffer[XBUS_BUFFER_LENGTH]; enum XBUS_STATE state; }; struct xbus_struct { //USART_t * uart; struct xbus_uart rx; //volatile struct xbus_uart tx; }; struct xbus_struct xbus_master; // Create checksum, pointer to array (starting w. 0xFA), length of complete array uint8_t XbusCreateChecksum(uint8_t *, uint8_t); void XbusSetupReceiver(struct xbus_struct *); void XbusReceiveState(struct xbus_struct * xbus, uint8_t rxdata); #endif