EtherCAT slave that reads 3 Xsens IMU's connected to a Xbus Master
Dependencies: MODSERIAL mbed KL25Z_ClockControl
Fork of EtherCAT by
xbus.h@12:cac4e7c2bd0f, 2015-03-03 (annotated)
- Committer:
- vsluiter
- Date:
- Tue Mar 03 10:58:20 2015 +0000
- Revision:
- 12:cac4e7c2bd0f
- Child:
- 13:5e4dcbd44786
Made first changes to objlist and cpu_init, copied some xbus software
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
vsluiter | 12:cac4e7c2bd0f | 1 | #ifndef XBUS_H_ |
vsluiter | 12:cac4e7c2bd0f | 2 | #define XBUS_H_ 1 |
vsluiter | 12:cac4e7c2bd0f | 3 | |
vsluiter | 12:cac4e7c2bd0f | 4 | #define XBUS_BUFFER_LENGTH 255 |
vsluiter | 12:cac4e7c2bd0f | 5 | |
vsluiter | 12:cac4e7c2bd0f | 6 | enum XBUS_STATE {XBUS_IDLE = 0, XBUS_BID, XBUS_MID, XBUS_LEN, XBUS_DATA, XBUS_CS}; |
vsluiter | 12:cac4e7c2bd0f | 7 | |
vsluiter | 12:cac4e7c2bd0f | 8 | struct xbus_uart |
vsluiter | 12:cac4e7c2bd0f | 9 | { |
vsluiter | 12:cac4e7c2bd0f | 10 | uint16_t counter; |
vsluiter | 12:cac4e7c2bd0f | 11 | uint8_t checksum; |
vsluiter | 12:cac4e7c2bd0f | 12 | volatile uint8_t checksum_ok; |
vsluiter | 12:cac4e7c2bd0f | 13 | volatile uint8_t message_complete; |
vsluiter | 12:cac4e7c2bd0f | 14 | uint8_t quelength; |
vsluiter | 12:cac4e7c2bd0f | 15 | uint8_t buffer[XBUS_BUFFER_LENGTH]; |
vsluiter | 12:cac4e7c2bd0f | 16 | enum XBUS_STATE state; |
vsluiter | 12:cac4e7c2bd0f | 17 | }; |
vsluiter | 12:cac4e7c2bd0f | 18 | |
vsluiter | 12:cac4e7c2bd0f | 19 | struct xbus_struct |
vsluiter | 12:cac4e7c2bd0f | 20 | { |
vsluiter | 12:cac4e7c2bd0f | 21 | //USART_t * uart; |
vsluiter | 12:cac4e7c2bd0f | 22 | struct xbus_uart rx; |
vsluiter | 12:cac4e7c2bd0f | 23 | //volatile struct xbus_uart tx; |
vsluiter | 12:cac4e7c2bd0f | 24 | }; |
vsluiter | 12:cac4e7c2bd0f | 25 | |
vsluiter | 12:cac4e7c2bd0f | 26 | struct xbus_struct xbus_master; |
vsluiter | 12:cac4e7c2bd0f | 27 | |
vsluiter | 12:cac4e7c2bd0f | 28 | // Create checksum, pointer to array (starting w. 0xFA), length of complete array |
vsluiter | 12:cac4e7c2bd0f | 29 | uint8_t XbusCreateChecksum(uint8_t *, uint8_t); |
vsluiter | 12:cac4e7c2bd0f | 30 | void XbusSetupReceiver(struct xbus_struct *); |
vsluiter | 12:cac4e7c2bd0f | 31 | void XbusReceiveState(struct xbus_struct * xbus, uint8_t rxdata); |
vsluiter | 12:cac4e7c2bd0f | 32 | #endif |
vsluiter | 12:cac4e7c2bd0f | 33 |