Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
reference:add-ons:dmm-shield:reference-manual [2018/06/07 11:37]
Bianca Peterlin [Accuracy]
reference:add-ons:dmm-shield:reference-manual [2018/07/02 16:18] (current)
Arthur Brown
Line 1: Line 1:
 ====== DMM Shield Reference Manual ====== ====== DMM Shield Reference Manual ======
  
-The DMM Shield is a 5 1/2 Digit digital multimeter, designed for use with Digilent ​line of chipKIT ​microcontroller boards ​such as Uno32™, uC32™, WF32™, or Max32™ ​and FPGA boards that are equipped with the Arduino ​Shield such as Arty A7, Arty Z7-10, Arty Z7-20 or Arty S7, see [[#​compatible_boards|Compatible Boards]] +The DMM Shield is a 5 1/2 Digit digital multimeter, designed for use with Digilent microcontroller boards and FPGA boards that are equipped with the Arduino ​shield header, see [[#​compatible_boards|Compatible Boards]]The shield is built around the [[http://​www.hycontek.com/​wp-content/​uploads/​DS-HY3131_EN.pdf|HY3131]] module from Hycon Technology, ​which is an analog front end DMM dedicated chip.  
-The shield is built around the HY3131 module from Hycon Technology, ​[http://​www.hycontek.com/​wp-content/​uploads/​DS-HY3131_EN.pdf] which is an analog front end DMM dedicated chip. The device has 7 measurements functions and is factory calibrated. It can be used out of the box with the compatible system boards ​line.+The device has 7 measurements functions ​(AC/DC Voltage, AC/DC Current, Resistance, Diode, Continuity) ​and is factory calibrated. It can be used out of the box with the compatible system boards.
  
 It is accessed through a custom SPI interface, using digital IO pins exposed in the DMM Shield connector. ​ It is accessed through a custom SPI interface, using digital IO pins exposed in the DMM Shield connector. ​
Line 14: Line 14:
 }}  }} 
  
- 
-== Download This Reference Manual ==  
-  * {{ :​reference:​add-ons:​pmod-hat:​171205ag_dual_brand_pmod-hat-adapter_rm.pdf |PDF}} 
  
 ---- ----
Line 24: Line 21:
  
 ===== Features ===== ===== Features =====
-  * Full compatibility with all the line of Digilent System Boards featuring the Arduino Shield+  * Full compatibility with Digilent System Boards featuring the Arduino Shield
   * Provides 4 banana connectors for measurements(Volts/​Ω,​ COM, mAmps, Amps).   * Provides 4 banana connectors for measurements(Volts/​Ω,​ COM, mAmps, Amps).
   * Floating COM   * Floating COM
Line 30: Line 27:
   * Diode, continuity measurement/​function   * Diode, continuity measurement/​function
   * Resistance measurement   * Resistance measurement
-  * Supports SPI connection.+  * Supports SPI connection
  
 ==== HY3131 Features in Brief ==== ==== HY3131 Features in Brief ====
Line 40: Line 37:
   * Peak-Hold measurement circuit - to achieve higher accuracy   * Peak-Hold measurement circuit - to achieve higher accuracy
   * Low-Pass filter - implements a third order LPF   * Low-Pass filter - implements a third order LPF
-  * Supports SPI interface connection.+  * Supports SPI interface connection
  
  
 ==== Compatible Boards ==== ==== Compatible Boards ====
  
-The DMM Shield is compatible with all Digilent boards that use the Arduino Shield connector:​ +The DMM Shield is hardware ​compatible with all Digilent boards that use the Arduino Shield connector, however, the libraries and out of box experience are written for the following boards:  
- +  * [[https://​store.digilentinc.com/​arty-z7-apsoc-zynq-7000-development-board-for-makers-and-hobbyists/​|Arty-Z7]] 
 +  * [[https://​store.digilentinc.com/​uc32-arduino-programmable-pic32-microcontroller-board/​|uC32™]]  
 +  * [[https://​store.digilentinc.com/​wf32-wifi-enabled-pic32-microcontroller-board-with-uno-r3-headers/​|WF32™]] ​  
 +  * [[https://​store.digilentinc.com/​max32-arduino-programmable-pic32-microcontroller-board/​|Max32™]]  
 +  * [[https://​reference.digilentinc.com/​reference/​microprocessor/​uno32/​start?​redirect=1|Uno32™]] 
 +   
 +//Note: The pic32 library is written to target the **uC32** micro-controller board. For all the other boards from the series, the pin-out might suffer modifications.//​
 ---- ----
  
Line 76: Line 78:
 ====== Power ====== ====== Power ======
  
-DMM Shield is powered by the system board. It uses both 5V0 and 3V3 power supplies.The average consumption of the DMM Shield is 90mA  +DMM Shield is powered by the system board. It uses both 5V0 and 3V3 power supplies. The average consumption of the DMM Shield is 90mA 
-The DMM shield ​feature ​on-board power supplies that are used to power the DMM core of the board. The 5V power supply is isolated in order to provide an isolated reference signal for measurements. There can be found more than one reference signals on the DMM Shield board: +The DMM shield ​features ​on-board power supplies that are used to power the DMM core of the board. The 5V power supply is isolated in order to provide an isolated reference signal for measurements. There are more than one reference signals on the DMM Shield board: 
-  *GND - Ground for the non-isolated section. References all the signals and voltage rails in the non-isolated section such as 5V0 and 3V3 voltages from the system board,relay driver,​flash memory+  *GND - Ground for the non-isolated section. References all the signals and voltage rails in the non-isolated section such as 5V0 and 3V3 voltages from the system board, relay driver, flash memory
   *VSS_ISO - Most negative voltage in the isolated section. It is the reference for isolated power supplies VCC5V0_ISO and VCC3V3_ISO as well for all the digital signals in the isolated section ​     *VSS_ISO - Most negative voltage in the isolated section. It is the reference for isolated power supplies VCC5V0_ISO and VCC3V3_ISO as well for all the digital signals in the isolated section ​  
   *COM_ISO - Reference for the DMM measurement. All the measurements done with the DMM Shield will be referenced to COM_ISO signal, through COM connector, J2. The reference is leveled at 1.8V above VSS_ISO   *COM_ISO - Reference for the DMM measurement. All the measurements done with the DMM Shield will be referenced to COM_ISO signal, through COM connector, J2. The reference is leveled at 1.8V above VSS_ISO
Line 91: Line 93:
 ==== Connectors and Jumpers ==== ==== Connectors and Jumpers ====
  
-DMM Shield is equipped with the Arduino ​Shield connector ​that interfaces it with the system board for powering and communicationBeside the shield, there are also 4 banana connectors that interface the DMM with the sources and devices that need to be measured.+The DMM Shield is equipped with the Arduino ​shield header ​that provides powering and communication between ​the DMM Sheild and system board. ​There are also 4 banana connectors that interface the DMM with the sources and devices that need to be measured.
  
 **Banana Connectors (J1-J4) ** **Banana Connectors (J1-J4) **
-  ***J1 (V/Ω)**- is used for measuring the AC/DC voltages, Resistances,​ Diode and Continuity. +  ***J1 (V/Ω)** - is used for measuring the AC/DC voltages, Resistances,​ Diode and Continuity. 
-  ***J2 (COM)**- is the reference for all the measurements that can be done with the DMM Shield. COM signal is floating from all the other reference points from the board.  +  ***J2 (COM)** - is the reference for all the measurements that can be done with the DMM Shield. COM signal is floating from all the other reference points from the board.  
-  ***J3 (500mA)**- is used for measuring AC/DC currents up to 500mA. ​+  ***J3 (500mA)** - is used for measuring AC/DC currents up to 500mA. ​
   ***J4 (5A)** - is used for measuring AC/DC currents up to 5A.   ***J4 (5A)** - is used for measuring AC/DC currents up to 5A.
  
 **Arduino Shield Connector (J5-J9): ** **Arduino Shield Connector (J5-J9): **
-  ***J5 - 1x2 Header** -Digital pins   +  ***J5 - 1x2 Header** - Digital pins   
-  ***J6 - 2x6 Header** - Analog pins +  ***J6 - 2x6 Header** - Analog pins  
-  ***J7, J8 - 2x8 Headers** - Digital pins +  ***J7, J8 - 2x8 Headers** - Digital pins 
-  ***J9 - 1x8 Header** - Power pins+  ***J9 - 1x8 Header** - Power pins
   *For detailed usage of each pin please see the Pinout Table Appendix ​ [[#​pmod_pinout_table|Pinout Table Appendix]].   *For detailed usage of each pin please see the Pinout Table Appendix ​ [[#​pmod_pinout_table|Pinout Table Appendix]].
  
 **Jumpers: ** **Jumpers: **
-  ***JP1**- Frequency Measurement - **Not Implemented** ​+  ***JP1** - Frequency Measurement - **Not Implemented** ​
  
-==== Digital Pins used for communication ​==== +==== Digital Pins Used for Communication ​==== 
-**SPI Pins ** +**SPI Pins** 
-The DMMShield ​supports SPI communication with both the DMM chip and the EEPROM chip. The hardware interface lines DataIn, DataOut and Clock are shared between the two devices, and the Chip Select lines are separate, allowing the user to access either of them with less hardware resources used. The DMM chip is electrically separated from the rest of the circuitry, therefore the communication lines need to be isolated as well. + 
 +The DMM Shield ​supports SPI communication with both the DMM chip and the EEPROM chip. The hardware interface lines DataIn ​(DI), DataOut ​(DO) and Clock (CK) are shared between the two devices, and the Chip Select ​(CS) lines are separate, allowing the user to access either of them with fewer hardware resources used.\\  
 +The DMM chip is electrically separated from the rest of the circuitry, therefore the communication lines need to be isolated as well. 
 The EEPROM CS line is active high, while the DMM CS line is active low. The EEPROM CS line is active high, while the DMM CS line is active low.
 The reading sequence for SPI DMM communication is the one below: The reading sequence for SPI DMM communication is the one below:
Line 117: Line 121:
 The writing sequence for SPI DMM communication is the one below: The writing sequence for SPI DMM communication is the one below:
 {{ :​reference:​add-ons:​dmm-shield:​write.png?​800 |}} {{ :​reference:​add-ons:​dmm-shield:​write.png?​800 |}}
-The interrupt request sequence for SPI DMM communication is the one below: 
-{{ :​reference:​add-ons:​dmm-shield:​irq.png?​800 |}} 
 The timing for SPI DMM communication is the one below: The timing for SPI DMM communication is the one below:
 {{ :​reference:​add-ons:​dmm-shield:​timing.png?​600 |}} {{ :​reference:​add-ons:​dmm-shield:​timing.png?​600 |}}
  
-**GPIO Pins ** +**GPIO Pins**
-There are three GPIO pins used for Relays control: RLU, RLD, RLI. Depending on the type of measurement performed, the corresponding relay/s need to be triggered/​commanded using a GPIO pin.+
  
-==== EEPROM memory ==== +There are three GPIO pins used for Relay controlRLU, RLD, RLIDepending on the type of measurement performed, the corresponding relay/s need to be triggered/commanded using a GPIO pin
-The DMMShield is equipped with a non-volatile EEPROM memory chipMicrochip 93LC66BT(see [[http://​ww1.microchip.com/downloads/en/​DeviceDoc/​21795E.pdf]]),​ having 512 bytes/256 words (4kbits) available space+The relays RLIRLU, and RLD are controlled by three digital ​signalsIO2, IO3, and IO4, from the shield connector 
-The memory can be accessed over a custom SPI protocolusing digital ​IO pins exposed in the DMMShield connector: CS_EEPROM (EEPROM SPI chip select)DO (SPI MISO)DI (SPI MOSI) and CLK (SPI CLK).+
  
-While the chip select line is specific to EEPROM module, the SPI lines (data and clock) are shared with the DMM device. 
- 
-Note the data is written and read from memory using word format addressing, instead of byte: bytes 0-1 are written at address 0x00, bytes 2-3 are written at address 0x01, etc. 
- 
-The EEPROM is used to store the following system information: ​ 
-^ Section Content ^ Addresses (words) ​ ^ Size ^ 
-| Factory calibration data | 0x93 – 0xFF | 109 words / 218 bytes| 
-| Serial Number | 0x8C – 0x92 | 7 words / 14 bytes | 
-| User calibration data | 0x1F – 0x8B | 109 words / 218 bytes | 
-| Free Memory | 0x00 – 0x1E | 31 words / 62 bytes | 
- 
-Please consult the DMM Shield Library User Guide for more information about the EEPROM module usage and communication. 
-For more details about Calibration process, read more on [[#​calibration_procedure|Calibration Procedure]] below. 
- 
- 
-==== Measurement Scales ==== 
- 
-DMM Shield comes with preset scales of measurement. They will indicate the maximum value that can be accurately measured with the device. While the range of each one is from 0 to full scale, keep in mind that at low values the resolution is lower and different scales might give a more accurate result since is calibrated closer that value Ex: for a 40kΩ resistor is better to use the 50kΩ scale instead of the 500kΩ for a better resolution. There are 4 scales for voltages, 5 for current and 7 for resistances. ​ 
- 
-^  Scales ​              ​^ ​   -   ​^ ​   -   ​^ ​   -  ^   ​- ​   ^    -   ​^ ​ -   ​^ ​ -    ^    -    ^ 
-|  AC Voltage ​          ​| ​ 50m   ​| ​ 500m  |  5    |  30    |   ​- ​   |   ​- ​ |   ​- ​  ​| ​ V      | 
-|  DC Voltage ​          ​| ​ 50m   ​| ​ 500m  |  5    |  50    |   ​- ​   |   ​- ​ |   ​- ​  ​| ​ V      | 
-|  AC/DC Current ​       |  500u  |  5m    |  50m  |  500m  |  5     ​| ​  ​- ​ |   ​- ​  ​| ​ A      | 
-|  Resistances ​         |  50    |  500   ​| ​ 5k  |   ​50k ​  ​| ​ 500k  |  5M  |  50M  |  Ω      | 
- 
-The device comes factory calibrated for each scale. For more details about calibration please see the [[#​calibration_procedure|Calibration procedure]] below. 
- 
-Setting each scale assumes the configuration of some registers and three relays.The relays RLI, RLU and RLD are controlled by IO2, IO3 and IO4 from the shield connector.  ​ 
 ^  Scales ​       ^   ​RLI ​  ​^ ​  ​RLU ​  ​^ ​ RLD  ^ ^  Scales ​       ^   ​RLI ​  ​^ ​  ​RLU ​  ​^ ​ RLD  ^
 |  50MΩ          |    0    |    0    |   ​1 ​  | |  50MΩ          |    0    |    0    |   ​1 ​  |
Line 186: Line 158:
 |  Diode         ​| ​   0    |    0    |   ​1 ​  | |  Diode         ​| ​   0    |    0    |   ​1 ​  |
  
-The HY3131 chip provides 23 registers ​to be able to configure the scales.+In addition to configuring the GPIO pins, setting each scale assumes the configuration of some registers. ​The HY3131 chip provides 23 configurable ​registers. ​
  
 ^  Scales ​       ^ INTE ^ R20 ^ R21 ^ R22 ^ R23 ^ R24 ^ R25 ^ R26 ^ R27 ^ R28 ^ R29 ^ R2A ^ R2B ^ R2C ^ R2D ^ R2E ^ R2F ^ R30 ^ R31 ^ R32 ^ R33 ^ R34 ^ R35 ^ R36 ^ ^  Scales ​       ^ INTE ^ R20 ^ R21 ^ R22 ^ R23 ^ R24 ^ R25 ^ R26 ^ R27 ^ R28 ^ R29 ^ R2A ^ R2B ^ R2C ^ R2D ^ R2E ^ R2F ^ R30 ^ R31 ^ R32 ^ R33 ^ R34 ^ R35 ^ R36 ^
Line 217: Line 189:
 |  Diode         | 0x00 | 0xC0| 0xCF| 0x17| 0x8B| 0x8D| 0x10| 0x00| 0x55| 0x31| 0x00| 0x00| 0x00| 0x08| 0x00| 0x40| 0x86| 0x80| 0xE2| 0x33| 0xA0| 0x00| 0x00| 0x00| |  Diode         | 0x00 | 0xC0| 0xCF| 0x17| 0x8B| 0x8D| 0x10| 0x00| 0x55| 0x31| 0x00| 0x00| 0x00| 0x08| 0x00| 0x40| 0x86| 0x80| 0xE2| 0x33| 0xA0| 0x00| 0x00| 0x00|
  
-For more information please see the Library ​:FIXME:+For more information please see the library documentation for each platform [[:reference:​add-ons:​dmm-shield:​zynqlibraryuserguide|ZYNQ]] or [[:​reference:​add-ons:​dmm-shield:​pic32libraryuserguide|Digilent Microcontroller boards]]. 
 + 
 +==== EEPROM Memory ==== 
 +The DMM Shield is equipped with a non-volatile EEPROM memory chip from Microchip: 93LC66BT [[http://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​21795E.pdf|datasheet]] available from Microchip'​s website ), which has 512 bytes/256 words (4kbits) available space. The memory can be accessed over a custom SPI protocol, using digital IO pins exposed in the DMM Shield connector: CS_EEPROM (EEPROM SPI chip select), DO (SPI MISO), DI (SPI MOSI) and CLK (SPI CLK). 
 + 
 +While the chip select line is specific to EEPROM module, the SPI lines (data and clock) are shared with the DMM device. 
 + 
 +Note the data is written and read from memory using word format addressing, instead of byte: bytes 0-1 are written at address 0x00, bytes 2-3 are written at address 0x01, etc. 
 + 
 +The EEPROM is used to store the following system information:​  
 + 
 +^ Section Content ^ Addresses (words) ​ ^ Size ^ 
 +| Factory calibration data | 0x93 – 0xFF | 109 words / 218 bytes| 
 +| Serial Number | 0x8C – 0x92 | 7 words / 14 bytes | 
 +| User calibration data | 0x1F – 0x8B | 109 words / 218 bytes | 
 +| Free Memory | 0x00 – 0x1E | 31 words / 62 bytes | 
 + 
 +Please consult the DMM Shield Library User Guide for more information about the EEPROM module usage and communication. 
 +For more details about Calibration process, read more on [[#​calibration_procedure|Calibration Procedure]] below. 
 + 
 + 
 +==== Measurement Scales ==== 
 + 
 +DMM Shield comes with preset scales of measurement. They will indicate the maximum value that can be accurately measured with the device. Keep in mind that at low values the resolution is lower and different scales might give a more accurate result since the device is calibrated closer that value. Exfor a 40kΩ resistor is better to use the 50kΩ scale instead of the 500kΩ for a better resolution.  
 +There are 4 scales for voltages, 5 for current and 7 for resistances. Additionally,​ there are two extra scales for Diode and Continuity.  
 + 
 +^  Scales ​              ​^ ​   -   ​^ ​   -   ​^ ​   -  ^   ​- ​   ^    -   ​^ ​ -   ​^ ​ -    ^    -    ^ 
 +|  AC Voltage ​          ​| ​ 50m   ​| ​ 500m  |  5    |  30    |   ​- ​   |   ​- ​ |   ​- ​  ​| ​ V      | 
 +|  DC Voltage ​          ​| ​ 50m   ​| ​ 500m  |  5    |  50    |   ​- ​   |   ​- ​ |   ​- ​  ​| ​ V      | 
 +|  AC/DC Current ​       |  500u  |  5m    |  50m  |  500m  |  5     ​| ​  ​- ​ |   ​- ​  ​| ​ A      | 
 +|  Resistances ​         |  50    |  500   ​| ​ 5k  |   ​50k ​  ​| ​ 500k  |  5M  |  50M  |  Ω      | 
 +|  Diode                | 
 +|  Continuity ​          | 
 + 
 +The device comes factory calibrated for each scale. For more details about calibration please see the [[#​calibration_procedure|Calibration procedure]] below. 
 + 
 ==== Accuracy ==== ==== Accuracy ====
  
Line 225: Line 233:
  
  ​$$Accuracy=\frac {R_{F} - M_{F}}{F_{S}} * 100\label{10}\tag{10}$$  ​$$Accuracy=\frac {R_{F} - M_{F}}{F_{S}} * 100\label{10}\tag{10}$$
-====== Calibration ​procedure ​======+====== Calibration ​Procedure ​======
 The DMMShield needs calibration before performing measurements and delivering correctly measured values to the user. This is due to errors introduced by the chip itself and on-board additional electronics. The DMMShield needs calibration before performing measurements and delivering correctly measured values to the user. This is due to errors introduced by the chip itself and on-board additional electronics.
 Calibration is the process of computing and applying correction coefficients to the measured values that allow precise measurements. Calibration is the process of computing and applying correction coefficients to the measured values that allow precise measurements.
Line 231: Line 239:
 The process consists of computing an additive and a multiplicative coefficient for each scale. The process consists of computing an additive and a multiplicative coefficient for each scale.
  
-Basically calibration ​is done by collecting pairs of reference value and measured value (RefVal, MsVal) in multiple points. The reference value is the value measured with an accurate instrument, considered to be the actual value to be measured by the DMMShield device. The measured value is the value reported by DMMShield hardware. When all these pairs are collected, the calibration coefficients are computed mainly using the difference between the reference and the measured values.+Calibration ​is done by collecting pairs of reference value and measured value (RefVal, MsVal) in multiple points. The reference value is the value measured with an accurate instrument, considered to be the actual value to be measured by the DMMShield device. The measured value is the value reported by DMMShield hardware. When all these pairs are collected, the calibration coefficients are computed mainly using the difference between the reference and the measured values.
  
  
 Depending on the scale, different types of calibration are performed, as detailed in the following chapters: Depending on the scale, different types of calibration are performed, as detailed in the following chapters:
  
-==== 2 points ​Calibration for Resistance ​scales ​====+==== 2 Points ​Calibration for Resistance ​Scales ​====
 This method applies to the Resistance scales. This method applies to the Resistance scales.
 It collects the pairs (RefVal, MsVal) in two points: 0 point (short between probes), and full scale value. ​ It collects the pairs (RefVal, MsVal) in two points: 0 point (short between probes), and full scale value. ​
Line 251: Line 259:
  ​$$Value_{corrected}=(1 + Calib_{MULT})Value_{acquired} + Calib_{ADD}\label{3}\tag{3}$$  ​$$Value_{corrected}=(1 + Calib_{MULT})Value_{acquired} + Calib_{ADD}\label{3}\tag{3}$$
  
-==== 3 points ​Calibration for DC ==== +==== 3 Points ​Calibration for DC ==== 
-This method applies to the DC Voltage and DC current ​scales. +This method applies to the DC Voltage and DC Current ​scales. 
-It collects the pairs (RefVal, MsVal) in three points: 0 point (short between probes), negative full scale value and positive full scale value. For example, for VoltageDC500m scale, the following points are used: 0 point (short between probes), -500mV, 500 mV.+It collects the pairs (RefVal, MsVal) in three points: 0 point (short between probes ​for voltage and open for current), negative full scale value and positive full scale value. For example, for VoltageDC500m scale, the following points are used: 0 point (short between probes), -500mV, 500 mV.
  
 Let’s consider this pairs as being ($R_{0}$, $M_{0}$), ($R_{FN}$, $M_{FN}$) and ($R_{FP}$, $M_{FP}$). Let’s consider this pairs as being ($R_{0}$, $M_{0}$), ($R_{FN}$, $M_{FN}$) and ($R_{FP}$, $M_{FP}$).
Line 261: Line 269:
  ​$$Calib_{ADD}=(R_{0} - M_{0})(1 + Calib_{MULT})\label{5}\tag{5}$$  ​$$Calib_{ADD}=(R_{0} - M_{0})(1 + Calib_{MULT})\label{5}\tag{5}$$
  
-The reference value for the short is considered to be 0: $R_{0} = 0$+The reference value for the zero calibration ​is considered to be 0: $R_{0} = 0$
  
-The calibration coefficients are applied to the acquired value:+The calibration coefficients are applied to the acquired value in the following manner:
  ​$$Value_{corrected}=(1 + Calib_{MULT})Value_{acquired} + Calib_{ADD}\label{6}\tag{6}$$  ​$$Value_{corrected}=(1 + Calib_{MULT})Value_{acquired} + Calib_{ADD}\label{6}\tag{6}$$
  
-==== 2 points ​Calibration for AC ==== +==== 2 Points ​Calibration for AC ==== 
-This method applies to the AC Voltage and AC current ​scales. +This method applies to the AC Voltage and AC Current ​scales. 
-It collects the pairs (RefVal, MsVal) in two points: 0 point (short between probes) and full scale value. For example, for VoltageAC500m scale, the following points are used: 0 point (short between probes) and 500 mV.+It collects the pairs (RefVal, MsVal) in two points: 0 point (short between probes ​for voltage and open for current) and full scale value. For example, for VoltageAC500m scale, the following points are used: 0 point (short between probes) and 500 mV.
  
 Let’s consider this pairs as being ($R_{0}$, $M_{0}$), ($R_{F}$, $M_{F}$). Let’s consider this pairs as being ($R_{0}$, $M_{0}$), ($R_{F}$, $M_{F}$).
Line 275: Line 283:
  ​$$Calib_{ADD}= M_{0}\label{8}\tag{8}$$  ​$$Calib_{ADD}= M_{0}\label{8}\tag{8}$$
  
-The reference value for the short is considered to be 0: $R_{0} = 0$+The reference value for the zero calibration ​is considered to be 0: $R_{0} = 0$
  
-The calibration coefficients are applied to the acquired value:+The calibration coefficients are applied to the acquired value in the following manner:
 $$Value_{corrected}=(1 + Calib_{MULT})\sqrt{| {Value_{acquired}}^2- {Calib_{ADD}}^2 |}\label{9}\tag{9}$$ $$Value_{corrected}=(1 + Calib_{MULT})\sqrt{| {Value_{acquired}}^2- {Calib_{ADD}}^2 |}\label{9}\tag{9}$$
  
Line 283: Line 291:
 ====== Software Libraries====== ====== Software Libraries======
  
-We created ​libraries ​that can be used with the DMM Shield. The libraries were created to support ZYNQ plaforms ​and MPLAB. Documentation and downloads for these libraries can be found at the following locations:+Digilent provides ​libraries ​to access ​DMM Shield ​functionality. The libraries were created to support ZYNQ plaform ​and Digilent PIC32 microcontroller boardsBoth libraries come with a demo that allows the communication with the DMM Shield through UART.  
 +Functions as setting a scale and measure can be accessed by entering commands in the UART terminal emulator. Another demo shows how to access the memory left in the EEPROM by reading and writing 32 words.  
 +Documentation and downloads for these libraries can be found at the following locations: 
 + 
 +  * [[:​reference:​add-ons:​dmm-shield:​zynqlibraryuserguide|ZYNQ]] 
 +  * [[:​reference:​add-ons:​dmm-shield:​pic32libraryuserguide|PIC32]]
  
-  *  
-  *  
-  *  
  
 ---- ----
Line 311: Line 321:
 ^  Connector pin number ​ ^  Arduino Shield Name  ^ ^  Connector pin number ​ ^  Arduino Shield Name  ^
 |  1                     ​| ​ NC                   | |  1                     ​| ​ NC                   |
-|  2                     ​|  ​IOREF                ​+|  2                     ​|  ​3V3                  ​
-|  3                     ​|  ​RST                  ​|+|  3                     ​|  ​NC                   |
 |  4                     ​| ​ 3V3                  | |  4                     ​| ​ 3V3                  |
 |  5                     ​| ​ 5V0                  | |  5                     ​| ​ 5V0                  |
Line 322: Line 332:
  
 |  **J6** ​                                                                                                 |||| |  **J6** ​                                                                                                 ||||
-|  **Top Row**                                      ||  **Bottom ​Row**                                       ​||+|  **Bottom ​Row**                                   ​||  **Top Row**                                          ||
 ^  Connector pin number ​ |  **Arduino Shield Name** ​ |  **Connector pin number** ​ |  **Arduino Shield Name** ​ | ^  Connector pin number ​ |  **Arduino Shield Name** ​ |  **Connector pin number** ​ |  **Arduino Shield Name** ​ |
 |  1                     ​| ​ A0                       ​| ​ 2                         ​| ​ A6                       | |  1                     ​| ​ A0                       ​| ​ 2                         ​| ​ A6                       |
Line 357: Line 367:
 |  15                    |  IO26                     ​| ​ 16                        |  IO0                      | |  15                    |  IO26                     ​| ​ 16                        |  IO0                      |
  
- 
- 
- 
- 
-* Pullup resistors for pins SCL1 and SDA1 can be enabled by shorting jumpers JP1 and JP2, respectively. 
- 
-Pins #5 and #11 of each Pmod port are tied to Ground. Pins #6 and #12 of each Pmod port are tied to the HAT Adapter'​s 3V3 rail. 
 ---- ----
  
Line 373: Line 376:
 ---- ----
 ==== Additional Information ==== ==== Additional Information ====
-* The DMM Shield Schematic can be found [[:​learn:​documentation:​schematics:​dmm-shield-schematic:​|here]].+{{topic>​dmm ​dmm-shield-zynq-lib dmm-pic32-lib +doc}}
 ---- ----
-{{tag>​doc rm dmm}}+{{tag>​doc rm dmmshield}}