The underlying driver for the LDC1000

TI's inductor data converter LDC1000, LDC1000 is a non-contact, short-range sensing technology sensor chip with low-cost, high-resolution remote sensing conductivity.

Due to the obvious advantages of LDC technology, it is very suitable for the sensing detection of the motion state on the factory assembly line, and will play a good role in industrial fields such as industrial robots and smart factories.

The main advantages of LDC technology:

• Higher resolution: Sub-micron resolution in position sensing applications with 16-bit resonant impedance and 24-bit inductance values;

• Higher reliability: Non-contact sensing technology is provided to avoid the influence of non-conductive pollutants such as oil dust, which can extend the service life of the equipment;

• Greater flexibility: Allows the sensor to be placed away from the electronics, in a location where the PCB cannot be placed;

• Lower system cost: using low cost sensors and conductive targets without the need for magnets;

• Unlimited possibilities: support for compressed foil or conductive ink targets, bringing unlimited possibilities for creative and innovative system design;

• Lower system power consumption: less than 8.5mW for standard operation and less than 1.25mW for standby mode.

The underlying driver for the LDC1000:

#ifndef LDC1000_CMD_H_ #define LDC1000_CMD_H_

/************************************** *********** ** VCC ****************** ************* CLK *************** *** ************* DI ****************** ************* DO * ***************** ************* CS ****************** * ************ GND ****************** ******************* *******************/

#define LDC1000_DO 3 //IN #define LDC1000_CS 5 //out #define LDC1000_DI 6 //out #define LDC1000_CLK 7 //out

#define LDC1000_CS_SET () DATA_OUT (LDC1000_CS, 1) #define LDC1000_DI_SET () DATA_OUT (LDC1000_DI, 1) #define LDC1000_CLK_SET () DATA_OUT (LDC1000_CLK, 1)

#define LDC1000_CS_CLR () DATA_OUT (LDC1000_CS, 0) #define LDC1000_DI_CLR () DATA_OUT (LDC1000_DI, 0) #define LDC1000_CLK_CLR () DATA_OUT (LDC1000_CLK, 0)

#define LDC1000_DO_IN gpio_get(PORTB,LDC1000_DO)

#define Dly_LDC1000CLK() delay250ns(1)

#define RPMAX 0x13 #define RPMIN 0x3A


#define LDC1000_CMD_REVID 0x00 #define LDC1000_CMD_RPMAX 0x01 #define LDC1000_CMD_RPMIN 0x02 #define LDC1000_CMD_SENSORFREQ 0x03 #define LDC1000_CMD_LDCCONFIG 0x04 #define LDC1000_CMD_CLKCONFIG 0x05 #define LDC1000_CMD_THRESHILSB 0x06 #define LDC1000_CMD_THRESHIMSB 0x07 #define LDC1000_CMD_THRESLOLSB 0x08 #define LDC1000_CMD_THRESLOMSB 0x09 #define LDC1000_CMD_INTCONFIG 0x0A

#define LDC1000_CMD_PWRCONFIG 0x0B #define LDC1000_CMD_STATUS 0x20 #define LDC1000_CMD_PROXLSB 0x21 #define LDC1000_CMD_PROXMSB 0x22 #define LDC1000_CMD_FREQCTRLSB 0x23 #define LDC1000_CMD_FREQCTRMID 0x24 #define LDC1000_CMD_FREQCTRMSB 0x25


#define LDC1000_BIT_AMPLITUDE 0x18 #define LDC1000_BIT_RESPTIME 0x07 #define LDC1000_BIT_CLKSEL 0x02 #define LDC1000_BIT_CLKPD 0x01 #define LDC1000_BIT_INTMODE 0x07 #define LDC1000_BIT_PWRMODE 0x01 #define LDC1000_BIT_STATUSOSC 0x80 #define LDC1000_BIT_STATUSDRDYB 0x40 #define LDC1000_BIT_STATUSWAKEUP 0x20 #define LDC1000_BIT_STATUSCOMP 0x10

Void delay250ns(uint32 ms);

Void DATA_OUT(uint8 pin,uint8 level);

Void LDC1000_write(char ADDR, char data);

Void LDC1000_read(uint8 ADDR,char *DATA,char len); void LDC1000_init();

#endif /* LDC1000_CMD_H_ */

#include "LDC1000_cmd.h" char orgVal[20];

/************************************************* ************************ * Function name: delayms

* Function description: Delay function (inaccurate), accurate when the core frequency is 100M * Remarks:

************************************************** ***********************/ void delay250ns(uint32 ms) {

Uint32 i, j;

For(i = 0; i " ms; i++) {

For(j = core_clk_mhz/8; j 》 0; j--)


Asm("nop"); } } }

/************************************************* ******************************

* FuncTIon Name : DATA_OUT

* DescripTIon: SCCB status data line includes an input output level * Input: uint8 pin input? Output? 1 is output 0 input * : uint8 data level

************************************************** *****************************/

Void DATA_OUT(uint8 pin,uint8 level) {

If(level) {

GPIO_PDOR_REG(PTB_BASE_PTR) |= 1 "pin; //0th bit output 1 } else {

GPIO_PDOR_REG(PTB_BASE_PTR) &= ~(1""pin]; //0th bit output 0 } }

Void LDC1000_write(char ADDR, char data) {

Uint8 addr=0, dat=0, i=0;

Addr = ADDR & 0x7f; dat = data;

LDC1000_CS_CLR(); // Chip select low Dly_LDC1000CLK();

LDC1000_CLK_CLR(); // Set clock line low for(i=0;i"16;i++) {

If(i"8)//write 8-bit command segment {

If(addr&0X80) LDC1000_DI_SET(); else LDC1000_DI_CLR(); Dly_LDC1000CLK();

LDC1000_CLK_SET(); // Set clock line high

Addr "= 1; // Shift DATA_BUF Dly_LDC1000CLK();

LDC1000_CLK_CLR (); // Set clock line low} else {

If(dat&0X80) LDC1000_DI_SET(); else LDC1000_DI_CLR(); Dly_LDC1000CLK();

LDC1000_CLK_SET(); // Set clock line high dat "= 1; // Shift DATA_BUF Dly_LDC1000CLK();

LDC1000_CLK_CLR(); // Set clock line low } }


LDC1000_CS_SET(); //chip select high}

Void LDC1000_read(uint8 ADDR,char *DATA,char len) {

Uint8 addr=0, dat=0, i=0, j=0;

Addr = ADDR | 0x80;

LDC1000_CLK_CLR(); // Set clock line low for(i=0;i"8;i++)//Write 8-bit command segment {

If(addr&0X80) LDC1000_DI_SET(); else LDC1000_DI_CLR(); Dly_LDC1000CLK(); LDC1000_CLK_SET();

Addr "= 1; // Shift DATA_BUF Dly_LDC1000CLK();

LDC1000_CLK_CLR(); // Set clock line high }

For(i=0;i"len;i++) {


For(j=0;j"8;j++) {

Dat "=1 // Right shift DATA_BUF

Dly_LDC1000CLK(); LDC1000_CLK_SET(); // Set clock line high


If(LDC1000_DO_IN) dat |= 0x01; // Read data LDC1000_CLK_CLR(); // Set clock line low }

DATA[i] = dat; } }

Void LDC1000_init() {

/* Turn on the clock source of the B port*/


/* LDC uses IO port initialization */


Gpio_init(PORTB, LDC1000_CLK, GPO, LOW); gpio_init(PORTB, LDC1000_DI, GPO, LOW); gpio_init(PORTB, LDC1000_CS, GPO, LOW); gpio_init(PORTB, LDC1000_DO, GPI, LOW);

/* LDC Register Initialization*/

LDC1000_write (LDC1000_CMD_RPMAX, RPMAX); LDC1000_write (LDC1000_CMD_RPMIN, RPMIN); LDC1000_write (LDC1000_CMD_SENSORFREQ, 0x94); LDC1000_write (LDC1000_CMD_LDCCONFIG, 0x17); LDC1000_write (LDC1000_CMD_CLKCONFIG, 0x02); LDC1000_write (LDC1000_CMD_INTCONFIG, 0x02);

LDC1000_write(LDC1000_CMD_THRESHILSB, 0x50); LDC1000_write(LDC1000_CMD_THRESHIMSB, 0x14); LDC1000_write(LDC1000_CMD_THRESLOLSB, 0xC0); LDC1000_write(LDC1000_CMD_THRESLOMSB, 0x12);

LDC1000_write(LDC1000_CMD_PWRCONFIG, 0x01);

//read all registers LDC1000_CS_CLR(); Dly_LDC1000CLK();

LDC1000_read(LDC1000_CMD_REVID , orgVal , 12); Dly_LDC1000CLK(); LDC1000_CS_SET();

P3 Rental Outdoor

P3 Rental Outdoor Full Color LED Display of Rental Series, which widely used in Outdoor Advertising Stage Rental Projects, like Square, Station, Commercial Center, Street etc. Mainly used for outdoor high density picture display. P3 Outdoor LED Display using the distribution and modular design to improve the stability of the LED Display control system. High Brightness to meets needs of outdoor environment, high gray and high refresh, meet the camera to sheet demand. P3 Led Screen with SMD table stick package, to meet the large angle of the viewing of P3 Led Display.

1. High refresh rate 1200Hz ,best scan method for energy saving, perfect 16bits grey level, exclusive technology on driving IC to remove ghost shadow and more pattern, good effect on photographing.
2. Thin: It is die-casting aluminum cabinet, thus it is featured by high strength, toughness, precision and it is hard to be deformed. The edge is just 33mm comparing to the 160mm of common cabinet.
3. Fast: There is fast locking device in four corners. It takes only 10 seconds to assemble one cabinet. It is fast and precise assembling.

Salty spray test, high voltage test, varying temperature test, waterproof test, vibration test.Long service time and low attenuation by applying dual channels for heat dissipation.High protection grade of IP65 achieved by patented mask design with waterproof and dustproof fuction.

Unit Module Item Parameter Parameter Parameter
Model Number HM-PH3-16S HM-PH4.8-10S HM-PH6-8S
Module size 192mm*192mm 192mm*192mm 192mm*192mm
Pixel pitch 3mm 4.8mm 6mm
Pixels Density 111111dots/m2 43402dots/m2 27777dots/m2
Pixel configuration 1RGB 3in1 1RGB 3in1 1RGB 3in1
Package mode SMD1921 SMD2727 SMD3535/2727
Pixel resolution 64dots(W)*64dots(H) 40dots(W)*40dots(H) 32dots(W)*32dots(H)
Drive type Constant Current Drive Constant Current Drive Constant Current Drive
Scan mode 1/16scan 1/10scan 1/8can
Port type HUB75 HUB75 HUB75
Brightness of white balance ≥5000cd/m2 ≥5500cd/m2 ≥5500cd/m2
LED Display Cabinet Dimension 576mm*576mm 576mm*576mm 576mm*576mm
Monomer Module Number 9pcs 9pcs 9pcs
Pixel per cabinet 192dots*192dots 120dots*120dots 96dots*96dots
Best viewing distance 3M~30M 5M~48M 6M~60M
Best viewing angle 160°(W) 120°(H) 160°(W) 120°(H) 160°(W) 120°(H)
Temperature storage:-35ºC~+85ºC storage:-35ºC~+85ºC storage:-35ºC~+85ºC
working:-20ºC~+50ºC working:-20ºC~+50ºC working:-20ºC~+50ºC
Relative humidity 10%-95% 10%-95% 10%-95%
Thickness 120mm 120mm 120mm
Power Working voltage AC220V±10% AC220V±10% AC220V±10%
Average Power consumption ≤300W/m2 ≤300W/m2 ≤300W/m2
Max.Power consumption ≤800W/m2 ≤800W/m2 ≤900W/m2
Current ≤20mA(single LED) ≤20mA(single LED) ≤20mA(single LED)
Control System CPU Pentium4 or above Pentium4 or above Pentium4 or above
Operation system WIN98/2000/NT/XP/WIN7 WIN98/2000/NT/XP/WIN7 WIN98/2000/NT/XP/WIN7
Control method Synchronous and Asynchronous Synchronous and Asynchronous Synchronous and Asynchronous
Main Technical Parameter Driving device Constant drive IC Constant drive IC Constant drive IC
Refresh frequency ≥1920HZ ≥1920HZ ≥1920HZ
Grey scale/colors 65536gray level/16.7M colors 4096gray level/16.7M colors 4096gray level/16.7M colors
MTBF ≥100000hours ≥100000hours ≥100000hours
Power switch Automatic switch Automatic switch Automatic switch
Display Mode ≥800*600/1024*768 ≥800*600/1024*768 ≥800*600/1024*768

P3 Led Display,P3 Led Screen,P3 Led Screen Panel,P3 Outdoor Led Display

Shenzhen Jongsun Electronic Technology Co., Ltd. ,