Showing posts with label Microcontroller. Show all posts
Showing posts with label Microcontroller. Show all posts

September 8, 2012

Easy To develop Microcontroller Projects To Make Our Lives Easier

A microcontroller is used in most of our daily required electronic gadgets like Speakers, Microwave Ovens, Lcd displays, Switches, Refrigerators, Telephones, Washing Machines and Automobile motor control systems. Microcontroller Projects are based upon an electronic integrated chip that forms the part of the embedded system. Here are some devices, which may make our life easier and secured at the cost of very exiguous investment.

  • Water Level Controller-Motor Protector

It happens often that we forget to switch off motor which results in overflowing of water in overhead tanks in our homes. As the tank is kept on the terrace, we feel lazy to go up to check the water level in the tank. Therefore, to solve this problem a microcontroller based water-level controller scheme has come up which controls on/off conditions of the motor depending upon the water level in tank. A Lcd module is in case,granted to display water level in the tank. This Microcontroller Projects are designed in order to meet up the specifications like security of the motor from high voltage, low voltage, fluctuations of main power and dry running. The main components of this gismo are Pic microcontroller, sensor, motor etc.

  • Secured Room entrance System

Access control systems are a superb example of Microcontroller Projects that allow only authorized persons to entrance a restricted area. When person unauthorized tries to enter the restricted area by entering invalid passwords continuously, the system locks itself and can be unlocked only by the scholar user. The system compromises of a numeric keypad, a solenoid-operated lock and Lcd display. The main electronic components are the Atmega 8535 microcontroller, 7806 regulator and Mct2E opto-coupler.

Microcontroller projects designed as gather entrance systems consist of of a memory card; an electronic device; at least one reader for detecting an action of the gather entrance system. A controller is other important part of any entrance system. It is operable to elaborate the detected action and stores data relating to the detected action in form of one or more log files in the memory, sends the one or more log files to the movable device, selects the movable gismo for the one or more log files and causes the one or more log files to be transmitted to the prime device. For example, if the action is related to entrance gained through a particular door, the door and potentially the person who gained entrance are stored in the control panel log. Also, if the action is related to a financial transaction, the data relating to the transaction including the amount and who performed the transaction are sent to preset destinations and are stored at the control panel. Sometimes control panels related with remote locations are not updated regularly. If a person's status changes from authorized to unauthorized, it is must to upgrade the control panel.

Forex Factory Blog Gauge Absolute Pressure

April 22, 2012

What Is A Microcontroller

Each of these systems will use a microcontroller as their main operate unit:

  • Car lock remote key fob.
  • Tv Remote control.
  • Security system.
  • Electronic safe.
  • Car anti lock braking system.
  • Satelite decoder.
  • Dvd player.
  • Toaster.

A microcontroller is an all in one electronic integrated circuit with built in processor memory and peripherals that is also re-programmable.




You may not be able to recognize the microcontroller as for cost savings its economy to build an Asic (Application exact Integrated Circuit). This is a custom chip designed only for the goods which is mass produced in milliions production the cost of the device far economy than using an individual microcontroller.

Nevertheless each theory is based on a microcontroller.

Electronic Circuit invent has progressed from individual transistors which are based on silicon to placing thousands and then millions of transistors on a single silicon wafer. The transistors, arranged in the exact configuration, accomplish different functions such as time delays, boolean logic, memory etc.

7400 series logic

Still ready today are the older 74 series devices. These are Ics encased in plastic with connection pins on the outside and each one performs a different well defined function.

By grouping these devices together you can make up circuits by connecting the pins of the device to pins of other devices. About 20 years ago this was the only way of production digital electronic systems and you would typically have racks of circuit boards each with 50 of these devices wired up.

More transistors

Of procedure the disadvantage of these racks of circuit boards is that once you have designed the board you can not convert it so you had to be no ifs ands or buts sure that the invent was perfect. If it was not then you had to start over - and for a complicated theory that means spending money on a new circuit board and spending time re-designing it.

With the progress of manufacturing techniques more transistors can be put on the silicon wafer - and if you can get more transistors on a wafer there are two advantages.

  1. Increased functionalty.
  2. Higher speed.

Smaller transistors means smaller corporal problems (capacitance slows down a devcie - so a smaller device has less) and they also use less current. Less current means less power and less power means less heat and less heat means that the device can operate faster.

Given adequate transistors you can invent a circuit (or Integrated Circuit - Ics) to accomplish virtually any function you can think and using a extra form of transistor (flash memory) means that the device can store facts for years - this memory is also re-programmable.

Processor

The next stage in amelioration was creating the processor which is a specialised circuit in which the function of the device is not set at all. Instead the device is capable of performing different functions when it is given different inputs and not only that - it has a small estimate of ram inside used for internal temporary storage (registers) - and this lets it remember a sequence of events.

When you incorporate this device with two types external memory (other Ics) you can make a theory that can consequent a defined sequence of events. By reading instructions from the memory (Rom) the processor knows what it should be doing as its next event sequence and it can store data in external Ram memory.

  • Rom - Read Only Memory (permament)
  • Ram - Random passage memory (temporary - when power goes info is lost).

In expanding the processor can read the state of input pins and set the state of production pins so it can react to the outside world e.g. Turn on a light or read a key press.

You can see where this is going - it's a device that has re-programmable memory and has many of the construction blocks (7400 series) although now greatly refined and adapted inside the device - it's the microcontroller.

Microcontrollers

A microcontroller is a specialized integrated circuit which combines a processor and external memory inside the silicon wafer itself. You now have a customizable device that you can convert its function just by re-programming it.

In expanding as microcontrollers have been refiined you will find devices that have many other peripherals inside them. Where once you had to buy a Uart Ic (an Rs232 transportation device - to talk to a Pc) and place it on the processor bus in expanding to the Ram and the Rom; this device is now part of the microcontroller itself.

Here are the internal peripherals of the 16F88 a contemporary Pic microcontroller - this is just an example there are many more microcontroller manufacturers e.g. Atmel, Motorola, Zilog.

  • Ram 386 Bytes.
  • Rom 4096 words.
  • Eeprom 256 Bytes.
  • I/O 16 pins.
  • Internal oscillator.
  • Timer 1.
  • Timer 2.
  • Timer 3.
  • Usart. Ssp - Synchronous Serial port I2C, Spi protocols.
  • Ccp - Capture assess Pwm.
  • Analogue comparator 1.
  • Analogue comparator 2.
  • Adc multiplexed inputs from 7 pins.

This an 18 pin Ic which is as big as some of the former 7400 devices but it can do much more that those single chips. For instance you can make the following types of projects using it:

  • Universal Infrared decoder/encoder.
  • Ultrasonic tape measure.
  • Frequency counter.
  • Metal detector.

Note: All of these projects can be made using the same device because you can re-program the microcontroller to do a different job.

You can find more facts here: microcontroller information and how to build a website that gets the click.

What Is A Microcontroller

Ajax Amsterdam News Blog Dutch Eredivisie News Blog Barcelona FC

April 11, 2012

Functions and Advantages of Microchip Pic Microcontroller

Microchip Pic microcontroller is a device which is used in electronics media. Pic belongs to the family of microcontrollers which are made by microchip technology. The word Pic here means peripheral interface controller. The Pic are favorite and in high demand throughout the world because of the attributes it contains like it is widely available, it has low cost, it is a large user base device, it can work as an thorough range of application notes, the amelioration tools associated with it are free of cost sometimes ready at low cost, and serial programming capability. These are some of the exquisite functions of microchip Pic microcontroller. The electronic devices are gaining popularity day by day round the globe because in up-to-date days, this is an era of increasing innovation and technology development.

The microchip Pic is characterized by few other attributes which are as follows: isolate coding and data spaces. The instructions in small numbers of fixed length, most of the instructions are single cycle execution, one accumulator, all Ram locations, hardware stack for storing return addresses; it is a fairly small number of data space which is extended through banking. Moreover data space mapped Cpu, port and peripheral registers and the agenda counter is also mapped in to the data space and writable, it is used to implement indirect jumps. Some of the advantages of using microchip microcontroller are: it needs to give small instructions, Risc architecture, built in oscillator with selectable speeds, easy entry level makes it user friendly, the low cost and reasonable nature of the chips allows every personel to buy it. Additionally, it includes wide range of interfaces including I2C, Spi, Usb, Usart, A/D, programmable comparators, Pwm, Lin, Can and Psp.

Most of the people do not know that from where to buy microchip Pic, there are many modes to buy this Pic, you can have online modes and hand-operated ways. The hand-operated ways are mostly used in buying such items so that one can attach the chip to its system and can check numerous Pics that which one gets fit into the space ready for. On the other hand some people still refers to buy through online channels, there are some online websites which allows you to buy through them. You just have to go for the most proper Pic and can place the order. The items would be delivered to your home. The buying of these microchips Pic are not time provocative nor are they cost consuming, your plentifulness of data get restore in few seconds.




Some of the limitations attached to the usage of microchip Pic could be: it has one accumulator, register bank switching is required to entrance the entire Ram of many devices, operations are not orthogonal, and some of its constructions can address Ram while others only make use off the accumulator.

However, the most recent devices in this technology section have come with some improvements and they do not consist of the similar drawbacks like the old ones. One of the examples of most recent device which comes up in full unblemished usage form is Pic18.

Functions and Advantages of Microchip Pic Microcontroller

RCA To USB Cables

April 8, 2012

selecting a Programming Language for Your Microcontroller

Assembler

Assembler is the most definite language that you'll consider using as you probably won't need to buy any other tools to use it. More than likely the maker will contribute an accumulator for the chip and you won't need any books as all the instructions are in the datasheet and you just start coding.

This route to programming is very easy but you may be setting yourself up for problems later on as:




  1. It is trivial to write short programs.
  2. It becomes progressively more difficult to write large programs.
  3. It seems to be the best choice as it gives the fastest code.
  4. It seems to be the best choice as it gives the smallest code.

Assembler: Fast & small code

There is no doubt that accumulator gives the fastest and most optimized code (your brain is best at optimization than any compiler!) but accumulator is difficult - typically you'll spend ten times as long writing accumulator as you would writing in a high level language.

Assembler / Compiler Trade off

This is the trade off; to write the fastest most optimized code or to get the task solved more quickly.

Another question with accumulator is that to do even the most trivial task you have to think about every aspect of the code and all implications on registers and register flags.

Even development a microcontroller achieve the most trivial task is difficult e.g. For development a loop in accumulator you need to think about which register to use and which instructions all the while reasoning about how those registers should not interact with the loop register/other registers etc.

Assembler: question - changing the target

Another strangeness is when you convert from one microcontroller to an additional one (even in the same gismo family) the accumulator instructions may be changed e.g. More instructions to improve microcontroller performance. So you will have to learn an entirely separate education set when attractive either to a new target microcontroller or attractive to a separate gismo within the same family i.e. Code re-use is not potential unless you stay with one microcontroller (or devices with a similar internal architecture).

High level languages

Hll: Retarget

Retargeting code to an additional one microcontroller is easier since the Hll will know the details of the new target i.e. education set, fuses etc. All you need to worry about is the specific differences between the separate microcontrollers (in the same family this will be setting up the internal peripherals).

The foremost point is that the Hll takes care of the accumulator code needed to do the job.

Hll: Easy to understand.

The most useful aspect of a high level language (Hll) is that the language is written in a form you can of course understand - there are no cryptic accumulator commands that you have to remember and most commands are made up of some engine code instructions - saving you coding exertion (often there are built in libraries of code e.g. Lcd driver, Serial port driver, I2C driver etc

So the Hll makes it easy to write code as it generates the correct accumulator for the target microcontroller.

Hll : Whitespace

You can also make use of white space (areas of no code) to cut off out the varied operations within the schedule - typically accumulator code is just one great big list that is of course very difficult to read - I know there are comments but you need to annotation roughly every line so that someone else can

understand the code.

Hll: Task splitting

One of the best features of a Hll is that you can split tasks into cut off functions that you can combine on them individually (as the Hll takes care of local variables etc.). For accumulator even when using a call education you have to take care of preserving the register state - in the Hll it's all done

for you.

Hll: Code re-use

Once you learn the Hll you will find it easy to read code written by other habitancy and you will be able to re-use code that you have already written whereas with accumulator you will constantly need to analyze the code to see if it fits in with your new functions.

The only decision then is which high level language? There are of course three contenders Basic, C and Pascal - these are the most beloved languages and for beloved microcontrollers there will be an Hll compiler for each one. I'll just list the advantages and disadvantages of each

Basic Advantages

  1. Very easy to learn and use.
  2. A Basic compiler will furnish code that runs fast as a C compiler.
  3. Many in built functions (depending on compiler).
  4. Very beloved - large user base with many example programs.

Basic Disadvantages

  1. Non proper language.
  2. If using an interpreted Hll will run very slowly.

Note: Because the language is not standardized it will be difficult to move code to a new processor target type.

Pascal Advantages

  1. Easy to learn and use.
  2. A Pascal compiler will furnish code that runs fast as a C compiler.
  3. Many in built functions (depending on compiler).

Pascal Disadvantages

  1. Not as beloved as C - so not as many compilers.
  2. A bit wordy - it was originally intended as a teaching language.
  3. Not as flexible as C.

C Advantages

  1. Compiled language - all the time runs fast.
  2. Standardized language (Ansi)- easier to port to separate compilers / target devices.
  3. Many compilers available.
  4. Many in built functions (depending on compiler).
  5. Very beloved - large user base with many example programs.
  6. Used in many separate industries.
  7. Usable at the hardware level as well as higher abstraction levels (although C++ is best for very abstracted programming models).

C Disadvantages

  1. Hard to learn at first.
  2. Strong type checking means you spend time pleasing the compiler (although this protects you from development errors).

You can find more facts from the website here and how to build a website like it here.

selecting a Programming Language for Your Microcontroller

HTC Desire Unlocked Wireless Internet Booster

April 5, 2012

Interfacing a Microcontroller With a Pc Using Rs232 and the Pc Serial Port

Serial Communication

Serial communication is a technique of transmitting data in the middle of two pieces of hardware. The smallest piece of data that is transmitted is the byte. A byte is made up of 8 bits. When data is transmitted in the middle of two pieces of hardware, the bits are sent one at a time. The hardware sends these bits by sending varying voltages over the wires connecting the devices. The sender and the receiver agree on how often a bit (or voltage level) will be sent.

How often a bit will be sent is referred to as baud rate or bits per second (bps). Then with the help of very spoton clocks they can send a series of voltage levels in the middle of each other and then reassmble these voltage levels into bytes.




The question Communicating in the middle of a Pc and a Microcontroller

The Rs232 serial port on a Pc uses +3 to +25 volts to signify a logic level of 0, and -3 to -25 volts to signify a logic level of 1.

Most microcontrollers use Ttl / Cmos logic levels which use 0 to some threshold voltage to signify a logic level of 0, and some threshold voltage to 5 volts to signify a logic level of 1.

In order for the Pc and a microcontroller to successfully recite some logic level translation is necessary.

Using a Ttl / Cmos To Rs232 Converter

There are many companies that establish modules that take care of the required logic level translation. The Ttl / Cmos To Rs232 Converter is one such module. Typically, these modules associate to the Rs232 port on the Pc and associate to the microcontroller's transmit and receive pins. provide 5 volts and ground and you are ready to communicate.

Applications Ideas

Once you have your microcontroller communicating with your Pc it opens up all kinds of possible applications ranging from data loggers, pc based oscilloscopes, controlling your pc from your microcontroller, controlling your microcontroller from your pc, etc.

Interfacing a Microcontroller With a Pc Using Rs232 and the Pc Serial Port

Calcio Serie A Blog News Belkin Wireless Router

March 16, 2012

Hcs08 Microcontroller education Sets Explained

The Full Hcs08 instruction Set

All S08 instructions (arguably all computer instructions) can be concept of as three basic types.

Data movement - a value is read from one location and written to another. All of the load/store instructions are examples of movement from one location to a dissimilar one. One of the locations is usually somewhere in main memory and has an related address, the other is in one of the Cpu registers and has only a name. Facts flow can occur in either direction (depends on the instruction). Besides the load/store instructions that involve a Cpu register and main memory there are several exchange that move (copy) data from one Cpu register to another. There is one instruction, mov, that copies from one memory location to another. There are also a number of instructions that write an implied value (usually ones or zeros) to a Cpu register or memory location. Clra, is an example.




Data processing (Alu) - there are two types; unary and binary. Unary instructions operate on only a particular value obtained from either a Cpu register or a memory location and write it back (the same place) after some modification (processing). Nega is an example. Binary instructions operate on a pair of values which they consolidate in some fashion to furnish a result. These instructions roughly all the time have at least one of the values come from a Cpu register and place the result back in that register. Add is an example. A value is obtained from register A and from a memory location. These values are combined (processed) using the arithmetic increasing operation, and the result is written back in register A

Program-flow altering - where the value of the Pc is (or in the case of conditional branches, might be) changed from its general upward counting sequence. This type of instruction is used to make subroutine calls, code loops, and code if-then-else style agenda constructs, to name a few.

Hcs08 Microcontroller education Sets Explained

What is a Conforming Loan Definition AC Compressor Troubleshooting Barometric Pressure Sensors

March 12, 2012

Usb Microcontroller Communications Architecture for Human Interface gadget (Hid)

The Usb communications architecture is designed to enable computing devices such as desktop Pcs and laptops to interconnect with many other peripheral devices. A Usb uses a two wire serial communications link running at one of three distinct speeds: 1.5 megabits per second (low speed), 12 Mbps (full speed) and 480 Mbps (high speed). Usb devices are categorized into various expedient classes such as display, communication, audio, mass storage and human interface.

The Human Interface expedient (Hid) Class defines base behaviors and functions for touch screen interfaces. The Hid class includes peripherals such as keyboards, mice, trackballs, joysticks, touch pads and touch screens that enable end users to operate and interact with the computing system. Hid also includes provisions for yield directed to the end user. The Hid specification requires one operate endpoint and one interrupt endpoint with the host.

The operate pipe typically handles enumeration and expedient configuration while the interrupt pipe is used for data transfer. Descriptors define a Usb expedient to the host with regard to the type of device, the expedient manufacturer, Usb1.x or 2.0 or 3.0 support, expedient configuration, endpoints quantities and types, etc. Touch screen expedient descriptors tell the host which endpoints and transfer types are supported. In expanding to handling appropriate Usb requests, Hid devices must talk to all appropriate Hid requests. Data must be transferred within defined structures called reports, which can be transferred across either the operate pipe or interrupt pipe.




Hid devices can transfer data stored in reports with the host through the operate pipes. This transfer is typically reserved for configuration data or expedient identification. The Usb specification defines the transfer sequence for the operate pipe, which has a higher level of error checking than other transfer methods. The host application programming interface (Api) calls used to send data through the operate pipe differ from those used for the interrupt pipe. During enumeration, the expedient requests how often it wants the host to ask for the data or send the data. After enumeration is complete, the host schedules data transfers on a periodic basis. If the enumerated expedient is a touch screen, the touch screen Usb bridge or the touch controller (e.g., a controller that supports Usb natively) assembles the coordinates of the finger(s), as well as other related data such as finger width, signal strengths, finger speed and gestures, and shop that data in a buffer. The data is transmitted to the host at the interval specified previously or upon determined events such as a finger's touch.

Usb Microcontroller Communications Architecture for Human Interface gadget (Hid)

Submersible Pump Troubleshooting

March 6, 2012

animated Diy Microcontroller Projects! - Digital proclamation ideas

1.1) Objectives

In this project, we look at how we can implement a "Digital 2.4km Run announcement System".

1.2) invent Methodology The whole invent process can be partitioned into a pyramid as follows.




Specifications and Requirement Capture

Components comprises of Led display, a voice synthesizer, a keypad and an infrared Interceptor.

1) Button on keypad is depressed when the runners are flagged off.

2) The display will show continuously the time lapse at 0.1 second resolution.

3) When the infrared ray over the track of the runner is intercepted, the time at the point of interception will be announced.

4) The time will also be logged on the system.

System Concept

The theory is capable of displaying the time on the Led display once the start button is pressed. At the same time, the infrared interceptor is started, and is continuously checking if its infrared ray is intercepted, and if so, trigger the theory to announce the time of interception to the runners, and make a log of the time of interception to the system. The runner should also be able to see the time they took on the Led display. If the Stop button is pressed, the timer should stop timing, and log the time of disconnection on the system. When disconnected, the infrared interceptor and Led Display are also to be off.

Working Principles

In order to implement such a system, background knowledge about the workings of each component in the theory is required. In this case, we need to know the controlling of the Led display, the voice synthesizer, the infrared interceptor, and the keypad, and ultimately we will show a flowchart on integrating these devices.

Led Display

As found, Leds run on about 2 volts, hence we need a straightforward resistor in series to suck up some of the voltage and limit the current the Led can draw. Assuming an input voltage of 5V and a current of 10 ma, and applying V=Ir, we can find the required resistance as R = V/I = (5 - 2)/.010 = 300 ohms.

To have a brighter Led, I can pick the resistor as 270 ohms allowing more current flow, development the Led brighter. With that, the new current drawn is I=V/R = 3 / 270 = 11ma.

Given a 7 segment Led, the basic configurations looks as follows:

The 7 segment Led tasteless Anode will be adopted because the microchip is now driving up to 8 Leds (segments) at a time off a particular port. Just as each I/O pin has a limit to the amount of current it will source or sink, each port also has a limit. To do the least damage, we are sinking the current to ground rather than sourcing it to 5 volts.

To add more displays, the cathodes from a particular segment of each display are all linked together and then linked to a Pic I/O line straight through a series resistor. The tasteless anode is made controllable by a Pic I/O pin. In this way, the segment value for a given display can be configured and straight through turning on the anode for that display, we can see the message. The same policy can be applied to the other Led displays, and when a convenient timing is chosen, we should be able to see the full display of all Leds without flicker. The convenient timing is chosen by seeing out the time constant of the Led using a datasheet, and from this value, we can pick the approved refresh time such that it is less than the time constant, allowing the Led to appear exciting all the time.

Also a transistor is settled in the middle of the Pic and the tasteless anode to each display. Since the current for the whole display runs straight through this one pin, it could overload a particular I/O line. To overcome this issue, the transistor amplifies the current drive ability of the I/O. To operate, put ground on the I/O pin to turn on the transistor and enable a given display, or put 5 volts on the pin to turn off the transistor and the display.

The frame below shows the case for 4 Led displays:

With this way of using Led displays, we can go for the numbers to display based on the configuration as follows:

Take segment 'dp' as the Msb, and segment 'a' as the least considerable bit, and to enable a particular segment to light up, we must apply a low to the corresponding segment, since it is an active low input. The table below shows the segments which we have to control to display each digit from 0 to 9.

Voice Synthesizer

In order to announce the time of interception to the runners, there is a need to store each digit from 0 to 9 in human voice and depending on the situation, announce the definite time by seeing the location of the voice segment corresponding to the definite digit.

As found, the average human voice frequency is estimated at 2 Khz to 4 Khz. Hence, we need to sample at a Nyquist sampling rate of f(sample)>2*f(voice)= 8 Khz. We pick the minimum sampling frequency as 8 Khz. Given this frequency, it implies that the voice should be sampled every 1 / 8 Khz = 125 us.

The voice corresponding to a particular digit can also be broken down into separate syllabus, and each syllabus should take up equal frequency of sampling. For example, the rate of sampling a particular digit of 3 syllabuses will have each syllabus taking up 8000 / 3 = 2667 Hz To start, we can use the sound recorder in case,granted under Microsoft Windows to store the voice as a wave format. We have to set the settings as 8 kHz, 8 Bit, Mono. Next, we remove the header bytes by using a binary editor such as Hexplorer. After which the voice data corresponding to each digit can be stored in the Eprom, and being referred to as and when needed.

To recover an analogue signal from the digital signal stored in the Eprom, a Digital to Analogue converter is used. The digital signal has to be fed to the analogue converter at a rate of 8 kHz or every 125 us. The output from the D/A is then fed into a Lpf of 4 kHz to remove any noise. The final output is then fed straight through a power amplifier such as Lm386, and straight through current amplification, we can accumulate load matching with the 8 ohm speaker, and get max power output.

Infrared Interceptor

The infrared interceptor is made up of the infrared Led, the infrared detector Gp1U5. The infrared detector contains both the Ir detector and a small circuit that detects a 40kHz modulation. This detector is able to reject noisy light signals and hence has better performance. It works by detecting the modulated infrared light from the Ir Led, and straight through amplifier and band pass filter of 40 Khz, get a clean signal.

If there is any runner crossing, the detector will sense a contrast and we can use the signal to feed into the interrupt pin of the microprocessor which will then announce the time and also make a log on the system.

Keypad

The frame on the left shows the schematics of the 4*4 keypad. The needed outputs can be fed to the Programmable Peripheral Interface 82C55 of the microcontroller for reading the status, and straight through the 82C55, decree the type of interrupt invite to the microprocessor.

In our system, button 1 is designed to start the run, the Led display and the infrared interceptor. Button 2 is designed to stop the run, turn the Led display and infrared interceptor off. All other buttons should not interfere with the doing of the system.

Realization

We use a flowchart to show how these separate devices can work together.

With this done, we have already gotten ourselves a very concrete invent on paper, and it is now time to implement this into product straight through the considerable hardware and software implementation.

Hope my dinky scheme has inspired you with lots of creativity for you to start your very own Diy projects as well.

animated Diy Microcontroller Projects! - Digital proclamation ideas

Heating and Air Conditioning Repair HVAC Compressor Troubleshooting

March 2, 2012

Guide to studying The Microcontroller Embedded ideas

Are you a young school trainee seeing for study data to learn microcontrollers?

Are you a high school / college trainee seeing for facts to create your microcontroller based project?

Are you an old man planning to change your old digital technology based create to a covenant microcontroller based design?




Are you working in an club and want to upgrade your skills for microcontroller and embedded ideas design?

You all are from range of age, expertise and skill levels. But your need is same. Your basic ask is same. Your objective is same. That's to "Learn Microcontroller based design."

You are on right track as you have decided to go along with microcontrollers for your all electronics projects. There is no other good recipe than using a microcontroller in stock design.

Here are the steps and facts for you to get started:

1. Your knowledge and ability:

Every human is unique in the knowledge he has acquired and the abilities he has.

Knowledge indicates the "experience" and quality indicate "time required to solve a create problem"

e.g. I know C language very well but I can't solve a "Array Sorting program easily."

This indicates having knowledge of C programming is not adequate but one should have good quality to "Analyze and solve the problem statement".

And this is the key and most foremost feature required while working with any microcontroller based embedded create system.

In other word this quality to solve problems is called as "Logic of creating solutions".

2. Hardware & Software

Microcontroller based embedded ideas designing is combination of hardware and software.

Microcontroller is a small Integrated Chip (Ic) and is the hardware part of the system. This small chip called microcontroller has facility to store a "Program" inside it. This is called as software.

You as a stock designer, must have both expertise. Lets understand this by one example:

"You have been assigned a simple task to create and create a stock to display room temperature"

This scheme will need following components:

1. The climatic characteristic sensor (e.g. Lm35)

2. A Microcontroller (e.g. Atmega8 Avr) to read the data from climatic characteristic sensor.

3. A 16 chars by 2 lines (16x2) Lcd display

4. Dc Voltage regulator 5V (7805 based)

Once you have this set ready, then its time to generate a circuit / schematics for this.

Here is the point where you start studying about internals of microcontroller Atmega8.

Learn the hardware aspect of this microcontroller and then the software. The software writing is using Assembly or C Language.

3. Tools and equipments

A Pc / Laptop, installed with Ide (development environment), Isp Programmer hardware, Starter kit / target board and some books or reference manuals or a Computer based Tutorial.

In above example we have excellent Atmega8 microcontroller. This is made by Atmel and is from Avr house of controllers. This is 8 bit controller.

WinAvr/ Avrstudio is used as Ide for writing program.

There are many Isp programmers (hardware) ready in the market.

Starter kit helps you to experiment and test your program by downloading (flashing) the advanced source code into the Atmega8 microcontroller.

Books, reference manuals and Computer based tutorial will help you to get started with the new and sharp world of microcontrollers.

There are any other microcontrollers ready like Pic, 8051, Arm, etc.

Every house has some unique features to offer and you have to conclude which feature you need the most.

Cost of the microcontroller is also an foremost factor in selecting. Other factors but foremost are availability of tools like compilers, Ides, starter kits, programmers, books and reference material.

Guide to studying The Microcontroller Embedded ideas

Honeywell Pressure Sensor

February 11, 2012

Is the Pic 16F84 Dead? - The Most beloved Microcontroller Of All Time

Is the 16F84 too old for your electronic projects?

If you don't know what a 16F84 is then you have never heard of Microchip(R) - a business that creates powerful stand alone microcontrollers. A microcontroller is naturally a very small computer but unlike acceptable computing systems all things is contained within the device itself. There are no external peripherals such as Ram, Eprom, I/O devices.

If you are finding for an easy way to generate your own projects then microcontrollers fit the bill because they:






  • Are very Small (some have 8 pins and even smaller have 5).
  • Have many internal peripherals.
  • Are based on reprogrammable internal memory
  • Have built in timers.
  • Have internal Ram.

In short they are ideal for controlling your projects -- all you have to do is schedule them.

This is one of the spectacular advantages over doing assorted designs since if you make a mistake in a assorted make you will have to debug and re-wire. With a microcontroller you can just re-program the device in circuit (having simulated the code to outline out the mistake first).

Even good is the fact that you can make developed projects, because internally the peripherals control quite fast e.g. You could generate a 50Mhz frequency counter using no external components (except a display).

Languages

In fact you can schedule them in many distinct languages but the most favorite is engine code. The reckon for it's popularity is the fact that MicroChip(R) created all the tools needful for improvement of a engine code schedule for free so you will find many many examples of assembler code on the internet.

Personally I don't like engine coding in assembler (although I can use it if needed e.g. For speed) because it takes a huge estimate of time compared to using a high level language. In fact I would say it takes 10 times as long with assembler. Also assembler is a totally unstructured language; meaning that it is very hard to enounce i.e. If you want to add a module then you probably have to narrate the whole of the code whereas with a high level language areas of code are protected recovery you from production mistakes.

Microchip has released many hundreds of distinct devices (now vastly improved over the 16F84) but the basal performance of each one is based on the original make and even if you only studied the original 16F84 (Ok there was a 16C84) you would have a pretty good idea of how all of the range of devices work.

That is the great power of the MicroChip(R) devices i.e. You learn something using one device and you are adding to your knowledge for the whole range - for instance to schedule a 12F675, 16F84, 16F88 or 16F877 you need to know only about Icsp because that interface is shared across the whole range. This means your studying curve is greatly reduced.

Of policy there are some specialized peripherals that are for expert developers such as driving the pins of a dedicated Lcd but you only need to join on the acceptable peripherals (good examples are in the 12F675, 16F88, 16F628 and 16F877).

Peripherals

In fact there are about 15 acceptable internal peripherals for the modern (16F range) device whereas the 16F84 has only one.

This is why I believe that the 16F84 has had a good running but it's now time to say goodbye to it. Other reasons for this are that it has a quarter the memory size of a 16F88 and now costs about 5 times as much.

Note The 16F88 and 16F628 borrow heavily from the 16F84 even having the same pinout so you won't have any problem if you are already used to a 16F84.

Summary

The 16F84 is probably too old for serious make because there are newer (backwards compatible) devices that will allow you to generate far more capable projects.

Is the Pic 16F84 Dead? - The Most beloved Microcontroller Of All Time

Natural Gas Compressor Home Made Baby Shower Invitations Ductless Air Conditioner

February 5, 2012

C Programming For the Pic Microcontroller

The C programming language without fail reigns consummate in the embedded electronics community. Microprocessors can be found in 99% of all electronic appliances these days from car radios to cookers and it is the software that the microprocessors run that gives personality to the whole design.

Many hobby electronic enthusiasts cut their teeth on microprocessors by studying assembly language. Absolutely the Pic Microcontroller from Microchip is the processor of choice for many beginning on this path.

Assembly language presents a free of charge entry into this store - ideal for the beginner on a limited budget. However assembly language is somewhat laborious if a complex task needs to be coded. Now free of charge C compilers are ready for download, so students can begin their programming palpate in a high level universal language that can be used on many other high and low end microprocessors.

Assembly language is limited to use with one singular processor house and if the engineer migrates to another processor, he has to start again from scratch. C is a universal language and it is the ill of the compiler designer, not the engineer, to make sure the C code is compatible with the processor.

Most software written by non-hobbyists is written in C. Schedule snippets can be collected and used over many projects with separate processors until whole libraries of code are amassed. Code writing then becomes a simple task of choosing which code functions are needed and gluing them together - a task that the C programming language is particularly superior to.

Simple C for the Pic microcontroller gets anyone with limited or no palpate of C or Pic microcontrollers programming in as limited as half a day.

C Programming For the Pic Microcontroller

Mail Order Chocolate Aston Villa FC Goals Clip

December 10, 2011

The 12F675 - A Pic Microcontroller task Guide

The 12F675 is one of the smallest Pic Microcontrollers - it's a tiny gadget with 8 pins but it's packed with peripherals and it even has a built in 10bit Adc which can read analogue inputs from 4 pins.

It has the following internal peripherals:

Basic Microcontroller

1. Two timers.

2. An analogue comparator.

3. 10 bit Adc.

It also has an internal oscillator and internal reset circuit. This means the gadget uses minimal external components to make it work (other devices need an external crystal oscillator). Of policy it also has the usual internal programming memory, Eeprom and Ram needed for programming.

Ideas for projects:

1. 4 channel volt meter.

2. Multi channel Servo controller.

3. Temperature controller.

4. Inductance meter.

5. Touch lamp.

6. Courtesy light time delay.

Note: To get data out of the gadget you can implement a serial Rs232 transmit interface to your Pc.

Why use it?
One theorize is that because of its size its easy to put into restricted spaces e.g. For a model aircraft or model trains and it's cheaper than the larger devices.

Note: The 12F629 is the same gadget without the Adc - so it's even more cost effective.

So it's useful in designs that you would not commonly think of using a microcontroller for instance you could make a touch lamp dimmer - Note using the microcontroller means you can make far good functionality than using assorted hardware (and even change its programming later on).

With a lamp dimmer you could have an auto off delay function e.g. If no operation for an hour then turn off.

State machines
You could also implement a state machine for more complex control of the functionality e.g. Pressing once moves to the next dimming level in the current direction while press and hold changes the dimming direction.

Using a state machine while not trivial lets you control complex carrying out which you could not perform (without a great deal of effort) using assorted hardware - and the advantage of using the microcontroller is that if you get it wrong you just re code your software and test it again.

Note: The 12F675 and 12F629 use Flash programming memory i.e. They are re-programmable - you can change their functionality instantaneously with No re-wiring.

The only problems are:

1. You need to agenda the device.

2. You need a programming language.

Programming the Device
Surprisingly you can agenda the gadget using the approved 4 pin Pic serial interface - Icsp (In Circuit Serial Programming) and with meticulous create you can even join together your programmer to the same pins that your circuit uses.

Programming language
The programming language commonly recommended is accumulator and there are good reasons for using accumulator - e.g. Very fast code and smaller final code size but I would propose using a high level language such as Basic or C

This is because for accumulator you need to work at such a low level that you spend a lot of effort to do trivial tasks and this is good left to the high level language.

For the example mentioned setting up and maintaining a state machine would be very difficult in accumulator but much easier in C.

The 12F675 - A Pic Microcontroller task Guide

Wireless Internet Cameras HVAC Compressor Troubleshooting

November 28, 2011

About Microcontroller

The microcontroller is a extra type of microprocessor and it integrates the components of microprocessor in single chip which builds a single integrated circuit, it contains the processor core, input/output peripheral and these microcontrollers needs the devices to get the data from inputs. The microcontroller can be broadly classified as three types as 8-bit, 16-bit, and 32-bit microcontroller.

The 8-bit microcontroller consists of internal buses and Alu. The Alu is an arithmetic and logic unit. It performs arithmetic operations like addition, subtraction and logical operations like And, Or gate operations. The microcontroller commonly contains several estimate of normal purpose input/output pins. Hence, when normal purpose I/O Pins are referred to an input state, they used to read the sensors and when it is configured to production stage. The pins can drive devices as Leds. The architectures of microcontroller have some designs consist of normal purpose processor with more estimate Ram, Rom or I/O functions.

"Basic Microcontroller"

Interrupts:
Interrupt used in the microcontroller is used to wake up the device from a low power sleep mode and these interrupt sources are device dependent.

Programming:
Generally, many micro-controllers were programmed only in assembly language, but nowadays assorted high-level programming languages can also be used for programming of microcontroller. Hence, the programs of microcontroller should be fit in the available on chip agenda memory and the memory may be read-only memory or flash read only memory. In microcontroller to change high-level and accumulator language codes into motor language, assemblers and compilers are used.

Features:
1. Typically microcontroller includes a Cpu, Rom, Ram, and timers.
2. A microcontroller is independent and self-contained.
3. It is designed for a specific task to control the single system.
4. It is typically designed using Cmos.

Applications of Microcontroller:
1. Blood cell recorder cum analyzer, Ecg display cum recorder and inpatient monitoring system.
2. Some of communication systems like mobile phones, cable Tv, and Fax machines.
3. Peripheral devices of a computer like Lan Controller, Dram Controller, laser printer Controller.
4. It is also used in automotive applications like breaking system, and a dynamic ride control
5. Crt display controller, a spectrum analyzer, frequency analyzer and so on.

Hence the microcontroller contains its own clock, parallel ports, peripheral functions and especially it contains the own memory. In the Pic microcontroller, it contains both the Ram memory to store only the data and flash memory where the instructions are stored. Additionally, it also contains distinct kinds of instructions set and serial communication functions.

About Microcontroller

Zune MP3 Players HVAC Compressor Troubleshooting Home Made Air Conditioner

November 21, 2011

selecting a Programming Language for Your Microcontroller

Assembler

Assembler is the most certain language that you'll think using as you probably won't need to buy any other tools to use it. More than likely the manufacturer will contribute an accumulator for the chip and you won't need any books as all the instructions are in the datasheet and you just start coding.

Basic Microcontroller Architecture

This route to programming is very easy but you may be setting yourself up for problems later on as:

  1. It is trivial to write short programs.
  2. It becomes progressively more difficult to write large programs.
  3. It seems to be the best choice as it gives the fastest code.
  4. It seems to be the best choice as it gives the smallest code.

Assembler: Fast & small code

There is no doubt that accumulator gives the fastest and most optimized code (your brain is great at optimization than any compiler!) but accumulator is difficult - typically you'll spend ten times as long writing accumulator as you would writing in a high level language.

Assembler / Compiler Trade off

This is the trade off; to write the fastest most optimized code or to get the task solved more quickly.

Another problem with accumulator is that to do even the most trivial task you have to think about every aspect of the code and all implications on registers and register flags.

Even development a microcontroller accomplish the most trivial task is difficult e.g. For development a loop in accumulator you need to think about which register to use and which instructions all the while thinking about how those registers should not interact with the loop register/other registers etc.

Assembler: problem - changing the target

Another mystery is when you turn from one microcontroller to an additional one (even in the same gismo family) the accumulator instructions may be changed e.g. More instructions to heighten microcontroller performance. So you will have to learn an entirely dissimilar study set when lively whether to a new target microcontroller or lively to a dissimilar gismo within the same family i.e. Code re-use is not possible unless you stay with one microcontroller (or devices with a similar internal architecture).

High level languages

Hll: Retarget

Retargeting code to an additional one microcontroller is easier since the Hll will know the details of the new target i.e. study set, fuses etc. All you need to worry about is the definite differences between the dissimilar microcontrollers (in the same family this will be setting up the internal peripherals).

The foremost point is that the Hll takes care of the accumulator code needed to do the job.

Hll: Easy to understand.

The most beneficial aspect of a high level language (Hll) is that the language is written in a form you can in effect understand - there are no cryptic accumulator commands that you have to remember and most commands are made up of some motor code instructions - recovery you coding effort (often there are built in libraries of code e.g. Lcd driver, Serial port driver, I2C driver etc

So the Hll makes it easy to write code as it generates the accurate accumulator for the target microcontroller.

Hll : Whitespace

You can also make use of white space (areas of no code) to separate out the discrete operations within the schedule - typically accumulator code is just one great big list that is in effect very difficult to read - I know there are comments but you need to commentary almost every line so that man else can

understand the code.

Hll: Task splitting

One of the best features of a Hll is that you can split tasks into separate functions that you can join on them individually (as the Hll takes care of local variables etc.). For accumulator even when using a call study you have to take care of preserving the register state - in the Hll it's all done

for you.

Hll: Code re-use

Once you learn the Hll you will find it easy to read code written by other habitancy and you will be able to re-use code that you have already written whereas with accumulator you will permanently need to analyze the code to see if it fits in with your new functions.

The only decision then is which high level language? There are in effect three contenders Basic, C and Pascal - these are the most popular languages and for popular microcontrollers there will be an Hll compiler for each one. I'll just list the advantages and disadvantages of each

Basic Advantages

  1. Very easy to learn and use.
  2. A Basic compiler will furnish code that runs fast as a C compiler.
  3. Many in built functions (depending on compiler).
  4. Very popular - large user base with many example programs.

Basic Disadvantages

  1. Non standard language.
  2. If using an interpreted Hll will run very slowly.

Note: Because the language is not standardized it will be difficult to move code to a new processor target type.

Pascal Advantages

  1. Easy to learn and use.
  2. A Pascal compiler will furnish code that runs fast as a C compiler.
  3. Many in built functions (depending on compiler).

Pascal Disadvantages

  1. Not as popular as C - so not as many compilers.
  2. A bit wordy - it was originally intended as a teaching language.
  3. Not as flexible as C.

C Advantages

  1. Compiled language - always runs fast.
  2. Standardized language (Ansi)- easier to port to dissimilar compilers / target devices.
  3. Many compilers available.
  4. Many in built functions (depending on compiler).
  5. Very popular - large user base with many example programs.
  6. Used in many dissimilar industries.
  7. Usable at the hardware level as well as higher abstraction levels (although C++ is great for very abstracted programming models).

C Disadvantages

  1. Hard to learn at first.
  2. Strong type checking means you spend time pleasing the compiler (although this protects you from development errors).

You can find more facts from the website here and how to build a website like it here.

selecting a Programming Language for Your Microcontroller

Screw Compressor Troubleshooting Best Ant Killer Variable Frequency Drive Basics

November 18, 2011

Hcs08 Microcontroller education Sets Explained

The Full Hcs08 instruction Set

All S08 instructions (arguably all computer instructions) can be concept of as three basic types.

Basic Microcontroller Tutorial

Data movement - a value is read from one location and written to another. All of the load/store instructions are examples of movement from one location to a separate one. One of the locations is usually somewhere in main memory and has an associated address, the other is in one of the Cpu registers and has only a name. Data flow can occur in either direction (depends on the instruction). Besides the load/store instructions that involve a Cpu register and main memory there are some exchange that move (copy) data from one Cpu register to another. There is one instruction, mov, that copies from one memory location to another. There are also a number of instructions that write an implied value (usually ones or zeros) to a Cpu register or memory location. Clra, is an example.

Data processing (Alu) - there are two types; unary and binary. Unary instructions operate on only a singular value obtained from either a Cpu register or a memory location and write it back (the same place) after some modification (processing). Nega is an example. Binary instructions operate on a pair of values which they consolidate in some fashion to furnish a result. These instructions roughly always have at least one of the values come from a Cpu register and place the succeed back in that register. Add is an example. A value is obtained from register A and from a memory location. These values are combined (processed) using the arithmetic expanding operation, and the succeed is written back in register A

Program-flow altering - where the value of the Pc is (or in the case of conditional branches, might be) changed from its normal upward counting sequence. This type of instruction is used to make subroutine calls, code loops, and code if-then-else style program constructs, to name a few.

Hcs08 Microcontroller education Sets Explained

Make Homemade Air Conditioner Electric Motor Drives Air Conditioning Compressor Troubleshooting