You are currently viewing A MCU-based LCR Meter – Part 6

A MCU-based LCR Meter – Part 6

In this post I am going to explain some features of the device’s firmware.                            

Firmware

The LCRH7 firmware is a bare metal system written in C/C++ using ST’s Cube IDE.

Graphical User Interface

The user can interact with the device through the 2.8“ capacitive touch screen. The GUI elements have been kept large so the screen can be conveniently operated without needing a stylus.
This is the list of screens the user can navigate to.

Main screenDisplay measurement results
AdjustmentPerform open/short adjustments
Statistics / Statistics 2Show deviations as numbers or as a graph over time
Save/RecallSave/Recall/Preset
USBDisplay Visa resource string
AboutShow serial number and FW version
ScreenSet screen saver
RegisterEnter registration key

LCR-Meter Adjustment Screen
Adjustment Screen
LCR-Meter Statistics Screen
Statistics Screen

Remote Control Interface

The device can be remote controlled via its USB interface. To a host it is visible as a composite USB device with a USBTMC interface and a CDC (serial) interface. The language used is SCPI.

Example:
Measure parallel capacitance and resistance:
MEAS? CPRP
→ returns the result as a pair of values in uF and Ohms e.g. (4.52357e-01,2.23561e+04)
for 0.452 uF and 22.3 kOhm.

This is a list of selected commands. To get the full list use command „SYSTem:HELP:HEADers?“.

[:SOURce]:FREQuency?Set/get measurement frequency (100,120,1k,10kHz)
MEASure?Perform measurement. Argument can be one of AUTO, CPD, CPQ, CPRP, CSD, CSQ, CSRS,LPD, LPQ, LPRP, LSD, LSQ, LSRS, RX, R, L, C, ZT
MEASure:CTYPE?Get type of last result, if measurement type was AUTO
MEASure:IMPedance[:VALue]?Measure Impedance |Z| and phase
MEASure:RELative?Set/get relative measurement mode
MEASure:STATistics:RESetReset statistics recording
MEASure:STATistics:CURVe:POINts?Get number of recorded statistics points
MEASure:STATistics:CURVe:TINTerval?Get time interval of statistics record
MEASure:STATistics:CURVe:DATA?Get statistics data
MEASure:STATistics:CURVe:MIN?Get statistics minimum deviation
MEASure:STATistics:CURVe:MAX?Get statistics maximum deviation
MEASure:STATistics:CURVe:AVG?Get statistics average
MEASure:STATistics:CURVe:MIN:PCT?Get statistics minimum deviation in %
MEASure:STATistics:CURVe:MAX:PCT?Get statistics minimum deviation in %
MEASure:TSETtling?Get settling time
MEASure:TYPE?Set measurement type for GUI measurements
MEASure:TYPE:ACTual?Get actual measurement type if AUTO was used
ADJust:OPENPerform open adjustment
ADJust:OSHort:CLEarClear open/short adjustment data
ADJust:SHORtPerform short adjustment
ADJust:SAVESave adjustment data

To be continued

guest

0 Comments
Oldest
Newest Most Voted