Blogger Tips and TricksLatest Tips For BloggersBlogger Tricks

Wednesday 19 February 2014

“PORTABLE USB TO USB DATA TRANSFER DEVICE USING MICROCONTROLLER”


 
PAPER TITLE:
“PORTABLE USB TO USB
DATA TRANSFER DEVICE USING MICROCONTROLLER”
B.OBULIRAJ
8124395522
ABSTRACT

A Flash Drive is a type of portable USB drive that stores and transfers data located on your computer working similar to floppies in that information can be stored and written on them. This device enables you to read, write, copy, delete and move data from USB flash drives to your hard disk drive and back again. USB interfaces are everywhere today, with low cost Flash memory drives and all kinds of USB peripherals being readily available, but these are very much focused on the PC market.
Attempts to make use of these peripherals in the 8 and 16 bit embedded market mean that easy way to access the USB flash drive without using PC. Compare peripherals using in PC market with this system, it is ease to implement, reduced cost and minimum power consumption.
Here the heart of our system is AT89C51 microcontroller which does all the controlling activities and required operations. Along with AT89C51 microcontroller we used USB host controller which is the bridge between the AT89C51 microcontroller and USB flash drive. USB flash drive has predefined file system like FAT32. In order to Data transfer and access we were used the SCSI commands. We have used hardware switches to decide what action to be performed (Read/Write). We have used LCD to display the data/filename. To develop, test and debug this application we used MP lab IDE which includes editor, compiler, Simulator and Debugger.















BLOCK DIAGRAM:






block description
:           Usually we use PC to transfer data from one USB device to another USB device. This project is used to make the process simpler and easier. It is essential everywhere.
            This project consists of Microcontroller, USB host controller, LCD display, Oscillator, UART interface, Control keys, Battery.

USB HOST CONTROLLER:
            The USB host controller is used to detect the USB device and to send the signal to the microcontroller. After getting commands from microcontroller, the USB host controller  automatically transfers the data from one USB devices to another USB device through serial communication (UART).

MICROCONTROLLER:
            The microcontroller accept the signal from the USB host controller and show the acknowledgment to the LCD display. When the USB devices are detected the microcontroller gives the commands to the USB host controller to select the source and destination ports.

CONTROL KEYS:
            The two control keys are used to assign the source or destination ports. When the source and destination ports are assigned, the datas are transferred from source to destination.

LCD DISPLAY:
            LCD displays is 16x2 along with the LCD controller. 16X2 means 16 characters per line and with 2 such line. A standard controller chip can receive data from a microcontroller and communicate with the LCD. It consists of 3 control lines and 8 data lines. The pins from LCD display 7 t0 14 is connected to port1 of microcontroller.           By this data will be communicated between these pins and it will be displayed on the LCD display.

OSCILLATOR:
            The oscillator is used to give the external clock signal to  the microcontroller. Pin 18 and 19 are used for external clock signals. The frequency range is 12MHz.


 cIRCUIT DIAGRAM:




                                               


UART INTERFACE:
            The UART interfacing is used to make communication between the microcontroller and USB host controller. The communication between these two components is serial communication.

CIRCUIT DESCRIPTION:
           
            In AT89C51 microcontroller, it has 40 pins. In these 40 pins 10 and 11 pins are used for input and output. Pin 10 from port3 of microcontroller is connected to VDIP2 pin 14 for receiving the data from VDIP2. Similarly pin 11 from  port3 of microcontroller is connected VDIP2 pin 16 for transferring the data from VDIP2. The communication between these pins is a serial communication. The port1 pins 1 to 8 are connected to the data pins 7 t0 14 on LCD display. Pin 10 receives data from pin 14 of USB host controller, send an acknowledgement on the LCD display. 8051 has on chip oscillator. Only the frequency determining component to be connected externally. 8051 can work up to 12MHz.

  AT89C51 MICROCONTROLLER:
         
          The AT89S51 is a low-power, high-performance CMOS 8-bit microcontroller with 8K bytes of in-system programmable Flash memory. The device is manufactured using Atmel’s high-density nonvolatile memory technology and is compatible with the indus- try-standard 80C51 instruction set and pinout. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory pro- grammer. By combining a versatile 8-bit CPU with in-system programmable Flash on a monolithic chip, the Atmel AT89S52 is a powerful microcontroller which provides a highly-flexible and cost-effective solution to many embedded control applications.The AT89S51 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/counters, a six-vector two-level interrupt architecture, a full duplex serial port, on-chip oscillator, and clock circuitry.
In addition, the AT89S52 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port, and interrupt system to continue functioning. The Power-down mode saves the RAM con- tents but freezes the oscillator, disabling all other chip functions until the next interrupt or hardware reset

Features OF AT89C51:
Ø    Compatible with MCS®-51 Products
Ø     8K Bytes of In-System Programmable (ISP) FlashMemory                                   Endurance: 10,000 Write/Erase Cycles
Ø     4.0V to 5.5V Operating Range
Ø    Fully Static Operation: 0 Hz to 33 MHz
Ø     Three-level Program Memory Lock
Ø     256 x 8-bit Internal RAM
Ø     32 Programmable I/O Lines
Ø     Three 16-bit Timer/Counters
Ø     Eight Interrupt Sources
Ø     Full Duplex USART Serial Channel
Ø     Low-power Idle and Power-down Modes
Ø     Dual Data Pointer
Ø     Power-off Flag
Ø    Fast programming time











ARCHITECTURE OF AT89C51:




BATTERY:
           
            A '''nine-volt battery''', sometimes referred to by its original designation as a '''PP3  is shaped as a rounded rectangular prism and has a nominal output of nine volts. Its nominal dimensions are 48 mm × 25 mm × 15 mm ( standard 1604A). The PP3 appeared when portable (transistor radio|transistorized radio receivers) became common, and is still called a "transistor" battery by some manufacturers. The battery has both the positive and negative terminal on one end. The negative terminal is fashioned into a snap fitting which mechanically and electrically connects to a mating terminal on the power connector. The power connector has a similar snap fitting on its positive terminal which mates to the battery.
This makes battery polarization obvious since mechanical connection is only possible in one configuration.             The clips on the 9-volt battery can be used to connect several 9-volt batteries in series.  One problem with this style of connection is that it is very easy to connect two batteries together in a short circuit, which quickly discharges both batteries, generating heat and possibly a fire. Multiple 9 volt batteries can be snapped together in series to create higher voltage.
            Inside a PP3 there are six cells, either cylindrical (alkaline battery) or flat (Zinc-carbon battery) type, connected in series. Some brands use welded tabs internally to attach to the cells, others press foil strips against the ends of the cells. 
Connectors:The connector (snap) consists of two connectors: one smaller circular (male) and one larger, typically either hexagonal or octagonal (female).  The connectors on the battery are the same as on the connector itself -- the smaller one connects to the larger one and vice versa.
Other Battery: There are other nine volt batteries, such as PP7 and PP9. These date from the days of early (transistor radio) and are now less common than PP3.  In the days of (Vacuum tube|valve) radios which used (battery (vacuum tube)|batteries designed specifically for vacuum tubes), there was a nine volt (grid bias) battery which had tappings for various voltages between 1.5 and 9.      
            Rechargeable (Nickel-cadmium battery|NiCd) and (Nickel-metal hydride battery|NiMH) batteries have various numbers of 1.2 volt cells.  Lithium versions use three 3.2 V cells - there is a rechargeable lithium polymer version. There is also a Hybrio NiMH version that has a very low self- discharge rate (85% of capacity after 1 year of storage).

LCD INTERFACING:
           
            A liquid crystal display (LCD) is a thin, flat display device made up of any number of color or monochrome pixels arrayed in front of a light source or reflector. It is utilized in battery-powered electronic devices as it uses very small amounts of electric power. LCDs with a small number of segments, such as those used in digital watches and pocket calculators have individual electrical contacts for each segment. An external dedicated circuit supplies an electric charge to control each segment.

Figure2.11. General Diagram Of  LCD Display

CIRCUIT  DIAGRAM:



            Figure 2.12.A 16 Character x 2 Line LCD Module

CIRCUIT DESCRIPTION:
            The LCD panel's Enable and Register Select is connected to the Control Port. The Control Port is an open collector / open drain output. By incorporating two 10K external pull up resistors, the circuit is made portable for a wider range of computers. The R/W line of the LCD panel is hard-wired into the write mode which will not cause any bus conflicts on the data lines. Hence the LCD's internal Busy Flag cannot tell if the LCD has accepted and finished processing the last instruction or not. The 10k Potentiometer control.

VINCULUM USB HOST CONTROLLER

            The VDIP2 module is an MCU to embedded USB host controller development module for the VNC1L I.C. device. The VDIP2 is supplied on a PCB designed to fit into a 40 pin DIP socket, and provides access to the UART, parallel FIFO, and SPI interface pins on the VNC1L device, via its AD and AC bus pins. All other Vinculum I/O pins are also accessable. Not only is it ideal for developing and rapid prototyping of VNC1L designs, but also an attractive quantity discount structure makes this module suitable for incorporation into low and medium volume finished product designs.
           
            The Vinculum VNC1L is the first of F.T.D.I.’s Vinculum family of Embedded USB host controller integrated circuit devices. Not only is it able to handle the USB Host Interface, and data transfer functions but owing to the inbuilt MCU and embedded Flash memory; Vinculum can encapsulate the USB device classes as well.When interfacing to mass storage devices such as USB Flash drives, Vinculum also transparently handles the FAT File structure communicating via UART, SPI or parallel FIFO interfaces via a simple to implement command set. Vinculum provides a new cost effective solution for providing USB Host capability into products that previously did not have the hardware resources available. The VNC1L is available in Pb-free (RoHS compliant) compact 48-Lead LQFP package.


Features:
Ø              Uses F.T.D.I.’s VNC1L embedded USB host controller I.C. device.
Ø              Two vertically mounted USB ‘A’ type socket to interface with USB            peripheral        devices
Ø              Jumper selectable UART, parallel FIFO, or SPI MCU interfaces.
Ø              Single 5V supply input.
Ø              Auxiliary 3.3 V / 200 mA power output to external logic.
Ø              Program or update firmware via USB Flash disk or via UART         interface.
Ø              VDIP2 module is supplied pre-loaded with Vinculum VDAP          firmware.
Ø              Schematics, and firmware files available for download from the      Vinculum         website.

UART INTERFACE MODULE:  
            The UART interface module controls the application’s physical communication with the UART interface on the VNC1L. The files UART.c and UART.h manage the EUSART interface of the PIC microcontroller and perform RTS/CTS flow control.
The code creates a software FIFO buffer for data received by the PIC microcontroller from the VNC1L. An interrupt is generated by the AT89C51 microcontroller each time a character is received and this data is added to the FIFO buffer. The application can query the FIFO buffer to determine if data has been received. Data is transmitted by the AT89C51 microcontroller sequentially without the use of buffering. Flow control is handled by the UART interface module to ensure data is sent only when the receiving device is ready.
Each callable function in the UART interface module is aliased using a pre-processor definition to allow the entire module to be replaced by a functionally equivalent module for handling communications. In the case of the VNC1L this may be an SPI or Parallel FIFO interface. The calling application should only use the generic interface routine names and not the UART-specific ones.



PROJECT SNAP:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
ADVANTAGES:
Ø  The device size is compact.
Ø  It is very easy to handle.
Ø  It is operated by battery.

CONCLUSION:
Ø  This project is designed to transfer data from one USB device to another USB device without using PC.
Ø  The device uses AT89C51 microcontroller has a frequency from 0 to 24MHz.
Ø  The device works on the battery and also on the power supply. It is of compact size, hence it is portable.
Ø  So it makes the data transferring between two USB device simpler and easier.


4 comments:

  1. great project....i would like to do it...please send me the details of it.

    ReplyDelete
  2. great project....i would like to do it...please send me the details of it. please reply to cmohan.thakur@gmail.com

    ReplyDelete