1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/RT-Thread-Mirror-at24cxx

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

AT24CXX программный пакет

1 Введение

Программный пакет AT24CXX предоставляет основные функции EEPROM серии AT24CXX. В этой статье представлены основные функции чтения и записи пакета, а также команда тестирования Finsh/MSH.

В настоящее время пакет успешно протестирован на AT24C02 и AT24C512.

1.1 Структура каталога

Название Описание
at24cxx.h Заголовочный файл для использования EEPROM
at24cxx.c Исходный код для использования EEPROM
SConscript Скрипт сборки по умолчанию для RT-Thread
README.md Инструкция по использованию программного пакета
at24cxx_datasheet.pdf Официальный документ данных

1.2 Лицензия

AT24CXX следует лицензии Apache-2.0, см. файл LICENSE.

1.3 Зависимости

Зависит от фреймворка драйвера устройства I2C RT-Thread.

2 Получение программного пакета

Чтобы использовать программный пакет at24cxx, выберите его в диспетчере пакетов RT-Thread, путь следующий:

RT-Thread online packages
    peripheral libraries and drivers  --->
        [*] at24cxx: eeprom at24cxx driver library  --->
            Version (latest)  --->

Для каждой функции настройки:

  • at24cxx: ee2prom at24cxx driver library: выберите использование программного пакета at24cxx;
  • Version: настройте версию программного пакета, по умолчанию — последняя версия.

Затем позвольте диспетчеру пакетов RT-Thread автоматически обновиться или используйте команду pkgs --update, чтобы обновить пакет до BSP.

3 Использование программного пакета at24cxx

После получения программного пакета at24cxx вы можете использовать API для тестирования с помощью EEPROM at24cxx и команды Finsh/MSH, как описано ниже.

3.1 API

3.1.1 Инициализация

at24cxx_device_t at24cxx_init(const char *i2c_bus_name, uint8_t addr)

Инициализируйте соответствующее устройство AT24CXX в соответствии с именем шины, конкретные параметры и возвращаемые значения следующие:

Параметр Описание
name Имя i2c-устройства
addr Адрес
Возвращаемое значение Описание
!= NULL Вернёт объект устройства at24cxx
= NULL Поиск не удался

3.1.2 Реинициализация

void at24cxx_deinit(aht10_device_t dev)

Если устройство больше не используется, отмените инициализацию, чтобы освободить ресурсы, связанные с устройством at24cxx, конкретные параметры следующие:

Параметр Описание
dev Объект устройства at24cxx

3.1.3 Чтение

rt_err_t at24cxx_read(struct rt_i2c_bus_device *bus,uint16_t ReadAddr,uint8_t *pBuffer,uint16_t NumToRead)

Считывайте данные из EEPROM через at24cxx, начиная с указанного адреса в AT24CXX, считывайте указанное количество данных, конкретные параметры и возвращаемое значение следующие:

Параметр Описание
bus Объект устройства at24cxx
Возвращаемое значение Описание
!= RT_EOK Считывание успешно
= RT_EOK Считывание неудачно

3.1.4 Запись

rt_err_t at24cxx_write(struct rt_i2c_bus_device *bus,uint16_t WriteAddr,uint8_t *pBuffer,uint16_t NumToWrite)

Записывайте данные в EEPROM через at24cxx, начиная с указанного адреса в AT24CXX, записывайте указанное количество данных, конкретные параметры и возвращаемое значение следующие:

Параметр Описание
bus Объект устройства at24cxx
Возвращаемое значение Описание
!= RT_EOK Запись не удалась
=RT_EOK Запись прошла успешно

3.1.5 Проверка устройства

rt_err_t at24cxx_check(struct rt_i2c_bus_device *bus)

Проверьте, существует ли устройство EEPROM, записав флаг в последний байт, чтобы определить, конкретные параметры и возвращаемое значение следующие:

Параметр Описание
bus Объект устройства at24cxx
Возвращаемое значение Описание
!= RT_EOK Устройство не существует
=RT_EОК Устройство существует

3.2 Команды тестирования Finsh/MSH

Программное обеспечение at24cxx предоставляет множество команд тестирования, которые можно активировать, включив функцию Finsh/MSH на RT-Thread. Эти команды очень полезны при разработке и отладке приложений на основе at24cxx, поскольку они могут точно считывать температуру и влажность, измеренные датчиком. Вы можете ввести at24cxx, чтобы просмотреть полный список функций:

msh />at24cxx
Usage:
at24cxx probe <dev_name>   - probe sensor by given name
at24cxx check              - check device
at24cxx write              - write  data
at24cxx read               - read   data
msh />

3.2.1 Обнаружение датчика на указанной шине I2C

При первом использовании команды at24cxx введите at24cxx probe <dev_name>, где <dev_name> — это указанная шина I2C, например i2c0. Если устройство присутствует, ошибки не будет; если на шине нет устройства, появится сообщение об ошибке «Устройство at24cxx не найдено» в журнале:

msh />at24cxx probe i2c1      # Обнаружено успешно, без ошибок в журнале
msh />
msh />at24cxx probe i2c88     # Ошибка обнаружения, отображается сообщение об ошибке "Не удалось найти устройство at24cxx"
[E/aht10] can't find at24cxx device on 'i2c88'
msh />

4 Примечания

  • Пожалуйста, измените EE_TYPE в at24cxx.h на тип, который вы используете (по умолчанию AT25C512).
  • Пожалуйста, измените EE_TWR в at24cxx.h на время цикла записи вашего EEPROM, конкретное значение см. в техническом описании чипа (по умолчанию 5 мс).
  • Используйте 7-битный адрес 0x50 вместо 0xA0.
  • Для операций между областями, таких как AT24C04, пространство данных определяется битом P0. Когда P0 равен «0», операции выполняются над пространством данных 0–255 AT24C04. Когда P0 равно «1», операции выполняются над пространством данных 256–511 AT24C04. Необходимо обратить внимание на изменение значения AddrInput.

5 Контакты

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/RT-Thread-Mirror-at24cxx.git
git@api.gitlife.ru:oschina-mirror/RT-Thread-Mirror-at24cxx.git
oschina-mirror
RT-Thread-Mirror-at24cxx
RT-Thread-Mirror-at24cxx
master