Free Web Hosting Provider - Web Hosting - E-commerce - High Speed Internet - Free Web Page
Search the Web

BODY { COLOR: #000; FONT-FAMILY: Verdana,sans-serif; FONT-SIZE: 12px; MARGIN-TOP: 0px } TD { COLOR: #000; FONT-FAMILY: Verdana,sans-serif; FONT-SIZE: 12px; MARGIN-TOP: 0px } A:link { COLOR: #039; TEXT-DECORATION: underline } A:visited { COLOR: #600; TEXT-DECORATION: underline } A:hover { COLOR: #f60; TEXT-DECORATION: underline } .X { FONT-SIZE: 24px; FONT-WEIGHT: bold } .L { FONT-SIZE: 18px; FONT-WEIGHT: bold } .M { FONT-SIZE: 12px; FONT-WEIGHT: bold } .C { FONT-SIZE: 12px } .S { FONT-SIZE: 10px } .WH { COLOR: #fff; FONT-SIZE: 12px; FONT-WEIGHT: bold } .WH:link { COLOR: #fff; FONT-SIZE: 12px; FONT-WEIGHT: bold } .WH:visited { COLOR: #fff; FONT-SIZE: 12px; FONT-WEIGHT: bold } .WH:hover { COLOR: #fff; FONT-SIZE: 12px; FONT-WEIGHT: bold } .WHS { COLOR: #fff; FONT: 12px Verdana,sans-serif } .WHS:link { COLOR: #fff; FONT: 12px Verdana,sans-serif } .WHS:visited { COLOR: #fff; FONT: 12px Verdana,sans-serif } .WHS:hover { COLOR: #fff; FONT: 12px Verdana,sans-serif } .SWH { COLOR: #fff; FONT: bold 9px Verdana,sans-serif } .OR { COLOR: #f60; FONT: bold 12px Verdana,sans-serif } .OR:link { COLOR: #f60; FONT: bold 12px Verdana,sans-serif } .OR:visited { COLOR: #f60; FONT: bold 12px Verdana,sans-serif } .YL { COLOR: #ff0; FONT: bold 11px Verdana,sans-serif } .RD { COLOR: #f00; FONT: bold 12px Verdana,sans-serif } .GR { COLOR: #999; FONT: 12px Verdana,sans-serif } .NO { COLOR: #900; FONT: 12px Verdana,sans-serif } .MORE { FONT: bold 10px Verdana,sans-serif; TEXT-DECORATION: underline } .STAR { COLOR: #f00; FONT: 12px Verdana,sans-serif } .TA { COLOR: #000; FONT: 11px Verdana,sans-serif; TEXT-DECORATION: none } .TA:link { COLOR: #000; FONT: 11px Verdana,sans-serif; TEXT-DECORATION: none } .TA:visited { COLOR: #000; FONT: 11px Verdana,sans-serif; TEXTnone -DECORATION: none } .TA:hover { COLOR: #f60; FONT: 11px Verdana,sans-serif; TEXT-DECORATION: } .TB { COLOR: #fff; FONT: bold 11px Verdana,sans-serif; TEXT-DECORATION: none } .TB:link { COLOR: #fff; FONT: bold 11px Verdana,sans-serif; TEXT-DECORATION: none } .TB:visited { COLOR: #fff; FONT: bold 11px Verdana,sans-serif; TEXT-DECORATION: none } .TB:hover { COLOR: #f60; FONT: bold 11px Verdana,sans-serif; TEXT-DECORATION: none } .ST { FONT: bold 11px Verdana,sans-serif } .f11 { FONT-SIZE: 14px } .f1 { FONT-SIZE: 10px } .f2 { FONT-SIZE: 12px } .f3 { FONT-SIZE: 16px } .f4 { FONT-SIZE: 18px } .f5 { FONT-SIZE: 24px } .f6 { FONT-SIZE: 31px } .lh { LINE-HEIGHT: 130% }

Welcome to the mystifying age - the Age of Technology - The Age of THETECHIES !

TECHNOLOGISTS - OF - THE - FUtURE

A Technological Portal run by Engineering Students.

Home

Techspeak

 

Tech Article

 

The Lighter Vein

PG Crazy

 

The Techies Team

 

THE TECHIES free tour

TECHSPEAK
TECH-ARTICLE

FACING CAMPUS? 

PG CRAZY 

THE LIGHTER VEIN 

RECK-AFFAIRS 

CONTESTS 

THETECHIES TEAM 

CONTACT US

HOT STUFF !

Bell the CAT !

Campus Papers

Guest Column

You be a Techie

Visit Our Sponsorers

 

More

Microcontroller Based Refrigeration

By Rajesh Lal, Karamveer Yadav

Abstract

Microcontrollers are microprocessors with integrated general-purpose interfacing logic to facilitate the control of peripheral devices.

Microcontroller-based systems require the design of ahardware/software interface that enables software running on the microcontroller to control external devices. This interface consists of the sequential logic that physically connects the devices to the microcontroller and the soft-ware drivers that allow code to access the device functions.

This paper presents a general systematic process of developing this hardware and the software interface using a recursive al-gorithm.Further a case study of the Motrola based Microcontroller 68HC08 is done dsecribing its architecture and various routines that are used in various appliactions.

The practical aplication of the micricontroller based system in day to day life is demonstrated by taking the various examples and a detailed study of of the embedded refrigerator is done which explains the very utility of the microcontrollers in maximizing the performance of the appliance, and to provide a variety of features within refrigerators like energy efficiency improvent

Synthesis of the Hardware/Software Interface in

Microcontroller-Based Systems

Pai Chou Ross Ortega Gaetano Borriell

Department of Computer Science and Engineering

University of Washington, Seattle, WA 98195

Abstract

Microcontrollers are microprocessors with integrated

general-purpose interfacing logic to facilitate the control of

peripheral devices. Microcontroller-based systems require the design of a

hardware/software interface that enables software running

on the microcontroller to control external devices. This

interface consists of the sequential logic that physically

connects the devices to the microcontroller and the soft-ware

drivers that allow code to access the device functions.

This paper presents a process of synthesiz-ing the hardware/software

interface using a recursive al-gorithm.Practical example of a refrigerator

is used to demonstrate theutility of the Microcontrollers in maximizing

the performance of the appliance, and to provide a variety of features

within refrigerators and freezers.

1 Introduction

Microcontrollers are microprocessors with integrated

general-purpose interfacing logic to facilitate the control of

peripheral devices. This logic is encapsulated in I/O ports

(i.e., collections of I/Opins and related interface logic) that

can be written to or read from by program code. Micro-controllers

are commonly used to implement digital control

systems because they require minimal interfacing hard-ware.

Peripheral devices range from user input and display

units to memories and communication interfaces.

Designers of microcontroller-based systems must al-locate

devices to ports and customize subroutines to ac-cess

the devices under the specific port assignment chosen.

There are several issues in performing this task. Most im-portantly,

additional hardware must be minimized so as to

maintain the benefits of using a microcontroller, namely

reducing part count. If there are more device pins than port

pins, then the ports need to be time-multiplexed with the



This work was supported by NSF under Grant MIP-8858782,

DARPA under contract N00014-J-91-4041 , and Patricia Roberts Harris

Fellowship.

corresponding de-multiplexing performed in external hard-ware.

Another important goal is to minimize code size. Ex-ploiting

the grouping of signals can reduce the number of

instructions needed in the driver routines. In certain cases,

memory-mapped I/O techniques are used to access the de-vices

with the processor’s address and data bus thereby by-passing

most of the port interface logic. Since the address

and data busses also use I/O pins to reach the devices, this

further complicates the port assignment problem.

In this paper, we describe a tool that automates the syn-thesis

of the hardware/software interface between a micro-controller

and the devices it controls. Optimizations of the

synthesis process focus primarily on the minimization of

interface hardware and also the code size of the device

driver routines. Section 2 specifies this interface synthe-sis

problem. Section 3 describes the data structures used to

represent the microcontroller, devices, and hardware and

software primitives. Section 4 presents the port allocation

algorithm. Section 5 highlights the features of this inter-face

synthesis tool with two practical examples. Section 6

concludes the paper with an evaluation and discussion of

future work.

2 Problem Specification

The input to the port allocation tool consists of a behav-ioral

description of the system, peripheral device descrip-tions,

and a microcontroller description. The ouput of the

tool is a netlist, customized driver routines, and any neces-sary

interface components.

The behavioral description is a high-level, imperative

language program written by the user describing the nec-essary

components of the circuit and its functionality. This

program has a declarative section and an operational sec-tion.

The declarative section allocates static storage for

data and instantiates peripheral devices. The operational

section computes functions and communicates with the pe-ripheral

devices via driver calls. We assume that the user

program is single-threaded.