Учебный курс AVR. Работа с SPI модулем. Управление сдвиговыми регистрами. Ч3
![](/images/stories/articles/spi3/74hc595.png)
Учебный курс AVR. Работа с SPI модулем. Чтение и запись данных. Ч2
Теперь вы имеете общее представление о последовательном периферийном интерфейсе и можно перейти к рассмотрению SPI модуля.
SPI модуль микроконтроллера AVR atmega16 использует для своей работы 4 вывода - MOSI, MISO, SCK и SS. Когда модуль не задействован, эти выводы являются линиями портов ввода/вывода общего назначения. Когда модуль включен, режим работы этих выводов переопределяются.
Учебный курс AVR. Работа с SPI модулем. Ч1
Микроконтроллеры AVR имеют в своем составе модули, реализующие стандартные интерфейсы. Эти модули используются для обмена данными с различными периферийными устройствами, например, цифровыми датчиками, микросхемами памяти, ЦАП, АЦП, другими микроконтроллерами и так далее. В этой статье, на примере микроконтроллера atmega16, мы разберемся, как работать с модулем последовательного периферийного интерфейса или модулем SPI (serial peripheral interface).
Программный UART для любого микроконтроллера. Модификация кода для AVR. Ч2
![](/images/stories/articles/software-uart/1.gif)
Программный UART для любого микроконтроллера. Ч1
![](/images/stories/articles/software-uart/1.gif)
Иногда возникает ситуация, когда аппаратных ресурсов микроконтроллера не хватает или требуемый ресурс в его составе отсутствует. Решить эту проблему можно двумя способами – заменить используемый микроконтроллер на другой или реализовать требуемый ресурс программно. Оба способа имеют свои достоинства и недостатки, однако второй вариант часто более предпочтительный, а иногда и единственно возможный. Например, как в случае с 1-Wire интерфейсом, который не поддерживается аппаратно ни в одном 8-ми разрядном микроконтроллере AVR.
1-Wire. Работа с DS18B20. Использование двух датчиков. Часть 4
![](/images/stories/articles/DS18B20/dva-datchika-ds18b20.jpg)
Одно из преимуществ 1-Wire интерфейса заключается в том, что он позволяет организовать сеть из нескольких устройств. До сих пор мы не использовали эту возможность и рассматривали работу только с одним датчиком. Мы разобрались, как подключить Atmel`овскую библиотеку к проекту, как в DS18B20 запустить преобразование температуры, как считывать ее и выводить на дисплей. Настало время перейти к следующему этапу работы – коммуникация с несколькими датчиками на одной 1-Wire шине.
Согласование логических уровней
1-Wire. Работа с DS18B20. Часть 3
![](/images/stories/articles/DS18B20/ds18b20.jpg)
1-Wire. Работа с DS18B20. Часть 2
1-Wire. Работа с DS18B20. Часть 1
![](/images/stories/articles/DS18B20/podkluchenie-ds18b20-ds18s20.png)