
source:engineersgarage.com


Circuit description
This ambit its not address any abstracts to the telecard. The ATtiny26 apprehend the 16 aboriginal bytes of telecard and afresh abundance them to centralized eeprom of ATtiny26.
Back you admit any telecard to the aperture (telecard`s base) it will apprenticed the about-face SW1. The ATtiny it will acquire that new agenda admit in the aperture and go to apprehend it. Temporary will save the 16 aboriginal bytes of the agenda to the RAM and afterwards the ATtiny will chase in centralized eeprom to see if this telecard is registered to the system. if not, it will aces the Red LED. The ATtiny acquire 8 groups of 16 bytes each, arbitrary 8*16=128 bytes of eeprom memory.
The ATtiny of this ambit its alive with centralized RC oscillator at 1MHz, that is the absence ambience from the factory.
1. Annals a telecard to the system:
With any telecard in to the slot, columnist the SW2 to annals the agenda to the system. The ATtiny will chase the centralized eeprom for abandoned anamnesis accumulation (1 group=16 bytes with $0F values). If there is abandoned group, it will apprehend the 16 bytes from RAM and abundance them to the eeprom. Then, the ATtiny will reboot, displace the telecard, apprehend it afresh and analysis if the agenda is registered (by analyze the 16 bytes of telecard, with 1 accumulation at the time, with centralized eeprom) .
Now it will awful the Red LED and aces the blooming LED because we acquire annals this telecard to the system. At the aforementioned time it will arm the broadcast affiliated to PB6 pin via BC547.
The centralized eeprom of ATtiny26 is 128 bytes. So, we can annals up to 8 telecards (keys) to this memory.
(8 telecards)*(16 bytes for anniversary telecard)=128 bytes of centralized eeprom
2. Unregister an registered telecard from the system:
If for some acumen we don't appetite to use any of 8 registered telecard, we can unregister it from the system. We acquire to admit this agenda to the slot, the ATtiny acquire it (by aces the blooming led). If we columnist the SW3, the ATtiny will chase to centralized eeprom to acquisition were the 16 bytes are stored and annul them by address the amount $0F to this anamnesis group. Now the ATtiny will reboot, apprehend afresh the telecard, analyze the aboriginal 16 bytes of the agenda with the centralized eeprom and because we acquire unregister this agenda it will aces the red LED. This telecard is unregistered now. We can annals the agenda afresh if we appetite to, by chase the footfall 1.
3. Abolish absolute centralized eeprom of ATtiny26:
If we acquire annals 8 telecards to the arrangement and will try to annals 1 added (9th), back we columnist SW2 to annals the card, the ATtiny it will beam the Red and Blooming LEDs 4 times alternately. The alone way to annals some added telecard, is to unregister some one of 8 registered cards (step 2.) or to abolish absolute eeprom (writing the amount $0F to all locations). To abolish absolute eeprom (128 bytes 0-127) we acquire to columnist the SW3 button with NOT any agenda central to the slot, for 2 seconds, to ensure the ATtiny that we are not columnist the button SW3 by asccident . At this case the ATtiny it will beam the Red LED 4 times. Afterwards that, the centralized eeprom of ATtiny it will cleared.
The ethics of absence centralized eeprom bytes are $FF. If we admit the telecard with amiss pins position (reversely), the ATtiny will apprehend 16 bytes with $FF ethics because of centralized pullup resistor of PB4. If we let the eeprom to absence amount ($FF), back we admit any agenda (anything with telecards dimensions) aloof to columnist the about-face SW1, the ATtiny will apprehend 16 bytes with $FF amount (because centralized pullup resistor of PB4) and will arm the relay. By set the eeprom to $0F value, at the appearance of programming the safety_lock.eep book of ATtiny, we assure the arrangement from this mistakes.
You can alter the $0F amount of the antecedent cipher with the amount of your choice, for archetype $AB or $CF etc. Remeber to alter all the $0F ethics of the antecedent code, not alone the 128 bytes of eeprom. The telecard abject and the capital ambit are body them to altered boards for added article .

The Light Emitting Diode (LED), finds its place in many applications in this modern electronic fields. One of them is the Seven Segment Display. Seven-segment displays contains the arrangement of the LEDs in “Eight” (8) passion, and a Dot (.) with a common electrode, lead (Anode or Cathode). The purpose of arranging it in that passion is that we can make any number out of that by switching ON and OFF the particular LED’s. Here is the block diagram of the Seven Segment LED arrangement.
Pin configuration of a seven segment display:
LED’s are basically of two types:
For the discussion purpose, we use CC LED, where by just reversing the logical voltages we can implement the same for CA LED also.
In a CC LED, all the 8 legs (’a’ through ‘h’) are of anode type and the common cathode will be connected to the GND of the supply. By energizing any of the legs with +5 Volts will lead to switch the correspondent segment ON. In the microprocessor binary system, 0Volts will be considered as Binary 0, and 5Volts will be considered as Binary1. Considering these two condition, we can make an arrangement as the microcontroller gives OUT the 0s and 1s through its ports, which is connected to the 8 legs of the LED. Of course, we can control the Port Output; implicitly we can Switch-ON required legs of the display.
There 2 methods of interfacing LED with the Microcontroller Intel 8051/8951.
The difference between the two main methods is simple and clear. In both the cases, microcontroller communicates with external world through its ports. But, in the 1st case, we connect all the 8 pins of the port directly to the LED and control the voltage through the ports manually to display the desired number. But, in the second case, we send the BCD of the number that we wanted to display to a middleware IC 7447, the BCD to LED code converter, which by itself gives out the correspondent 7 segment codes to the LED.
Here we explain using lookup table. Click here for the method “using 7447 decoder”
Using 7447 decoder:
The IC7447 is a BCD to 7-segment pattern converter. This setup is the advanced form of the
Circuit diagram for interfacing Common Anode 7-Segment Display
Circuit diagram for Common Cathode 7-Segment Display
Program:
This program displays characters 0 through 9 on seven-segment display
using IC 7447 as the middle wear.
again: mov a,#00h ; Start form zero
up: mov p2, a ; Move to Port 2
mov r3,#255 ; Delay
D1: mov r1,#255
D: djnz r1,D
djnz r3,D1
inc a
cjne a,#0ah,up
sjmp again
Via : http://electrofriends.com/
Robotic Car is a miniature prototype car powered by batteries whose various movements can be control either manually or automatically, or the combination of both. Here the command is given through keyboard; it would have been better if we used IR remote control or something of that kind rather than using keyboard for commanding. However, by realizing the complexities we have made simple using keyboard.
Block diagram of the project:
Some photographs of this model:
Robotic car model
Robotic car model
Project Description:
Keyboard section:
There are six switches in this section. They are
Circuit diagram of keyboard is shown bellow.
Keyboard circuit of the Robotic car
Car section:
There are many sub sections in this section. They are
Motor:
We are using a 5V dc motor to drive the vehicle. The speed of the vehicle and its strength is controlled by the proper use of pulley. The rear wheel of the vehicle is connected to this motor through a pulley. This motor is meant for moving the vehicle both in forward and backward direction. Microcontroller (8051) controls the forward and backward movement of the vehicle in the following manner:
Circuit diagram of Motor connection
Here in the above circuit, T1, T2, T3, T4 are the NPN power transistor (2N3055). A0, A1, A2, A3 are the signals coming from the micro controller. With the specific combination of A0, A1, A2, A3 we can change the direction of rotation of motor as follows:

The present concept implements controlling of pump which pumps water from the sump (underground tank) to the overhead tank, using 8951 microcontroller.
The control panel, i.e. the main control unit of the system which consists of the primary control switches, pump indicator, siren and level indicators. The visual example of how switches And the indicators can be placed as shown the figure below.
Front view of the model
In the figure shown above there are total of nine LEDs, four of which indicates the water level in the tank, another four indicates the water level in the sump and one LED indicates whether the pump is ON/OFF. It also consists of three switches.
Description :
As you can see in the above diagram, port 0 is exclusively used as an input port which takes the information regarding the water level in the sump as well as in the overhead tank.
Port 1 is used as output port which is connected to the indicator that indicates the water level in both the tanks.
Port 2 is used as in/out port, it takes the input from switch 2 and switch 3 and gives the output which is connected to pump indicator, siren and the relay which controls the switching of the pump.
Working of the system:
There are two modes of working for the system
Which is controlled by switch 2 (refer control panel diagram)
Manual mode:
When the system is active and in manual mode, it only indicates the water levels in the tanks and it doesn’t control any working of the pump. To activate the pump in manual mode switch 3 is used.
In this mode the operator should manually control the working of the pump. As in case if the tank is full, operator should switch of the pump which is not the case when compared to auto mode.
Auto mode:
When the system is active and in auto mode, it only indicates the water levels in the tanks and it controls the working of the pump.

A Brief Description:
This a simple project with efficient hacking prevention from Brute Force etc. The basic user lock is of 5 Digits and Master Lock is of 10 digits so its not easy for an intruder to break the lock unless you keep the code simple.
The input is taken from a 4×3 Keypad (please see the schematic for more information) and Display the user input on a 2×16 LCD. A pin is assigned as output for activating and deactivating the lock. For demonstration i have connected an LED to that pin.
From user side:
The user has two options either he/she can use its own 5 digit code or use the default 5 digit code. If user has to do setup his own code, then he has to enter “12345″ and press ‘#’. After this.. controller will ask for 10 Digit master password which is preprogrammed in the controller. Entering master lock, user can enter the new 5 digit code for the lock and press ‘#’ to save it.
Using the Keypad:
Keypad has 12 keys (4×3) starting from 1,2,3,4,5,6,7,8,9,*,0,# (please see the schematic for layout). Numeric keys are used for entering numbers. ‘*’ is used as the Cancel key and ‘#’ is used as the Enter key.
Download File Information:
Download the source codes by clicking here
By Ajay Bhargav
http://rickeyworld.info

Here the program is written in C and hex file is generated using Keil C compiler. You can directly use ‘Clock.hex’ file.
Download the source codes by clicking here
By Ajay Bhargav
http://rickeyworld.info

The AT89Sxx learning board features,
Hardware
The board design is kept as simple as possible so that everone can make the learning board easily. The schematic shown below shows the complete hardware schematic of the AT89Sxx learning board. PORT0, PORT1, PORT2, and PORT3 are available for interfacing external devices. P3.0 and P3.1 are being used for RS232 interface.
Components:
R1 330 1/4W +/-5%
R2 10K 1/4W +/-5%
R3-10 10K 1/4W +/-5% (for pull up on P0)
C1 1000uF/16V electrolytic capacitor
C2 100uF/16V electrolytic capacitor
C3 100nF multilayer or ceramic
C4 10uF/16V electrolytic
C5,C6 33pF ceramic
D1 1N4001 / 1N4002 silicon rectifier diode
D2 LED
U1 LM7805, voltage regulator
U1 AT89S51, AT89S52 or AT89S53
X1 Crystal 1MHz – 33MHz (11.0592MHz is suitable for standard BAUD rate generator using timer1, says 9600 )
DB25 parallel port, 25pins connector