Daniel Watman <pywo@optushome.com.au> says...>...a way to interface a microcontroller to those USB flash drives...I keep wondering if there isn't some clever way to tell an EZ-USB 8051 chip to be a host. -- Guy Macon, Electronics Engineer & Project Manager. http://www.guymacon.com/
IDE interface board
Started by ●May 9, 2004
Reply by ●May 9, 20042004-05-09
Reply by ●May 9, 20042004-05-09
Alex Wisnieski wrote:> > Howdy all. > > Just a little curious - Does anyone know of any small interface > boards, that would allow a microcontroller to access an IDE hard disk > drive, or ATAPI device (cdrom drive)? Not any kind of combo-board (SBC, > MP3 player capable, etc), just a single, small board that connects an > ATA device to an MCU. > > If not...Would there be any interest in such a board? I know the > applications might be a little limited, but it seems like such an > interesting project that I can't help but wonder... > > If there is interest, what kind of specifications would be usefull? > > -Alex---------- Yes, Google GIDE and Z80 IDE and etc. -Steve -- -Steve Walz rstevew@armory.com ftp://ftp.armory.com/pub/user/rstevew Electronics Site!! 1000's of Files and Dirs!! With Schematics Galore!! http://www.armory.com/~rstevew or http://www.armory.com/~rstevew/Public
Reply by ●May 10, 20042004-05-10
It's not really as hard as it seems, in fact you can drive it directly from your I/O ports using 16-bits for data and 8-bits for control. You would run it in programmed I/O mode as opposed to DMA. This is usually the method that the PC BIOS boots up in before the O/S kicks in. The ATA interface looks like a stack of 8-bit registers with 16-bits for the data register. Write an 8-bit READ SECTOR instruction to the command register and there it is, the sector data is ready and waiting for you to pick out a word at a time, in your own time. So really, the hardware interface is simple because the IDE (Integrated Drive Electronics) does all the real work. It's just if you want it to be FAT32/NTFS PC compatible that you will need a <<<<little>>>>> more software to interpret and interface to properly. I just had a look at the GIDE/Z80 interface that someone mentioned. Yes, if you want to design with a CPU that might be older than you are then you will need all those extra chips. This is just the way someone did it 10 years ago with archaic technology even at that time. It's funny how people make it hard for themselves just because they think it is more complicated than it is. Peter Jakacki Alex Wisnieski wrote:> Just a little curious - Does anyone know of any small interface > boards, that would allow a microcontroller to access an IDE hard disk > drive, or ATAPI device (cdrom drive)? Not any kind of combo-board (SBC, > MP3 player capable, etc), just a single, small board that connects an > ATA device to an MCU. > > If not...Would there be any interest in such a board? I know the > applications might be a little limited, but it seems like such an > interesting project that I can't help but wonder... > > If there is interest, what kind of specifications would be usefull?
Reply by ●May 10, 20042004-05-10
Peter Jakacki wrote:> It's not really as hard as it seems, in fact you can drive it directly > from your I/O ports using 16-bits for data and 8-bits for control. You > would run it in programmed I/O mode as opposed to DMA. This is usually > the method that the PC BIOS boots up in before the O/S kicks in. >I have built two of these: <http://www.pjrc.com/tech/8051/ide/> Lots more where this came from: <http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=8051+ide&btnG=Google+Search>> The ATA interface looks like a stack of 8-bit registers with 16-bits for > the data register. Write an 8-bit READ SECTOR instruction to the command > register and there it is, the sector data is ready and waiting for you > to pick out a word at a time, in your own time. So really, the hardware > interface is simple because the IDE (Integrated Drive Electronics) does > all the real work. It's just if you want it to be FAT32/NTFS PC > compatible that you will need a <<<<little>>>>> more software to > interpret and interface to properly. > > I just had a look at the GIDE/Z80 interface that someone mentioned. Yes, > if you want to design with a CPU that might be older than you are then > you will need all those extra chips. This is just the way someone did it > 10 years ago with archaic technology even at that time. It's funny how > people make it hard for themselves just because they think it is more > complicated than it is. > > Peter Jakacki > > Alex Wisnieski wrote: > >> Just a little curious - Does anyone know of any small interface >> boards, that would allow a microcontroller to access an IDE hard disk >> drive, or ATAPI device (cdrom drive)? Not any kind of combo-board >> (SBC, MP3 player capable, etc), just a single, small board that >> connects an ATA device to an MCU. >> >> If not...Would there be any interest in such a board? I know the >> applications might be a little limited, but it seems like such an >> interesting project that I can't help but wonder... >> >> If there is interest, what kind of specifications would be usefull? > >
Reply by ●May 10, 20042004-05-10
this is even better: <http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=8051+ata+interface&btnG=Search> hamilton wrote:> > > Peter Jakacki wrote: > >> It's not really as hard as it seems, in fact you can drive it directly >> from your I/O ports using 16-bits for data and 8-bits for control. You >> would run it in programmed I/O mode as opposed to DMA. This is usually >> the method that the PC BIOS boots up in before the O/S kicks in. >> > I have built two of these: > <http://www.pjrc.com/tech/8051/ide/> > > > Lots more where this came from: > <http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=8051+ide&btnG=Google+Search> > > >> The ATA interface looks like a stack of 8-bit registers with 16-bits >> for the data register. Write an 8-bit READ SECTOR instruction to the >> command register and there it is, the sector data is ready and waiting >> for you to pick out a word at a time, in your own time. So really, the >> hardware interface is simple because the IDE (Integrated Drive >> Electronics) does all the real work. It's just if you want it to be >> FAT32/NTFS PC compatible that you will need a <<<<little>>>>> more >> software to interpret and interface to properly. >> >> I just had a look at the GIDE/Z80 interface that someone mentioned. >> Yes, if you want to design with a CPU that might be older than you are >> then you will need all those extra chips. This is just the way someone >> did it 10 years ago with archaic technology even at that time. It's >> funny how people make it hard for themselves just because they think >> it is more complicated than it is. >> >> Peter Jakacki >> >> Alex Wisnieski wrote: >> >>> Just a little curious - Does anyone know of any small interface >>> boards, that would allow a microcontroller to access an IDE hard disk >>> drive, or ATAPI device (cdrom drive)? Not any kind of combo-board >>> (SBC, MP3 player capable, etc), just a single, small board that >>> connects an ATA device to an MCU. >>> >>> If not...Would there be any interest in such a board? I know the >>> applications might be a little limited, but it seems like such an >>> interesting project that I can't help but wonder... >>> >>> If there is interest, what kind of specifications would be usefull? >> >> >> >
Reply by ●May 10, 20042004-05-10
Hmmmm, sometimes these extra I/O chips cost more than the micro they hang off. I try to choose a micro that has all the I/O lines on-board as these usually cost only a little more. An MSP430F149 or better still the LPC2106 with it's 32-bit I/O will knock over the IDE interface lickety-split. At around $8 even here in oz the 'baby' LPC2104 has 128K flash, 16K ram, peripherals galore and 60Mhz 32-bit operation. Why would I bother with less? Peter Jakacki hamilton wrote:> I have built two of these: > <http://www.pjrc.com/tech/8051/ide/> > Lots more where this came from: > <http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=8051+ide&btnG=Google+Search>