SOEM v1.3.1
Defines | Functions | Variables
eepromtool.c File Reference

EEprom tool for Simple Open EtherCAT master. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include <unistd.h>
#include <time.h>
#include "ethercattype.h"
#include "nicdrv.h"
#include "ethercatbase.h"
#include "ethercatmain.h"
#include "ethercatcoe.h"

Defines

#define MAXBUF   32768
#define STDBUF   2048
#define MINBUF   128
#define CRCBUF   14
#define MODE_NONE   0
#define MODE_READBIN   1
#define MODE_READINTEL   2
#define MODE_WRITEBIN   3
#define MODE_WRITEINTEL   4
#define MODE_WRITEALIAS   5
#define MODE_INFO   6
#define MAXSLENGTH   256
#define IHEXLENGTH   0x20

Functions

void calc_crc (uint8 *crc, uint8 b)
uint16 SIIcrc (uint8 *buf)
int input_bin (char *fname, int *length)
int input_intelhex (char *fname, int *start, int *length)
int output_bin (char *fname, int length)
int output_intelhex (char *fname, int length)
int eeprom_read (int slave, int start, int length)
int eeprom_write (int slave, int start, int length)
int eeprom_writealias (int slave, int alias, uint16 crc)
void eepromtool (char *ifname, int slave, int mode, char *fname)
int main (int argc, char *argv[])

Variables

uint8 ebuf [MAXBUF]
uint8 ob
uint16 ow
int os
int slave
int alias
struct timeval tstart tend tdif
int wkc
int mode
char sline [MAXSLENGTH]

Detailed Description

EEprom tool for Simple Open EtherCAT master.

Usage : eepromtool ifname slave OPTION fname|alias ifname is NIC interface, f.e. eth0 slave = slave number in EtherCAT order 1..n -r read EEPROM, output binary format -ri read EEPROM, output Intel Hex format -w write EEPROM, input binary format -wi write EEPROM, input Intel Hex format -i display EEPROM information -walias write slave alias in EEPROM

(c)Arthur Ketels 2010-2012


Define Documentation

#define CRCBUF   14
#define IHEXLENGTH   0x20
#define MAXBUF   32768
#define MAXSLENGTH   256
#define MINBUF   128
#define MODE_INFO   6
#define MODE_NONE   0
#define MODE_READBIN   1
#define MODE_READINTEL   2
#define MODE_WRITEALIAS   5
#define MODE_WRITEBIN   3
#define MODE_WRITEINTEL   4
#define STDBUF   2048

Function Documentation

void calc_crc ( uint8 *  crc,
uint8  b 
)
int eeprom_read ( int  slave,
int  start,
int  length 
)
int eeprom_write ( int  slave,
int  start,
int  length 
)
int eeprom_writealias ( int  slave,
int  alias,
uint16  crc 
)
void eepromtool ( char *  ifname,
int  slave,
int  mode,
char *  fname 
)
int input_bin ( char *  fname,
int *  length 
)
int input_intelhex ( char *  fname,
int *  start,
int *  length 
)
int main ( int  argc,
char *  argv[] 
)
int output_bin ( char *  fname,
int  length 
)
int output_intelhex ( char *  fname,
int  length 
)
uint16 SIIcrc ( uint8 *  buf)

Variable Documentation

int alias
uint8 ebuf[MAXBUF]
int mode
uint8 ob
int os
uint16 ow
int slave
char sline[MAXSLENGTH]
struct timeval tstart tend tdif
int wkc