This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
et:software:homelab:library:module:sdcard [2012/02/14 09:58] – tekitatud raivo.sell | et:software:homelab:library:module:sdcard [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== SD kaart ====== | ====== SD kaart ====== | ||
+ | |||
+ | //Seotud mooduliga: [HW] [[et: | ||
+ | |||
+ | See teegi osa sisaldab Kodulabori SD kaardi kasutamise funktsioone. | ||
+ | |||
+ | ===== Andmetüübid ===== | ||
+ | |||
+ | * **//static FATFS FATFS_Obj// | ||
+ | |||
+ | * **//FIL fil_obj//** - Failisüsteemi andmestruktuur, | ||
+ | |||
+ | * **// | ||
+ | * //RES_OK// - (0) Toiming õnnestus. | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | |||
+ | * **// | ||
+ | * //FR_OK// - (0) Toiming õnnestus. | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | |||
+ | * **// | ||
+ | * //FA_READ// - Fail avatakse lugemisrežiimis. | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | |||
+ | |||
+ | |||
+ | ===== Funktsioonid ===== | ||
+ | |||
+ | * **//DSTATUS disk_initialize (BYTE drv)//** \\ | ||
+ | | ||
+ | * //drv// - Ketta number. Enamus juhtudel 0. | ||
+ | * Tagastab DSTATUS koodi. | ||
+ | |||
+ | * **//DSTATUS disk_status (BYTE drv)//** \\ | ||
+ | | ||
+ | * //drv// - Ketta number. Enamus juhtudel 0. | ||
+ | * Tagastab DSTATUS koodi. | ||
+ | |||
+ | * **//FRESULT f_mount (BYTE Drive, FATFS* FileSystemObject)// | ||
+ | | ||
+ | * //Drive// - Ketta number. Enamus juhtudel 0. | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_open (FIL* FileObject, const TCHAR* FileName, BYTE ModeFlags)// | ||
+ | Avab või loob faili. Parameetrid: | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_close (FIL* FileObject)// | ||
+ | Suleb faili. Parameetrid: | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_read (FIL* FileObject, void* Buffer, UINT ByteToRead, UINT* ByteRead)// | ||
+ | Loeb failist etteantud arv baite andmeid. Parameetrid: | ||
+ | * // | ||
+ | * //Buffer// - Viit puhvrile, kuhu kirjutatakse loetud andmed. | ||
+ | * // | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_write (FIL* FileObject, const void* Buffer, UINT ByteToWrite, | ||
+ | | ||
+ | * // | ||
+ | * //Buffer// - Viit andmetele, mis kirjutatakse faili. | ||
+ | * // | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_sync (FIL* FileObject)// | ||
+ | | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_mkdir (const TCHAR* DirName)// | ||
+ | Loob kausta. Parameetrid: | ||
+ | * //DirName// - Kausta nimi. | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_unlink (const TCHAR* FileName)// | ||
+ | | ||
+ | * // | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//FRESULT f_rename (const TCHAR* OldName, const TCHAR* NewName)// | ||
+ | | ||
+ | * //OldName// - Objekti vana nimi. | ||
+ | * //NewName// - Objekti uus nimi. | ||
+ | * Tagastab FRESULT koodi. | ||
+ | |||
+ | * **//TCHAR* f_gets (TCHAR* Str, int Size, FIL* FileObject)// | ||
+ | Loeb failist etteantud pikkusega stringi. Parameetrid: | ||
+ | * //Str// - Puhver, kuhu loetud andmed salvestatakse. | ||
+ | * //Size// - Stringi pikkus. | ||
+ | * // | ||
+ | * Tagastab Str puhvri, kui oli edukas. | ||
+ | |||
+ | * **//int f_putc (TCHAR Chr, FIL* FileObject)// | ||
+ | Lisab faili tähemärgi. Parameetrid: | ||
+ | * //Chr// - Tähemärk, mis lisatakse faili. | ||
+ | * // | ||
+ | * Tagastab 1, kui oli edukas. | ||
+ | |||
+ | * **//int f_printf (FIL* FileObject, const TCHAR* Foramt, ...)//** \\ | ||
+ | Lisab faili vormindatud stringi. Parameetrid: | ||
+ | * // | ||
+ | * //Foramt// - Stringi formaat. | ||
+ | * ... | ||
+ | * Tagastab kirjutatud märkide arvu, kui oli edukas. | ||
+ | |||
+ | * **//DWORD f_tell (FIL* FileObject)// | ||
+ | | ||
+ | * // | ||
+ | * Tagastab viitena lugemis/ | ||
+ | |||
+ | * **//FRESULT f_lseek (FIL* FileObject, | ||
+ | Viib kursori sooovitud asukohta failis. Parameetrid: | ||
+ | * // | ||
+ | * //Offset// - Soovitud asukoht baitides faili algusest. | ||
+ | * Tagastab FRESULT koodi. | ||
+ | | ||
+ | |||
+ | |||
+ | < | ||
+ | |||
+ | ===== Näide ===== | ||
+ | |||
+ | <code c> | ||
+ | #include < | ||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | int main (void) | ||
+ | { | ||
+ | static FATFS FATFS_Obj; | ||
+ | FIL fil_obj; | ||
+ | |||
+ | // SD kaardi initsialiseerimine. | ||
+ | disk_initialize(0); | ||
+ | |||
+ | // Failisüsteemi initsialiseerimine. | ||
+ | f_mount(0, & | ||
+ | |||
+ | // Tekitatakse tekstifail " | ||
+ | f_open(& | ||
+ | |||
+ | // Fail avatakse kirjutusreziimis. | ||
+ | f_open(& | ||
+ | |||
+ | // Faili kirjutamine. | ||
+ | f_printf(& | ||
+ | |||
+ | // Faili sulgemine | ||
+ | f_close(& | ||
+ | } | ||
+ | |||
+ | </ | ||