Программный пакет AT24CXX предоставляет основные функции EEPROM серии AT24CXX. В этой статье представлены основные функции чтения и записи пакета, а также команда тестирования Finsh/MSH.
В настоящее время пакет успешно протестирован на AT24C02 и AT24C512.
Название | Описание |
---|---|
at24cxx.h | Заголовочный файл для использования EEPROM |
at24cxx.c | Исходный код для использования EEPROM |
SConscript | Скрипт сборки по умолчанию для RT-Thread |
README.md | Инструкция по использованию программного пакета |
at24cxx_datasheet.pdf | Официальный документ данных |
AT24CXX следует лицензии Apache-2.0, см. файл LICENSE.
Зависит от фреймворка драйвера устройства I2C RT-Thread.
Чтобы использовать программный пакет 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.
После получения программного пакета at24cxx вы можете использовать API для тестирования с помощью EEPROM at24cxx и команды Finsh/MSH, как описано ниже.
at24cxx_device_t at24cxx_init(const char *i2c_bus_name, uint8_t addr)
Инициализируйте соответствующее устройство AT24CXX в соответствии с именем шины, конкретные параметры и возвращаемые значения следующие:
Параметр | Описание |
---|---|
name | Имя i2c-устройства |
addr | Адрес |
Возвращаемое значение | Описание |
!= NULL | Вернёт объект устройства at24cxx |
= NULL | Поиск не удался |
void at24cxx_deinit(aht10_device_t dev)
Если устройство больше не используется, отмените инициализацию, чтобы освободить ресурсы, связанные с устройством at24cxx, конкретные параметры следующие:
Параметр | Описание |
---|---|
dev | Объект устройства at24cxx |
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 | Считывание неудачно |
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 | Запись прошла успешно |
rt_err_t at24cxx_check(struct rt_i2c_bus_device *bus)
Проверьте, существует ли устройство EEPROM, записав флаг в последний байт, чтобы определить, конкретные параметры и возвращаемое значение следующие:
Параметр | Описание |
---|---|
bus | Объект устройства at24cxx |
Возвращаемое значение | Описание |
!= RT_EOK | Устройство не существует |
=RT_EОК | Устройство существует |
Программное обеспечение 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 />
При первом использовании команды 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 />
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )