Posts tagged ‘SPI’

Reverse Engineering of BK Precision 1696 Switching Power Supply’s LCD Protocol

As mentioned in my previous post, besides the broken LCD there was also an issue with the power supply portion of the unit and the output voltage was clamped at around 10 to 11V. The digital circuitry portion however seemed to be intact. Unfortunately since an identical LCD is virtually unobtanium, I thought I’d reverse engineer the LCD protocol so once the power supply is fixed I can fix the display by hooking up a different LCD. Continue reading ‘Reverse Engineering of BK Precision 1696 Switching Power Supply’s LCD Protocol’ »

Reverse Engineering a Uniden Cordlessphone LCD

I recently upgraded my home phone system and thus was left with a couple of old Uniden DCT648-2 handsets. Most of the components inside are probably not salvageable but these handsets use 3×16 character LCDs, so it would be nice if I could reuse them in my other projects. Continue reading ‘Reverse Engineering a Uniden Cordlessphone LCD’ »

TI MSP430G2 SPI Examples

In my earlier posts (1, 2, 3), I showed some examples of using the I2C protocol with TI’s MSP430 Launchpad. Many MCUs in the MSP430G2 family also support the SPI bus. In today’s discussion, I will give a couple of examples on communicating with an SPI port expander (MCP23S17). Continue reading ‘TI MSP430G2 SPI Examples’ »

Code For MCP4821/MCP4822

Microchip‘s MCP4821/MCP4822 is a low budget 12-bit digital-to-analog converter. MCP4821 is the single channel version whereas MCP4822 has two channels that can be latched simultaneously. Both chips have internal band gap references and can be controlled via SPI. Continue reading ‘Code For MCP4821/MCP4822’ »

A Library for LTC1665/LTC1660

ATmega328p does not provide any Digital/Analog conversion channels (although the D/A conversion can be simulated by means of measuring the PWM output). We can easily add up to eight D/A channels using either a LTC1665 (8 bit) or LTC1660 (10 bit) from Linear Technology. Continue reading ‘A Library for LTC1665/LTC1660’ »

Interfacing LIS3LV02DL Using SPI — I

LIS3LV02DL is a MEMS three-axis digital linear accelerometer that provides both I2C and SPI interfaces for communicating with microprocessors. My work here is largely based on the work done at Near Future Laboratory. Instead of using a commercially available LIS3LV02DQ break-out board (LIS3LV02DQ is QFP packaging equivalent of LIS3LV02DL), I chose to hand solder an LIS3LV02DL (which is uses LGA packaging). And I have made some changes to the code sample to support more functionality. Continue reading ‘Interfacing LIS3LV02DL Using SPI — I’ »