?? profile.c
字號:
/***************************************************************************
* This code and information is provided "as is" without warranty of any *
* kind, either expressed or implied, including but not limited to the *
* implied warranties of merchantability and/or fitness for a particular *
* purpose. *
* *
* Copyright (C) 2005 Teridian Semiconductor Corp. All Rights Reserved. *
***************************************************************************/
//**************************************************************************
// DESCRIPTION: 71M652x POWER METER - Profile.
//
// AUTHOR: MTF
//
// HISTORY: See end of file
//**************************************************************************
// File: PROFILE.C
//
#include "options.h"
#if PROFILE && CLI && (SERIAL0_CLI || SERIAL1_CLI)
#include "calibration.h"
#include "ce.h"
#include "cli.h"
#include "mmath.h"
#include "defaults.h"
#include "flag0.h"
#include "flag1.h"
#include "io.h"
#include "meter.h"
#include "pcnt.h"
#include "priority.h"
#include "rtc.h"
#include "sercli.h"
#include "ser0cli.h"
#include "ser1cli.h"
#include "stm.h"
/*** Some external functions declared within this module ***/
void send_rtc (void);
/*** Private functions declared within this module ***/
static void Element_Profile (void);
static void Rms_Profile (void);
static void Total_Profile (void);
/*** Private variables declared within this module ***/
static int8r_t * code rate[] = { "300", "600", "1200", "2400", "4800", "9600", "19200", "38400" };
//-------------------------------------------------------------------//
void cmd_profile (void)
{
int8_t i;
bool any;
send_crlf ();
send_rtc ();
start_tx_rslt ("2000: ");
start_tx_rslt ("EQU:");
send_digit ((CE0 & EQU) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("CE_EN:");
send_digit ((CE0 & CE_EN) >> 4);
#if TRACE10
start_tx_rslt (" ");
start_tx_rslt ("TMUX:");
send_hex (CE0 & TMUX);
#endif
send_crlf ();
start_tx_rslt ("2001: ");
start_tx_rslt ("PRE_SAMPS:");
send_digit ((CE1 & PRE_SAMPS) >> 6);
start_tx_rslt (" ");
start_tx_rslt ("SUM_CYCLES:");
send_hex (CE1 & SUM_CYCLES);
send_crlf ();
start_tx_rslt ("2002: ");
start_tx_rslt ("MUX_DIV:");
send_digit ((CE2 & MUX_DIV) >> 6);
start_tx_rslt (" ");
start_tx_rslt ("CHOP:");
send_digit ((CE2 & CHOP_EN) >> 4);
start_tx_rslt (" ");
start_tx_rslt ("RTM:");
send_digit ((CE2 & RTM_EN) >> 3);
start_tx_rslt (" ");
start_tx_rslt ("RTC_INT:");
send_digit ((CE2 & EX_RTC) >> 1);
start_tx_rslt (" ");
start_tx_rslt ("XFER_INT:");
send_digit (CE2 & EX_XFER);
send_crlf ();
start_tx_rslt ("2003: ");
#if TRACE10
start_tx_rslt ("COMP_INT:");
send_digit ((COMP0 & COMP_INT) >> 3);
start_tx_rslt (" ");
#endif
start_tx_rslt ("COMP_STAT:");
send_digit (COMP0 & COMP_STAT);
send_crlf ();
start_tx_rslt ("2004: ");
start_tx_rslt ("VREF_CAL:");
send_digit ((CONFIG0 & VREF_CAL) >> 7);
start_tx_rslt (" ");
#if M6520
start_tx_rslt ("PLS_INV:");
send_digit ((CONFIG0 & PLS_INV) >> 6);
start_tx_rslt (" ");
#endif
#if TRACE10
start_tx_rslt ("CK_EN:");
send_digit ((CONFIG0 & CK_EN) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("CKOUT_DIS:");
send_digit ((CONFIG0 & CKOUT_DIS) >> 4);
#elif M6520
start_tx_rslt ("CKOUT_EN:");
send_digit ((CONFIG0 & CKOUT_EN) >> 4);
#endif
start_tx_rslt (" ");
start_tx_rslt ("VREF_DIS:");
send_digit ((CONFIG0 & VREF_DIS) >> 3);
start_tx_rslt (" ");
start_tx_rslt ("MPU_DIV:");
send_digit (CONFIG0 & MPU_DIV);
send_crlf ();
start_tx_rslt ("2005: ");
start_tx_rslt ("VDDREFZ:");
send_digit ((CONFIG1 & VDDREFZ) >> 7);
start_tx_rslt (" ");
#if M6520
start_tx_rslt ("VB_REF:");
send_digit ((CONFIG1 & VB_REF) >> 6);
start_tx_rslt (" ");
#endif
start_tx_rslt ("ECK_DIS:");
send_digit ((CONFIG1 & ECK_DIS) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("FIR_LEN:");
send_digit ((CONFIG1 & FIR_LEN) >> 4);
start_tx_rslt (" ");
#if TRACE10
start_tx_rslt ("ADC_DIS:");
send_digit ((CONFIG1 & ADC_DIS) >> 3);
#elif M6520
start_tx_rslt ("ADC_ENB:");
send_digit ((CONFIG1 & ADC_EN) >> 3);
#endif
start_tx_rslt (" ");
start_tx_rslt ("MUX_ALT:");
send_digit ((CONFIG1 & MUX_ALT) >> 2);
start_tx_rslt ("\r\n FLSH66ZT:");
send_digit ((CONFIG1 & FLSH66ZT) >> 1);
send_crlf ();
start_tx_rslt ("2006: ");
start_tx_rslt ("VERSION:");
send_digit (VERSION);
start_tx_rslt (" ");
#if M6520 || M6530
start_tx_rslt ("2007: ");
start_tx_rslt ("OPT_TXE:");
send_digit ((CONFIG2 & OPT_TXE) >> 6);
start_tx_rslt (" ");
start_tx_rslt ("EX_PLL:");
send_digit ((CONFIG2 & EX_PLL) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("EX_FWCOL:");
send_digit ((CONFIG2 & EX_FWCOL) >> 4);
start_tx_rslt (" ");
start_tx_rslt ("OPT_FDC:");
send_digit (CONFIG1 & OPT_FDC);
send_crlf ();
start_tx_rslt ("20A8: ");
start_tx_rslt ("CE3:");
send_digit (CE3);
send_crlf ();
start_tx_rslt ("20A9: ");
start_tx_rslt ("WAKE_ARM:");
send_digit ((WAKE & WAKE_ARM) >> 7);
start_tx_rslt (" ");
start_tx_rslt ("SLEEP:");
send_digit ((WAKE & SLEEP) >> 6);
start_tx_rslt (" ");
start_tx_rslt ("LCD_ONLY:");
send_digit ((WAKE & LCD_ONLY) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("WAKE_RES:");
send_digit ((WAKE & WAKE_RES) >> 3);
start_tx_rslt (" ");
start_tx_rslt ("WAKE_PRD:");
send_digit (WAKE & WAKE_PRD);
send_crlf ();
start_tx_rslt ("20AA: ");
start_tx_rslt ("TMUX:");
send_digit (TMUX);
send_crlf ();
#endif
start_tx_rslt ("Taking temperature measurements\r\n\n");
start_tx_rslt ("2008: ");
start_tx_rslt ("DIO_EEX:");
send_digit ((DIO & DIO_EEX) >> 6);
start_tx_rslt (" ");
#if M6520
start_tx_rslt ("OPT_RXDIS:");
send_digit ((DIO & OPT_RXDIS) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("OPT_RXINV");
send_digit ((DIO & OPT_RXINV) >> 4);
start_tx_rslt (" ");
#endif
start_tx_rslt ("DIO_PW:");
send_digit ((DIO & DIO_PW) >> 3);
start_tx_rslt (" ");
start_tx_rslt ("DIO_PV");
send_digit ((DIO & DIO_PV) >> 2);
start_tx_rslt (" ");
#if M6520
start_tx_rslt ("OPT_TXMOD");
send_digit ((DIO & OPT_TXMOD) >> 1);
start_tx_rslt (" ");
start_tx_rslt ("OPT_TXINV");
send_digit (DIO & OPT_TXINV);
#endif
send_crlf ();
start_tx_rslt ("2020: ");
#if TRACE10
start_tx_rslt ("LCD_BSTEN:");
send_digit ((LCDX & LCD_BSTEN) >> 7);
start_tx_rslt (" ");
#endif
#if TRACE10 || M6520
start_tx_rslt ("LCD_NUM:");
send_hex (LCDX & LCD_NUM);
#endif
#if M6530
send_hex (LCDX);
#endif
send_crlf ();
start_tx_rslt ("2021: ");
start_tx_rslt ("LCD_EN:");
send_digit ((LCDY & LCD_EN) >> 5);
start_tx_rslt (" ");
start_tx_rslt ("LCD_MODE:");
send_hex ((LCDY & LCD_MODE) >> 2);
start_tx_rslt (" ");
start_tx_rslt ("LCD_CLK:");
send_digit (LCDY & LCD_CLK);
send_crlf ();
#if TRACE10
start_tx_rslt ("2022: ");
start_tx_rslt ("LCD_FS:");
send_hex (LCDZ & LCD_FS);
send_crlf ();
#endif
#if M6530
start_tx_rslt ("2022-28: ");
start_tx_rslt ("LCD_MAP:");
send_byte_hex (LCD_MAP[ 0 ]);
send_byte_hex (LCD_MAP[ 1 ]);
send_byte_hex (LCD_MAP[ 2 ]);
send_byte_hex (LCD_MAP[ 3 ]);
send_byte_hex (LCD_MAP[ 4 ]);
send_byte_hex (LCD_MAP[ 5 ]);
send_byte_hex (LCD_MAP[ 6 ]);
send_byte_hex (LCD_MAP[ 7 ]);
send_crlf ();
#endif
start_tx_rslt ("2060: ");
start_tx_rslt ("RTM Probes:");
send_byte_hex (RTM[ 0 ]);
send_byte_hex (RTM[ 1 ]);
send_byte_hex (RTM[ 2 ]);
send_hex (RTM[ 3 ]);
send_crlf ();
start_tx_rslt ("22 DIO Pins are configured as:\r\n");
start_tx_rslt ("Polarity:Values 21...0 \r\n");
send_byte_hex (DIR2 & 0x3F);
send_byte_hex (DIR1);
send_hex (DIR0);
start_tx_rslt (":");
send_byte_hex (USER2 & 0x3F);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -