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: mbed MAX14720 MAX30205 USBDevice
MAX30003Info.cs
00001 /******************************************************************************* 00002 * Copyright (C) 2016 Maxim Integrated Products, Inc., All rights Reserved. 00003 * 00004 * This software is protected by copyright laws of the United States and 00005 * of foreign countries. This material may also be protected by patent laws 00006 * and technology transfer regulations of the United States and of foreign 00007 * countries. This software is furnished under a license agreement and/or a 00008 * nondisclosure agreement and may only be used or reproduced in accordance 00009 * with the terms of those agreements. Dissemination of this information to 00010 * any party or parties not specified in the license agreement and/or 00011 * nondisclosure agreement is expressly prohibited. 00012 * 00013 * The above copyright notice and this permission notice shall be included 00014 * in all copies or substantial portions of the Software. 00015 * 00016 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00017 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00018 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 00019 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES 00020 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 00021 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 00022 * OTHER DEALINGS IN THE SOFTWARE. 00023 * 00024 * Except as contained in this notice, the name of Maxim Integrated 00025 * Products, Inc. shall not be used except as stated in the Maxim Integrated 00026 * Products, Inc. Branding Policy. 00027 * 00028 * The mere transfer of this software does not imply any licenses 00029 * of trade secrets, proprietary technology, copyrights, patents, 00030 * trademarks, maskwork rights, or any other form of intellectual 00031 * property whatsoever. Maxim Integrated Products, Inc. retains all 00032 * ownership rights. 00033 ******************************************************************************* 00034 */ 00035 00036 using System; 00037 using System.Collections.Generic; 00038 using System.Linq; 00039 using System.Text; 00040 using HealthSensorPlatform.DeviceDescriptions; 00041 using RPCSupport.DeviceSupport; 00042 00043 namespace Maxim.CustomControls 00044 { 00045 class MAX30003Info : Device 00046 { 00047 00048 public MAX30003Info() 00049 { 00050 deviceDetails = new DeviceDetails(); 00051 deviceDetails.type = DeviceDetails.eType.eMAX30001; 00052 00053 initalizeDescription(); 00054 00055 } 00056 00057 void initalizeDescription() 00058 { 00059 Info = new RegisterInfo[] { 00060 new RegisterInfo("STATUS", 0x01, 3, RegisterInfo.RegisterType.ReadOnly), 00061 new RegisterInfo("EN_INT", 0x02, 3), 00062 new RegisterInfo("EN_INT2", 0x03, 3), 00063 new RegisterInfo("MNGR_INT", 0x04, 3), 00064 new RegisterInfo("MNGR_DYN", 0x05, 3), 00065 new RegisterInfo("SW_RST", 0x08, 3, RegisterInfo.RegisterType.WriteOnly), 00066 new RegisterInfo("SYNCH", 0x09, 3, RegisterInfo.RegisterType.WriteOnly), 00067 new RegisterInfo("FIFO_RST", 0x0A, 3, RegisterInfo.RegisterType.WriteOnly), 00068 new RegisterInfo("INFO", 0x0F, 3, RegisterInfo.RegisterType.ReadOnly), 00069 new RegisterInfo("CNFG_GEN", 0x10, 3), 00070 new RegisterInfo("CNFG_CAL", 0x12, 3), 00071 new RegisterInfo("CNFG_EMUX", 0x14, 3), 00072 new RegisterInfo("CNFG_ECG", 0x15, 3), 00073 //new RegisterInfo("CNFG_BMUX", 0x17, 3), 00074 //new RegisterInfo("CNFG_BIOZ", 0x18, 3), 00075 //new RegisterInfo("CNFG_PACE", 0x1A, 3), 00076 new RegisterInfo("CNFG_RTOR1", 0x1D, 3), 00077 new RegisterInfo("CNFG_RTOR2", 0x1E, 3) 00078 }; 00079 00080 00081 //bit description for STATUS 00082 Descriptions(0x01).Add("Bit [23]", "EINT", "ECG FIFO Interrupt: indicates ECG records meeting/exceeding the ECG FIFO Interrupt Threshold (EFIT) are available for read back. Remains active until ECG FIFO is read back to the extent required to clear the EFIT condition."); 00083 Descriptions(0x01).Add("Bit [22]", "EOVF", "ECG FIFO Overflow: indicates the ECG FIFO has overflowed and the data record has been corrupted. "); 00084 Descriptions(0x01).Add("Bit [21]", "FSTINT", "ECG Fast Recovery Mode: Issued when the ECG Fast Recovery Mode is engaged (either manually or automatically)."); 00085 Descriptions(0x01).Add("Bit [20]", "DCLOFFINT", "DC Lead Off Detection Interrupt: indicates the part has determined it is in an ECG/BIOZ Leads Off condition (as selected in CNFG_GEN) for more than 90ms. Remains active as long as the Leads Off condition persists even after a STATUS register read, then held until cleared by STATUS register read (30th SCLK) if condition has ceased. Note: Exact time depends on BIOZ modulation frequency (the clock used for counting) and can range from 90ms to 140ms."); 00086 /* 00087 Descriptions(0x01).Add("Bit [19]", "BINT", "BIOZ FIFO Interrupt: indicates BIOZ records meeting/exceeding the BIOZ FIFO Interrupt Threshold (BFIT) are available for read back. Remains active until BIOZ FIFO is read back to the extent required to clear the BFIT condition."); 00088 Descriptions(0x01).Add("Bit [18]", "BOVF", "BIOZ FIFO Overflow: indicates the BIOZ FIFO has overflowed and the data record has been corrupted. "); 00089 Descriptions(0x01).Add("Bit [17]", "BOVER", "BIOZ Over Range: indicates the BIOZ output magnitude has exceeded the BIOZ High Threshold (BLOFF_HI_IT) for at least 100ms, recommended for use in 2 and 4 electrode BIOZ Lead Off detection."); 00090 Descriptions(0x01).Add("Bit [16]", "BUNDR", "BIOZ Under Range: indicates the BIOZ output magnitude has been bounded by the BIOZ Low Threshold (BLOFF_LO_IT) for at least 1.7 seconds, recommended for use in 4 electrode BIOZ Lead Off detection."); 00091 Descriptions(0x01).Add("Bit [15]", "BCGMON", "BIOZ Current Generator Monitor: indicates the DRVP and/or DRVN current generator has been in a Lead Off condition for at least 128ms, recommended for use in 4 electrode BIOZ Lead Off detection."); 00092 Descriptions(0x01).Add("Bit [14]", "PINT", "PACE FIFO Interrupt: indicates PACE records are available for read back (should be used in conjunction with EINT). "); 00093 Descriptions(0x01).Add("Bit [13]", "POVF", "PACE FIFO Overflow: indicates the PACE FIFO has overflowed and the data record has been corrupted. "); 00094 Descriptions(0x01).Add("Bit [12]", "PEDGE", "PACE Edge Detection Interrupt: real time PACE edge indicator showing when the MAX30001 has determined a PACE edge occurred (note this is different than the PINT interrupt, which indicates when the detected edges are logged into the PACE FIFO). Clear behavior is defined by CLR_PEDGE[1:0], see MNGR_INT for details."); 00095 */ 00096 Descriptions(0x01).Add("Bit [11]", "LONINT", "Ultra Low Power Lead On Detection Interrupt: indicates the part has determined it is in a Leads On condition (as selected in CNFG_GEN). Remains active while the Leads On condition persists, then held until cleared by STATUS read back (32nd SCLK)."); 00097 Descriptions(0x01).Add("Bit [10]", "RRINT", "ECG R to R Detector R Event Interrupt: Issued when the R to R detector has identified a new R event."); 00098 Descriptions(0x01).Add("Bit [9]", "SAMP", "Sample Synchronization Pulse: issued on the ECG/BIOZ base-rate sampling instant, for use in assisting µC monitoring and synchronizing other peripheral operations and data, generally recommended for use as a dedicated interrupt. ECG is the default, BIOZ is used only when ECG is not in use. Frequency is selected by SAMP_IT[1:0], see MNGR_INT for details. Clear behavior is defined by CLR_SAMP, see MNGR_INT for details."); 00099 Descriptions(0x01).Add("Bit [8]", "PLLINT", "PLL Unlocked Interrupt: indicates the PLL has not yet achieved or has lost its phase lock. PLLINT will only be asserted when the PLL is powered up and active (ECG and/or BIOZ Channel enabled). Remains asserted while the PLL unlocked condition persists, then held until cleared by STATUS read back (32nd SCLK). Note: Writes to CNFG_GEN which either enable the PLL or alter the FMSTR setting will result in an issuance of PLLINT while the PLL re-achieves lock – users should allow this behavior to settle out before considering the data valid."); 00100 /* 00101 Descriptions(0x01).Add("Bit [5]", "BCGMP", "BIOZ Current Generator Monitor individual outputs: indicates the DRVP or DRVN current generator has been in a Lead Off condition for at least 128ms. These are not strictly interrupt terms, but are detailed status bits, covered by the BCGMON interrupt term."); 00102 Descriptions(0x01).Add("Bit [4]", "BCGMN", "BIOZ Current Generator Monitor individual outputs: indicates the DRVP or DRVN current generator has been in a Lead Off condition for at least 128ms. These are not strictly interrupt terms, but are detailed status bits, covered by the BCGMON interrupt term."); 00103 */ 00104 Descriptions(0x01).Add("Bit [3]", "LDOFF_PH", "DC Lead Off Detection Detailed Status: indicates the part has determined (as selected by CNFG_GEN): "); 00105 Descriptions(0x01).Add("Bit [2]", "LDOFF_PL", "ECGP/BIP is above the high threshold (VTHH), ECGP/BIP is below the low threshold (VTHL),"); 00106 Descriptions(0x01).Add("Bit [1]", "LDOFF_NH", "ECGN/BIN is above the high threshold (VTHH), ECGN/BIN is below the low threshold (VTHL), respectively."); 00107 Descriptions(0x01).Add("Bit [0]", "LDOFF_NL", "Remain active as long as the Lead Off Detection is active and the Leads Off condition persists, then held until cleared by STATUS read back (32nd SCLK). These are not strictly interrupt terms, but are detailed status bits, covered by the DCLOFFINT bit."); 00108 00109 //bit description for EN_INT 00110 Descriptions(0x02).Add("Bit [23]", "EN_EINT", @"Interrupt enable for INTB pin. 00111 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00112 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00113 Descriptions(0x02).Add("Bit [22]", "EN_EOVF", @"Interrupt enable for INTB pin. 00114 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00115 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00116 Descriptions(0x02).Add("Bit [21]", "EN_FSTINT", @"Interrupt enable for INTB pin. 00117 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00118 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00119 Descriptions(0x02).Add("Bit [20]", "EN_DCLOFFINT", @"Interrupt enable for INTB pin. 00120 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00121 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00122 /* 00123 Descriptions(0x02).Add("Bit [19]", "EN_BINT", @"Interrupt enable for INTB pin. 00124 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00125 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00126 Descriptions(0x02).Add("Bit [18]", "EN_BOVF", @"Interrupt enable for INTB pin. 00127 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00128 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00129 Descriptions(0x02).Add("Bit [17]", "EN_BOVER", @"Interrupt enable for INTB pin. 00130 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00131 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00132 Descriptions(0x02).Add("Bit [16]", "EN_BUNDR", @"Interrupt enable for INTB pin. 00133 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00134 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00135 Descriptions(0x02).Add("Bit [15]", "EN_BCGMON", @"Interrupt enable for INTB pin. 00136 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00137 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00138 Descriptions(0x02).Add("Bit [14]", "EN_PINT", @"Interrupt enable for INTB pin. 00139 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00140 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00141 Descriptions(0x02).Add("Bit [13]", "EN_POVF", @"Interrupt enable for INTB pin. 00142 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00143 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00144 Descriptions(0x02).Add("Bit [12]", "EN_PEDGE", @"Interrupt enable for INTB pin. 00145 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00146 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00147 */ 00148 Descriptions(0x02).Add("Bit [11]", "EN_LONINT", @"Interrupt enable for INTB pin. 00149 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00150 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00151 Descriptions(0x02).Add("Bit [10]", "EN_RRINT", @"Interrupt enable for INTB pin. 00152 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00153 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00154 Descriptions(0x02).Add("Bit [9]", "EN_SAMP", @"Interrupt enable for INTB pin. 00155 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00156 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00157 Descriptions(0x02).Add("Bit [8]", "EN_PLLINT", @"Interrupt enable for INTB pin. 00158 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00159 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00160 Descriptions(0x02).Add("Bit [1:0]", "INTB_TYPE[1:0]", "INTB Port Type (EN_INT Selections)"); 00161 00162 //bit description for EN_INT2 00163 Descriptions(0x03).Add("Bit [23]", "EN_EINT2", @"Interrupt enable for INT2B pin. 00164 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00165 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00166 Descriptions(0x03).Add("Bit [22]", "EN_EOVF2", @"Interrupt enable for INT2B pin. 00167 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00168 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00169 Descriptions(0x03).Add("Bit [21]", "EN_FSTINT2", @"Interrupt enable for INT2B pin. 00170 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00171 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00172 Descriptions(0x03).Add("Bit [20]", "EN_DCLOFFINT2", @"Interrupt enable for INT2B pin. 00173 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00174 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00175 /* 00176 Descriptions(0x03).Add("Bit [19]", "EN_BINT2", @"Interrupt enable for INT2B pin. 00177 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00178 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00179 Descriptions(0x03).Add("Bit [18]", "EN_BOVF2", @"Interrupt enable for INT2B pin. 00180 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00181 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00182 Descriptions(0x03).Add("Bit [17]", "EN_BOVER2", @"Interrupt enable for INT2B pin. 00183 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00184 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00185 Descriptions(0x03).Add("Bit [16]", "EN_BUNDR2", @"Interrupt enable for INT2B pin. 00186 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00187 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00188 Descriptions(0x03).Add("Bit [15]", "EN_BCGMON2", @"Interrupt enable for INT2B pin. 00189 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00190 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00191 Descriptions(0x03).Add("Bit [14]", "EN_PINT2", @"Interrupt enable for INT2B pin. 00192 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00193 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00194 Descriptions(0x03).Add("Bit [13]", "EN_POVF2", @"Interrupt enable for INT2B pin. 00195 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00196 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00197 Descriptions(0x03).Add("Bit [12]", "EN_PEDGE2", @"Interrupt enable for INT2B pin. 00198 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00199 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00200 */ 00201 Descriptions(0x03).Add("Bit [11]", "EN_LONINT2", @"Interrupt enable for INT2B pin. 00202 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00203 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00204 Descriptions(0x03).Add("Bit [10]", "EN_RRINT2", @"Interrupt enable for INT2B pin. 00205 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00206 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00207 Descriptions(0x03).Add("Bit [9]", "EN_SAMP2", @"Interrupt enable for INT2B pin. 00208 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00209 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00210 Descriptions(0x03).Add("Bit [8]", "EN_PLLINT2", @"Interrupt enable for INT2B pin. 00211 0 = Individual Interrupt bit is not included in (or masked from) the Interrupt logical OR Term 00212 1 = Individual Interrupt bit is included in (or unmasked from) the Interrupt logical OR Term"); 00213 Descriptions(0x03).Add("Bit [1:0]", "INTB2_TYPE[1:0]", "INT2B Port Type (EN_INT Selections)"); 00214 00215 //bit description for MNGR_INT 00216 Descriptions(0x04).Add("Bit [23:19]", "EFIT[4:0]", "ECG FIFO Interrupt Threshold (issues EINT based on number of unread FIFO records)"); 00217 //Descriptions(0x04).Add("Bit [18:16]", "BFIT[2:0]", "BIOZ FIFO Interrupt Threshold (issues BINT based on number of unread FIFO records)"); 00218 Descriptions(0x04).Add("Bit [6]", "CLR_FAST", "FAST MODE Interrupt Clear Behavior "); 00219 Descriptions(0x04).Add("Bit [5:4]", "CLR_RRINT[1:0]", "RTOR R Detect Interrupt (RRINT) Clear Behavior "); 00220 //Descriptions(0x04).Add("Bit [3]", "CLR_PEDGE", "PACE Edge Detect Interrupt (PEDGE) Clear Behavior "); 00221 Descriptions(0x04).Add("Bit [2]", "CLR_SAMP", "Sample Synchronization Pulse (SAMP) Clear Behavior "); 00222 Descriptions(0x04).Add("Bit [1:0]", "SAMP_IT[1:0]", "Sample Synchronization Pulse (SAMP) Frequency "); 00223 00224 //bit description for MNGR_DYN 00225 Descriptions(0x05).Add("Bit [23:22]", "FAST[1:0]", "ECG Channel Fast Recovery Mode Selection (aka ECG High Pass Filter Bypass)"); 00226 Descriptions(0x05).Add("Bit [21:16]", "FAST_TH[5:0]", "Automatic Fast Recovery Threshold "); 00227 //Descriptions(0x05).Add("Bit [15:8]", "BLOFF_HI_IT[7:0]", "BIOZ AC Lead Off Over-Range Threshold "); 00228 //Descriptions(0x05).Add("Bit [7:0]", "BLOFF_LO_IT[7:0]", "BIOZ AC Lead Off Under-Range Threshold "); 00229 00230 //bit description for SW_RST 00231 Descriptions(0x08).Add("Bit [23:0]", "RESET", "Data Required for Execution = 00_00_00"); 00232 00233 //bit description for SYNCH 00234 Descriptions(0x09).Add("Bit [23:0]", "SYNCH", "Data Required for Execution = 00_00_00"); 00235 00236 //bit description for FIFO_RST 00237 Descriptions(0x0A).Add("Bit [23:0]", "FIFO_RST", "Data Required for Execution = 00_00_00"); 00238 00239 //bit description for INFO 00240 Descriptions(0x0F).Add("Bit [19:16]", "REV_ID[3:0]", "Revision ID"); 00241 //Descriptions(0x0F).Add("Bit [14]", "SAMPLE", "Sample - Experimental Functionality Enable\n0 - Production functionality only\n1 - Experimental functionality"); 00242 //Descriptions(0x0F).Add("Bit [13:12]", "PART_ID[1:0]", "Part ID\n00 - MAX30004\n01 - MAX30001\n10 - MAX30002\n11 - MAX30003"); 00243 //Descriptions(0x0F).Add("Bit [11:0]", "SERIAL[11:0]", "Serial Number"); 00244 00245 //bit description for CNFG_GEN 00246 Descriptions(0x10).Add("Bit [23:22]", "EN_ULP_LON[1:0]", "Ultra Low Power Lead On Detection Enable"); 00247 Descriptions(0x10).Add("Bit [21:20]", "FMSTR[1:0]", "Master Clock Frequency"); 00248 Descriptions(0x10).Add("Bit [19]", "EN_ECG", "ECG Channel Enable"); 00249 //Descriptions(0x10).Add("Bit [18]", "EN_BIOZ", "BIOZ Channel Enable"); 00250 //Descriptions(0x10).Add("Bit [17]", "EN_PACE", "PACE Channel Enable"); 00251 //Descriptions(0x10).Add("Bit [15:14]", "EN_BLOFF[1:0]", "BIOZ Digital Lead Off Detection Enable "); 00252 Descriptions(0x10).Add("Bit [13:12]", "EN_DCLOFF", "DC Lead Off Detection Enable"); 00253 Descriptions(0x10).Add("Bit [11]", "DCLOFF_IPOL", "DC Lead Off Current Polarity (if current sources are enabled/connected)"); 00254 Descriptions(0x10).Add("Bit [10:8]", "DCLOFF_IMAG[2:0]", "DC Lead Off Current Magnitude Selection"); 00255 Descriptions(0x10).Add("Bit [7:6]", "DCLOFF_VTH[1:0]", "DC Lead Off Voltage Threshold Selection "); 00256 Descriptions(0x10).Add("Bit [5:4]", "EN_RBIAS[1:0]", "Enable and Select Resistive Lead Bias Mode "); 00257 Descriptions(0x10).Add("Bit [3:2]", "RBIASV[1:0]", "Resistive Bias Mode Value Selection "); 00258 Descriptions(0x10).Add("Bit [1]", "RBIASP", "Enables Resistive Bias on Positive Input"); 00259 Descriptions(0x10).Add("Bit [0]", "RBIASN", "Enables Resistive Bias on Negative Input"); 00260 00261 //bit description for CNFG_CAL 00262 Descriptions(0x12).Add("Bit [22]", "CAL_EN_VCAL", "Calibration Source (VCALP and VCALN) Enable "); 00263 Descriptions(0x12).Add("Bit [21]", "CAL_VMODE", "Calibration Source Mode Selection "); 00264 Descriptions(0x12).Add("Bit [20]", "CAL_VMAG", "Calibration Source Magnitude Selection (VMAG)"); 00265 Descriptions(0x12).Add("Bit [14:12]", "CAL_FCAL[2:0]", "Calibration Source Frequency Selection (FCAL)"); 00266 Descriptions(0x12).Add("Bit [11]", "CAL_FIFTY", "Calibration Source Duty Cycle Mode Selection"); 00267 Descriptions(0x12).Add("Bit [10:0]", "CAL_THIGH[10:0]", "Calibration Source Time High Selection "); 00268 00269 //bit description for CNFG_EMUX 00270 Descriptions(0x14).Add("Bit [23]", "EMUX_POL", "ECG Input Polarity Selection"); 00271 Descriptions(0x14).Add("Bit [21]", "EMUX_OPENP", "Open the ECGP Input Switch (most often used for testing and calibration studies)"); 00272 Descriptions(0x14).Add("Bit [20]", "EMUX_OPENN", "Open the ECGN Input Switch (most often used for testing and calibration studies)"); 00273 Descriptions(0x14).Add("Bit [19:18]", "EMUX_CALP_SEL[1:0]", "ECGP Calibration Selection"); 00274 Descriptions(0x14).Add("Bit [17:16]", "EMUX_CALN_SEL[1:0]", "ECGN Calibration Selection"); 00275 00276 //bit description for CNFG_ECG 00277 Descriptions(0x15).Add("Bit [23:22]", "ECG_RATE[1:0]", "ECG Data Rate (also dependent on FMSTR selection, see CNFG_GEN and table below):"); 00278 Descriptions(0x15).Add("Bit [17:16]", "ECG_GAIN[1:0]", "ECG Channel Gain Setting "); 00279 Descriptions(0x15).Add("Bit [14]", "ECG_DHPF", "ECG Channel Digital High Pass Filter Cutoff Frequency"); 00280 Descriptions(0x15).Add("Bit [13:12]", "ECG_DLPF[1:0]", "ECG Channel Digital Low Pass Filter Cutoff Frequency"); 00281 00282 /* 00283 //bit description for CNFG_BMUX 00284 Descriptions(0x17).Add("Bit [21]", "BMUX_OPENP", "Open the BIP Input Switch (most often used for testing and calibration studies)"); 00285 Descriptions(0x17).Add("Bit [20]", "BMUX_OPENN", "Open the BIN Input Switch (most often used for testing and calibration studies)"); 00286 Descriptions(0x17).Add("Bit [19:18]", "BMUX_CALP_SEL[1:0]", "BIP Calibration Selection (VCAL application to BIP/N inputs intended for use in PACE testing only.)"); 00287 Descriptions(0x17).Add("Bit [17:16]", "BMUX_CALN_SEL[1:0]", "BIN Calibration Selection (VCAL application to BIP/N inputs intended for use in PACE testing only.)"); 00288 Descriptions(0x17).Add("Bit [13:12]", "BMUX_CG_MODE[1:0]", "BIOZ Current Generator Mode Selection"); 00289 Descriptions(0x17).Add("Bit [11]", "BMUX_EN_BIST", "BIOZ Modulated Resistance Built-In-Self-Test (RMOD BIST) Mode Enable"); 00290 Descriptions(0x17).Add("Bit [10:8]", "BMUX_RNOM[2:0]", "BIOZ RMOD BIST Nominal Resistance Selection"); 00291 Descriptions(0x17).Add("Bit [6:4]", "BMUX_RMOD[2:0]", "BIOZ RMOD BIST Modulated Resistance Selection (See RMOD BIST Settings Table for details.)"); 00292 Descriptions(0x17).Add("Bit [1:0]", "BMUX_FBIST[1:0]", "BIOZ RMOD BIST Frequency Selection"); 00293 00294 //bit description for CNFG_BIOZ 00295 Descriptions(0x18).Add("Bit [23]", "BIOZ_RATE", "BIOZ Data Rate (also dependent on FMSTR selection, see CNFG_GEN):"); 00296 Descriptions(0x18).Add("Bit [22:20]", "BIOZ_AHPF[2:0]", "BIOZ/PACE Channel Analog High Pass Filter Cutoff Frequency and Bypass"); 00297 Descriptions(0x18).Add("Bit [19]", "EXT_RBIAS", "External Resistor Bias Enable"); 00298 Descriptions(0x18).Add("Bit [17:16]", "BIOZ_GAIN[1:0]", "BIOZ Channel Gain Setting "); 00299 Descriptions(0x18).Add("Bit [15:14]", "BIOZ_DHPF[1:0]", "BIOZ Channel Digital High Pass Filter Cutoff Frequency"); 00300 Descriptions(0x18).Add("Bit [13:12]", "BIOZ_DLPF[1:0]", "BIOZ Channel Digital Low Pass Filter Cutoff Frequency"); 00301 Descriptions(0x18).Add("Bit [11:8]", "BIOZ_FCGEN[3:0]", "BIOZ Current Generator Modulation Frequency"); 00302 Descriptions(0x18).Add("Bit [7]", "BIOZ_CGMON", "BIOZ Current Generator Monitor"); 00303 Descriptions(0x18).Add("Bit [6:4]", "BIOZ_CGMAG[2:0]", "BIOZ Current Generator Magnitude"); 00304 Descriptions(0x18).Add("Bit [3:0]", "BIOZ_PHOFF[3:0]", "BIOZ Current Generator Modulation Phase Offset "); 00305 00306 //bit description for CNFG_PACE 00307 Descriptions(0x1A).Add("Bit [23]", "PACE_POL", "PACE Input Polarity Selection"); 00308 Descriptions(0x1A).Add("Bit [19]", "PACE_GN_DIFF_OFF", "PACE Differentiator (Derivative) Mode"); 00309 Descriptions(0x1A).Add("Bit [18:16]", "PACE_GAIN[2:0]", "PACE Channel Gain Selection"); 00310 Descriptions(0x1A).Add("Bit [14]", "PACE_AOUT_LBW", "PACE Analog Output Buffer Bandwidth Mode "); 00311 Descriptions(0x1A).Add("Bit [13:12]", "PACE_AOUT[1:0]", "PACE Single Ended Analog Output Buffer Signal Monitoring Selection"); 00312 Descriptions(0x1A).Add("Bit [7:4]", "PACE_DACP[3:0]", "PACE Detector Positive Comparator Threshold"); 00313 Descriptions(0x1A).Add("Bit [3:0]", "PACE_DACN[3:0]", "PACE Detector Negative Comparator Threshold"); 00314 */ 00315 00316 //bit description for CNFG_RTOR1 00317 Descriptions(0x1D).Add("Bit [23:20]", "RTOR_WNDW[3:0]", "R to R Window Averaging (Window Width = RTOR_WNDW[3:0]*8ms)"); 00318 Descriptions(0x1D).Add("Bit [19:16]", "RTOR_GAIN[3:0]", "R to R Gain (where Gain = 2^RTOR_GAIN[3:0], plus an auto-scale option)"); 00319 Descriptions(0x1D).Add("Bit [15]", "EN_RTOR", "ECG RTOR Detection Enable "); 00320 Descriptions(0x1D).Add("Bit [13:12]", "RTOR_PAVG[1:0]", "R to R Peak Averaging Weight Factor"); 00321 Descriptions(0x1D).Add("Bit [11:8]", "RTOR_PTSF[3:0]", "R to R Peak Threshold Scaling Factor"); 00322 00323 //bit description for CNFG_RTOR2 00324 Descriptions(0x1E).Add("Bit [21:16]", "RTOR_HOFF[5:0]", "R to R Minimum Hold Off "); 00325 Descriptions(0x1E).Add("Bit [13:12]", "RTOR_RAVG[1:0]", "R to R Interval Averaging Weight Factor"); 00326 Descriptions(0x1E).Add("Bit [10:8]", "RTOR_RHSF[2:0]", "R to R Interval Hold Off Scaling Factor"); 00327 00328 } 00329 } 00330 }
Generated on Thu Jul 28 2022 18:07:15 by
 1.7.2