Multipurpose Embedded Device

User Rating: / 0
PoorBest 

Abstract

This device has the following functions and features:

  • HTTP server
  • Ethernet interface
  • PS/2 keyboard inteface
  • LCD display
  • SD card interface
  • Simple custom file system
  • Serial interface
  • Textmode UI
  • Temperature measurement
  • Powered by rechargeable battery, USB or DC adapter

It uses an ATMega32 AVR microcontroller and some parts of Procyon AVRlib, a "C-Language Function Library for Atmel AVR Processors".

Demo

Because it is a web server you may play with it by accessing this link: http://sdragan.homeip.net:8080. The temperature section shows the real time temperature inside my flat at floor level and 2m above the floor.

Description

The core of the device is the ATMega32 AVR microcontroller. Along with an enc28j60 Ethernet controller it performs the function of a HTTP web server serving only static pages. These pages are stored on a 32MB SD card using a simple custom file system.

An integrated 4x20 LCD display, a PS/2 keyboard and a text mode user-friendly interface allows user interaction and internal settings reconfiguration. These settings are stored on the internal 1KB EEPROM memory of ATMega32.

Another great function of this device is temperature measurement. Using a bus line formed of stereo audio cables and splitters up to 8 DS18B20 digital thermometers may be connected.

Circuit diagram

Click to enlarge. The schematic in Eagle .sch format is available as an attachment to this page (see below).

Source code and documentation

The final version of the firmaware source code and some documentation are to be found inside the attached archive, Firmware.zip. The source was written using CodeVisionAVR and Visual Studio 2005.

The full documentation was written for the faculty graduation project. 

Add comment


Security code
Refresh