Table of Contents Table of Contents
Previous Page  66 / 82 Next Page
Information
Show Menu
Previous Page 66 / 82 Next Page
Page Background

Ф

УНКЦИИ ДЛЯ РАБОТЫ

С

MMC

И

SD

КАРТАМИ

ПАМЯТИ

Multi Media Card (MMC) – это стан

дарт карт флэш памяти. MMC карты в

настоящее время имеют объём до не

скольких десятков гигабайт и ис

пользуются в сотовых телефонах,

mp3 плеерах, цифровых камерах и

PDA.

Secure Digital (SD) – это стандарт

карт флэш памяти, основанный на ста

ром формате Multi Media Card (MMC).

SD карты в настоящее время имеют

объём до нескольких десятков гига

байт. Их модификации с уменьшенны

ми размерами Mini SD и Micro SD ис

пользуются в сотовых телефонах, mp3

плеерах, цифровых камерах и PDA.

Среда MikroC предоставляет библи

отеку для доступа к данным в MMC че

ПРОГРАММИРОВАНИЕ

66

WWW.SOEL.RU

СОВРЕМЕННАЯ ЭЛЕКТРОНИКА

№ 8 2010

Современная среда разработки mikroC

для программирования микроконтроллеров

на языке высокого уровня Си

(часть 3)

Олег Вальпа (Челябинская обл.)

Приводится описание современной, мощной и удобной среды

разработки mikroC, которая включает большую библиотеку готовых

функций для работы с разнообразными интерфейсами и устройствами

и позволяет быстро создавать эффективные программы на языке

высокого уровня Си для микроконтроллеров семейств PIC, AVR,

MCS#51 и др.

рез SPI. Эта библиотека также поддер

живает карты памяти SD. Данная биб

лиотека имеет следующие ограниче

ния:

библиотека работает только с семей

ством PIC18;

библиотечные функции создают и

читают файлы только из корневого

каталога;

библиотечные функции при записи

файла заносят данные в обе табли

цы – FAT1 и FAT2, но при чтении ис

пользуют данные только из таблицы

FAT1. То есть восстановление данных

при разрушении FAT1 не произво

дится;

начиная с версии 5.0.0.3, библио

тека может обмениваться данны

ми с носителем, который содержит

Master Boot Record (MBR) в секто

ре 0. Она читает необходимую ин

формацию из MBR и переходит к

первому доступному primary логи

ческому разделу. За детальной

информацией о MBR, физических

и логических устройствах, pri

mary/secondary разделах и табли

цах разделов следует обратиться

к другим ресурсам, например, Wi

kipedia и т.п.

Библиотека включает в свой состав

следующие функции работы с кар

тами: Mmc_Init, Mmc_Read_Sector,

Mmc_Write_Sector, Mmc_Read_Cid и

Mmc_Read_Csd. Кроме того, имеются

следующие функции для работы с

файлами:

Mmc_Fat_Init;

Mmc_Fat_Assign;

Mmc_Fat_Reset;

Mmc_Fat_Read;

Mmc_Fat_Rewrite;

Mmc_Fat_Append;

Mmc_Fat_Delete;

Mmc_Fat_Write;

Mmc_Fat_Set_File_Date;

Mmc_Fat_Get_File_Date;

Mmc_Fat_Get_File_Size;

Mmc_Fat_Get_Swap_File.

Описание этих функций приведено

в таблицах 22 – 38 соответственно.

Таблица 22. Описание функции Mmc_Init

Прототип

unsigned short Mmc_Init(unsigned short *port, unsigned short pin)

Возвращаемое значение Возвращает 0, если MMC присутствует и успешно инициализирована, в противном случае возвращает 1

Описание

Инициализирует MMC через аппаратный SPI интерфейс, где состояние вывода chip select задаётся аргументами port и pin; а порт и выводы интерфейса

определяются установками аппаратуры SPI для соответствуюшего контроллера. Mmc_Init должна вызываться перед использованием других функций

этой библиотеки

Требования

Функция Spi_Init_Advanced(MASTER_OSC_DIV16, DATA_SAMPLE_MIDDLE, CLK_IDLE_LOW, LOW_2_HIGH); должна быть вызвана перед использованием

Mmc_Init

Пример

Spi_Init_Advanced(MASTER_OSC_DIV16, DATA_SAMPLE_MIDDLE,

CLK_IDLE_LOW, LOW_2_HIGH);

// Цикл, пока MMC не будет инициализирована

while (Mmc_Init(&PORTC, 2));

Таблица 23. Описание функции Mmc_Read_Sector

Прототип

unsigned short Mmc_Read_Sector(unsigned long sector, unsigned short *data)

Возвращаемое значение Возвращает 0 при успешном чтении или 1, если имеет место ошибка

Описание

Функция читает один сектор (512 байт) из MMC, адрес сектора задаётся аргументом sector. Читаемые данные сохраняются в массиве data

Требования

MMC должна быть проинициализирована с помощью функции Mmc_Init.

Пример

error = Mmc_Read_Sector(sector, data)

© СТА-ПРЕСС