Техническое задание.

Считывание температуры от DS18B20 без помощи usart.

Используемое ПО:

STM32CubeMX, Keil mVision.

Работающий проект на выходе — это обязательно

связка Cube+Keil, чтобы можно было добавлять периферию по мере

необходимости.

Контроллер: STM32F4

Таймер - TIM7

Цель:

Работа с датчиками DS18B20, все процедуры должны быть неблокирующими.

К портам PD0 и PD1 подключены 2 DS18B20. Обработчик построен так, что опрашивает единственный датчик

на каждом порту(инициализация с пропуском

ROM: байты-команды 0xcc,0x44 и байты-чтение 0xcc,0xbe через 750мкс.)

Режим работы — 12бит.

В коде объявляются переменные типа uint32_t для температур. Температура лежит в формате

целого числа*10, для исключения дробной

части.

Если CRC неверный, то измерение отбрасывается, выставляется флаг ошибки порта 1-wire.

Автомат (не блокирующий) для работы 1-wire должен располагаться в коде TIM7.

int main(void)

{

HAL_Init();

SystemClock_Config();

init_all_periph();

while(1)

{

{

//Мой код 1

}

{

//Мой код 2

}

{

//Мой код 3

}

}

}

Выполнение кода {//Мой код 1}{//Мой код 2}{//Мой код 3} занимает примерно 29мс, поэтому нельзя использовать основной цикл для

каких-либо действий с шиной 1-wire.

работа с пинами — только через регистры BSRR, как пример:

GPIOD->BSRR &=~(1

GPIOD->BSRR |=(1

4 года назад
zloykrot
Дмитрий 
44 года
16 лет в сервисе
Был
3 года назад

Заявки фрилансеров

Нет заявок фрилансеров
  • Похожие заказы

  • $1000

    Требуется опытный специалист для сниффинга запросов приложения на протоколе XMPP для Android. Необходимы знания в реверс-инжиниринге, gzip и методах шифрования. Есть разгаданное шифрование и аналогичный код. Ожидается понимание криптографии и соответствующих технологий.

    Закрыт
    4 года назад
  • $1000

    Требуется разработать библиотеку для BLE 5.2, которая будет интегрирована в прошивку на C для STM32 H7. Основная задача — улучшение скорости передачи данных между устройством и мобильным телефоном. Работа должна соответствовать режимам, указанным в datasheet. Готовы предоставить ответы на технические вопросы.

    Закрыт
    4 года назад
  • Требуется разработать модуль интеграции с r-keeper для отправки информации о покупке через API системы лояльности. Модуль должен быть написан на C# или C++. Необходимо создать кнопку в документе покупки iiko для ввода данных покупателя и отправки информации на сервер после проведения продажи.

    Закрыт
    4 года назад
  • Требуется программист C++ для создания аудио драйвера на macOS с поддержкой USBDriverKit. Задача включает разработку поддержки физического и виртуального аудио, а также обеспечение изохронной передачи. Опыт с Kernel Extensions, знание USB 2.0 и аудио протоколов будет преимуществом. Оплата $40 в час, предпочтительно полная занятость.

    Закрыт
    4 года назад
  • Необходимо разработать код на Python для перевода 500 файлов формата doc в docx, сохраняя содержащиеся в них таблицы. Скрипт должен работать на платформе pythonanywhere без использования библиотек 'glob' и 'win32'. Примеры файлов для сравнения прилагаются.

    Закрыт
    4 года назад
  • Необходимо изменить действующий bash-скрипт, чтобы он работал с Webmin и модулем bind9, выполняя аналогичные функции. Операционная система - CentOS 8. Требуется опыт в системном программировании и знание указанного ПО.

    Закрыт
    4 года назад
  • Требуется разработать простую RPA систему для сферы грузоперевозок. Необходимо создать чат-бота для сбора информации и размещения её на стороннем ресурсе. Обязательно наличие опыта реализации проектов в области RPA и выполнение дополнительных функций.

    Закрыт
    4 года назад
  • Ищется разработчик для доработки сайта на платформе Astra. Основное внимание уделяется бэкэнду - доработке админки, а также фронтенду - доработке внешнего функционала. Сотрудничество планируется длительным, так как проект постоянно развивается и требует оптимизации. Есть готовое ТЗ для старта работ.

    Закрыт
    4 года назад
  • $150

    Инструкция по просмотру и редактированию карточки сотрудника для сотрудников медицинских учреждений в системе Elena.Team. Описание основных действий, таких как просмотр данных, редактирование, добавление и удаление записей. Подробные шаги для взаимодействия с таблицами и возможность увольнения сотрудника.

    Закрыт
    4 года назад