Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MODSERIAL mbed KL25Z_ClockControl
Fork of EtherCAT by
xbus.h@42:ef78d11f2bd7, 2015-09-11 (annotated)
- Committer:
- vsluiter
- Date:
- Fri Sep 11 15:33:31 2015 +0000
- Revision:
- 42:ef78d11f2bd7
- Parent:
- 27:93c0e4ae943e
Also implemented samplecounter
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 | 13:5e4dcbd44786 | 4 | #include "MODSERIAL.h" |
| vsluiter | 16:bfc7ea6bd1af | 5 | #define XBUS_BUFFER_LENGTH 255 |
| vsluiter | 12:cac4e7c2bd0f | 6 | |
| vsluiter | 12:cac4e7c2bd0f | 7 | enum XBUS_STATE {XBUS_IDLE = 0, XBUS_BID, XBUS_MID, XBUS_LEN, XBUS_DATA, XBUS_CS}; |
| vsluiter | 12:cac4e7c2bd0f | 8 | |
| vsluiter | 12:cac4e7c2bd0f | 9 | struct xbus_uart |
| vsluiter | 12:cac4e7c2bd0f | 10 | { |
| vsluiter | 12:cac4e7c2bd0f | 11 | uint16_t counter; |
| vsluiter | 12:cac4e7c2bd0f | 12 | uint8_t checksum; |
| vsluiter | 12:cac4e7c2bd0f | 13 | volatile uint8_t checksum_ok; |
| vsluiter | 12:cac4e7c2bd0f | 14 | volatile uint8_t message_complete; |
| vsluiter | 16:bfc7ea6bd1af | 15 | uint8_t quelength; |
| vsluiter | 16:bfc7ea6bd1af | 16 | uint8_t buffer[XBUS_BUFFER_LENGTH]; |
| vsluiter | 12:cac4e7c2bd0f | 17 | enum XBUS_STATE state; |
| vsluiter | 12:cac4e7c2bd0f | 18 | }; |
| vsluiter | 12:cac4e7c2bd0f | 19 | |
| vsluiter | 13:5e4dcbd44786 | 20 | |
| vsluiter | 18:6629e8c5d59e | 21 | typedef struct xbus_struct |
| vsluiter | 12:cac4e7c2bd0f | 22 | { |
| vsluiter | 12:cac4e7c2bd0f | 23 | //USART_t * uart; |
| vsluiter | 12:cac4e7c2bd0f | 24 | struct xbus_uart rx; |
| vsluiter | 12:cac4e7c2bd0f | 25 | //volatile struct xbus_uart tx; |
| vsluiter | 18:6629e8c5d59e | 26 | } xbus_t; |
| vsluiter | 12:cac4e7c2bd0f | 27 | |
| vsluiter | 16:bfc7ea6bd1af | 28 | |
| vsluiter | 12:cac4e7c2bd0f | 29 | |
| vsluiter | 12:cac4e7c2bd0f | 30 | // Create checksum, pointer to array (starting w. 0xFA), length of complete array |
| vsluiter | 12:cac4e7c2bd0f | 31 | uint8_t XbusCreateChecksum(uint8_t *, uint8_t); |
| vsluiter | 18:6629e8c5d59e | 32 | void XbusSetupReceiver(xbus_t * xbus); |
| vsluiter | 18:6629e8c5d59e | 33 | void XbusReceiveState(xbus_t * xbus, uint8_t rxdata); |
| vsluiter | 13:5e4dcbd44786 | 34 | void XbusInitializeXbusMaster(void); |
| vsluiter | 17:c5946a0fde83 | 35 | void XbusCreateMessage(uint8_t bid, uint8_t mid, uint8_t message_size, uint8_t *message, uint8_t *buffer ); |
| vsluiter | 26:c7959f1fd09a | 36 | void XbusSetBaudRate(uint8_t baud); |
| vsluiter | 26:c7959f1fd09a | 37 | void XbusReset(void); |
| vsluiter | 27:93c0e4ae943e | 38 | void XbusGoToConfig(void); |
| vsluiter | 12:cac4e7c2bd0f | 39 | #endif |
| vsluiter | 12:cac4e7c2bd0f | 40 |
