This page is dedicated to the design of code that allows 'raw' access to
an IDE Hard Disc using an Atmega AVR MCU. Raw disc access means accessing
the disc at a level below whichever particular file system is contained
upon it.
|
IDE Access System Block Diagram
|
The IDE_Access functions are the only functions used by other levels
of the software, such as the FAT32 access code. The IDE_Base functions
are for internal use only, and provide functionality needed by the IDE_Access
routines.
IDE_Reset(); // Reset Drive
IDE_InitDrive(); // Send initialise
commands to drive
IDE_BufferSector(0); // Read MBA which is
sector 0 into buffer
// Printf whole sector that was buffered to console
for (i=0; i<512;i++) {
printf("0x%X ", IDE_SectorByte(i)); }
Source_IDERawRead.zip
- The source library containing only these functions, to allow accessing
of 'raw' IDE sectors.
FAT32
Basic Disc IO Page - A Library that contains basic FAT32 disc IO including
a write up and source code...
FAT32 File IO Library
Page - The source library for my advanced FAT32 file access code which
include fopen(), fgetc(), fscanf(), etc..
|