Библиотека I2C для PIC24

Views: 1103


i2c_logo_catcatcatПростая библиотека для работы с PIC-контроллерами 24 серии.


Настройки

#define FCY 20000000UL – задается тактовая частота ядра FCY=Fclock/2

Позволяет выбрать с каким модулем будет работать

#define I2Cselection 1

значение 0 – с модулем 1

значение 1 – с модулем 2


Состоит из 7 функций

void i2c_Open (unsigned int FCLOCK);// инициализация, значение частоты шины в килогерцах (100, 300, 400)
void i2c_stop (void); // формирование стоп
unsigned char i2c_start (unsigned char adres, unsigned char R_W); // адрес устройства и управление младшими битами
unsigned char i2c_restart (unsigned char adres, unsigned char R_W);
unsigned char i2c_write (unsigned char data); //запись байта
unsigned char i2c_read_ack (void); //чтение с подтверждением
unsigned char i2c_read_noack (void); //чтение без подтверждения


Файлы для загрузки

Библиотека [wpdm_file id=212 template=”link-template-calltoaction3.php”]


Это может быть интересно


  • ch-4060 – регулятор температуры и влажности на датчике DHT11/DHT22/AM2302ch-4060 – регулятор температуры и влажности на датчике DHT11/DHT22/AM2302
    Views: 2537 На плате ch-4000 очень легко собрать устройство регулятора температуры и влажности. Датчик DHT11  самый недорогой вариант для создания такого устройства, правда точность его не велика, но для бытовых устройств …
  • MPLAB® Harmony – или как это просто! Часть 1.MPLAB® Harmony – или как это просто! Часть 1.
    Views: 3910 Часть первая – Установка Гармонии. Музыкальная тема к статье, слушаем: В начале запуска нового проекта и выбора микроконтроллера стоит задача правильно его сконфигурировать, прежде чем перейти к реализации …
  • Toyota Auto Fader – Модуль включения усилителяToyota Auto Fader – Модуль включения усилителя
    Views: 2133 Toyota Auto Fader – Модуль включения усилителя. Часто автолюбители прибегают к замене штатного головного устройства на универсальное мультимедийное, в котором значительно расширены функциональные возможности. Если возникает желание оставить …
  • Kitchen timer with contactless gesture controlKitchen timer with contactless gesture control
    Views: 822    Кухонний таймер з безконтактним керуванням жестами дозволяє встановити необхідний період часу для приготування страв, не торкаючись пристрою. Дуже зручно під час приготування їжі, коли руки забрудниться. Усі …
  • AD9833 – Programmable Waveform Generator – part twoAD9833 – Programmable Waveform Generator – part two
    Views: 1973 Прошло время и появилась тема, что-бы закончить проект AD9833 – Programmable Waveform Generator. Приехали печатные платы. В этот раз я печатные платы заказывал в https://jlcpcb.com/ делал это в …
  • Простой оптический сенсор приближенияПростой оптический сенсор приближения
    Оптический сенсор, назначение оптический концевик, для автоматики, бесконтактный выключатель с функцией автоматического отключения...
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Views: 752 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …
  • Инфракрасный датчик движения, PIR-sensorИнфракрасный датчик движения, PIR-sensor
    Views: 3320 Домашняя автоматика предполагает наличие датчиков движения, которые способны контролировать движения человека. Самым простым и доступным устройством позволяющие контролировать изменения ИК-излучения, это ПИР-сенсоры. На текущий момент доступны не дорогие модели D203B, D204B, D205B. Все …
  • CLUBBEST-50-LightCLUBBEST-50-Light
    Views: 474 CLUBBEST-50-LIGHT   Зміст Короткий опис проекту. 1 Опис схемотехніки візуалізатора музики. 2 Аудіо вхід. 3 MCU. 4 Цифровий вихід. 5 Схема живлення MCU. 6 Складання пристрою. 7 Список …
  • Просто о структурах и объединениях в СиПросто о структурах и объединениях в Си
    Views: 2392 Какие задачи нам позволяют решать структуры и объединения? Для разработчика встроенных систем эффективность и компактность кода всегда на первом месте. Если программировании на Ассемблере ты сам определяешь как …



 

Поделись этим!