Imaging system with four different wavelengths obtained from LEDs

In order to evaluate skin pigmentation in different skin layers, there is a special light adapter needed to take multispectral pictures of skin. As there are different optical properties of skin pigments, four different light sources have been chosen. blue λ= 470 nm – highly absorbed by epidermal melanin green λ= 576 nm – hemoglobin peak red  λ= 660nm – epidermal-dermal boundary IR λ= 865 nm – low absorption, sensitive to scattering to measure papillary dermis thickness. There was lighting source for “Nikon Coolpix E3100” digital camera developed to take multispectral images of skin. Making adapter The drawing of  lighting adapter The lighting adapter isn’t very hard to build. You need to make a circular PCB and solder LEDs with protective resistors. The PCB image:

Continue reading

Interfacing MPXV5100 pressure sensor to Atmega8

The MPX5100 series piezoresistive transducer is a state-of-the-art monolithic silicon pressure sensor designed for a wide range of applications, but particularly it is convenient to interface to microcontroller or microprocessor with A/D inputs. This is thin-film metallization, and bipolar processing to provide an accurate, high level analog output signal that is proportional to the applied pressure. More details can be found here MPXV5100 This sensor measures differential pressure comparing to atmospheric so when there is no pressure applied it shows 0kPa;

Continue reading

Analog Devices Digital temperature sensor AD7416

There aremany situations when you might need to measure temperatures or trigger some events due to temperature changes. It is very convenient to have these values in a digital format. Then you can transfer digital values to microcontroller to process data or jus to display on LCD screen. AD7416 Sensor description This is 10 bit digital temperature sensor which ca measure temperatures in range interval -40 to 125ï‚°C). Temperature conversion ADC has 15 conversion times. Sensor can be supplied from 2.7 to 5.5V, so it is no problem to connect directly to ARM microcontrollers. Data is transferred through I2C serial interface. More detailed description – datasheet can be downloaded from Analog devices page: AD7416. Here you find simple routine where Atmega8 microcontroller reads sensor data decodes temperature value and displays it on 2×16 LCD display. Lets connect everything to simple circuit. Don’t forget to connect pull-Ups to SCl and SDA busses: Here are few real images of prototyping: That’s it. If you would like to try to run this sensor by your own, here is source code of CodeVision compiler. And already compiled hex in archive. Also I added Eagle libray with AD7416 part in it. AD7416 Have fun 😉…

Continue reading

AVR ISP

AVRISP is very popular Parallel port programmer for flashing AVR type microcontrollers. Earlier I used programmer connected to com port, but frequently I needed this port for other purposes, I decided to make it work on parallel port. The programmer on parallel port is much simpler than connected to serial port, because there is no needed voltage adapter like MAX232. You can only connect your MCU directly to port. But for safety reasons there is good practice to use buffer ship like 74HC244. The header for programmer I used standard 6 pin ISP header. I wanted to make compact programmer, so I put circuit inside LPT head. Few pictures of it:   Programming is usually done by using PonyProg software. Bellow is its configuration:

Continue reading

ARM7-Base development board for LPC2148

After ARM mini board for LPC2148 is created its time to develop development board. I want to make board as universal as possible. So I decided to put I2C, SPI, COM and JTAG on board. I decided to use external voltage adapter as there is needed 5V and 3.3V DC sources. For my experiments I can use those voltages straight from PC source. 5V there is used to supply MAX232IC.I decided to use it instead of MAX3232 because it is easer to get them in market. Of course I left ability to use and MAX3232 by changing jumper. All other free pins I made accessible by adding pinheads in board. I made 100x100mm double sided PCB PCB Bottom image PCB top image (when printing – use mirror function) And real world images. PCB Bottom Completed soldered board with ARM mini board on top. And of course I put Eagle3D traced board images. Best regards to Matthias Weißer from www.matwei.de did great job to do such job. The first read/write tests I run with Philips Flash Utility were successful. Next time I’ll post few articles how to get this board running by writing C code, compiling and flashing the ARM7 LPC2148.…

Continue reading

ARM7 LPC2148 mini board

One day I’ve got ARM LPC2148 chip in my hands. The Philips LPC2148 is an ARM7TDMI-S based high-performance 32-bit RISC Microcontroller with Thumb extensions 512KB on-chip Flash ROM with In-System Programming (ISP) and In-Application Programming (IAP), 32KB RAM, Vectored Interrupt Controller, Two 10bit ADCs with 14 channels, USB 2.0 Full Speed Device Controller, Two UARTs, one with full modem interface. Two I2C serial interfaces, Two SPI serial interfaces Two 32-bit timers, Watchdog Timer, PWM unit, Real Time Clock with optional battery backup, Brown out detect circuit General purpose I/O pins. CPU clock up to 60 MHz, On-chip crystal oscillator and On-chip PLL. < p align=”left”>Looks like it can be powerful thing in good hands. I decided to test its power, so I needed development board, which could I use for my experiments. Because I wanted to have more universal board, so I faced few problems – PCB tracing. My purpose was to make this PCB at home, so I didn’t want to waste time while tracing big board with many tracks. There were two ways of making it: make one big board with complicated tracing of PCB tracks, or split it in two parts. I’ve chosen second one. In a…

Continue reading