MA FTDI utilities  v1.0
 All Files Functions Pages
Macros | Functions | Variables
mareg.c File Reference

MA register utility. More...

#include <stdio.h>
#include <stdlib.h>
#include "parser.h"
#include "ftdi_api.h"
#include "fas_api.h"
Include dependency graph for mareg.c:

Macros

#define DEBUG   0
 
#define EQUIV_FIFO_DEPTH   2500
 
#define MAX_FIFO_BYTESIZE   EQUIV_FIFO_DEPTH*3
 
#define CHECK_WRITE(REG_NUM)
 
#define CHECK_READ(REG_NUM)
 
#define CHECK_VERIFY(REG_NUM)
 

Functions

int main (int argc, char *argv[])
 Main function / Entry point to the fasreg utility. More...
 

Variables

uint32 g_channels
 
FT_HANDLE g_ftHandle
 
ChannelConfig channelConf
 
int gp_channel
 
int gp_muted
 
int gp_debug
 
int gp_spimode
 
int gp_baudrate
 
int gp_read
 
int gp_write
 
int gp_verify
 
int gp_program
 
int gp_output_radix
 
REG0_t reg0
 
REG3_t reg3
 
REG4_t reg4
 
REG5_t reg5
 
REG7_t reg7
 
REG9_t reg9
 
uint8 reg0val
 
uint8 reg3val
 
uint8 reg4val
 
uint8 reg5val
 
uint8 reg7val
 
uint8 reg9val
 
uint8 gp_reg2write [10]
 
uint8 gp_reg2write_msk [10]
 
uint8 gp_reg2read [10]
 
uint8 gp_reg2read_msk [10]
 

Detailed Description

MA register utility.

Author
Benjamin Zhai (benja.nosp@m.min..nosp@m.zhai@.nosp@m.sens.nosp@m.ima.c.nosp@m.om)
Version
1.07
Date
20131218 Copyright © 2013-2014 Sensima Technology SA
Company Confidential
Project: MA-FTDI USB
Module: MA sensor register utility using FTDI USB
Revision History:
0.1 - rev 25 - 20131031 - Initial version
0.1.1 - rev 26 - 20131031 - Update program name to fasreg
0.2 - rev 33 - 20131031 - Updated to use SPI mode 0
0.3 - rev 108 - 20131209 - Hardware tested
0.4 - rev 122 - 20131211 - Data alignment error corrected
0.9 - rev 123 - 20131211 - Merged pre-release
0.95 - rev 132 - 20131211 - Pre-release
1.0 - rev 136 - 20131212 - Release
1.02 - rev 143 - 20131216 - Added auto channel detection
1.03 - rev 144 - 20121216 - Modified debug behaviour
1.04 - rev 146 - 20121216 - Updated help messages
1.05 - rev 148 - 20121216 - Default behaviour defined
1.06 - rev 150 - 20131216 - Corrected bitfield write
Todo:

Add fifo depth parameter to argument

Add OTP functionality

Macro Definition Documentation

#define CHECK_READ (   REG_NUM)
Value:
do { if (gp_reg2read[REG_NUM]) \
{FAS_READ(REG_NUM);fas_reg_print(reg##REG_NUM##val,REG_NUM,gp_output_radix);}} \
while(0)
#define CHECK_VERIFY (   REG_NUM)
Value:
do { if (gp_reg2write[REG_NUM]) \
{FAS_READ(REG_NUM);fas_reg_print(reg##REG_NUM##val,REG_NUM,gp_output_radix);}} \
while(0)
#define CHECK_WRITE (   REG_NUM)
Value:
do { if (gp_reg2write[REG_NUM]) \
{FAS_WRITE(REG_NUM);}} \
while(0)

Function Documentation

int main ( int  argc,
char *  argv[] 
)

Main function / Entry point to the fasreg utility.

This function is the entry point to the fasreg utility. It opens the channel, reads/writes registers of the FAS sensor and programs the OTP.

Parameters
[in]argc,argv
Returns
Returns 0 for success For detailed help type:
* $mareg --help
*
Example Usage:
* $mareg -s25 -xh
*
See Also
Note
Warning