Главная » Arduino
Призовой фонд
на октябрь 2021 г.
1. Рюкзак Mean Well
Компэл
2. Инвертор авто Mean Well 150 Ватт
Компэл
3. Термос MeanWell
Компэл
4. 100 руб.
От пользователей

Похожие статьи:


Курс Arduino - Микросхемы

Что за штука, микросхема?

Микросхема – это сборка из миниатюрных компонентов одном корпусе. Существуют тысячи видов микросхем, и каждый вид выполняет свою функцию. В этом уроке мы заложим основные знания работы с микросхемами на примере Сдвигового регистра.

Сдвиговый регистр – это микросхема, которая увеличивает количество цифровых пинов. Мы будем использовать 74HC595. Он управляется тремя пинами, а на выходе дает восемь.

А еще их можно последовательно соединить, что увеличит количество пинов, например, до 16, при двух 74HC595, не изменяя количества управляющих пинов. Так, можно использовать большое количество микросхем и собрать светодиодную сборку, управляемую все теми же, тремя пинами.

Нам понадобятся:

  • Сдвиговый регистр
  • Светодиоды
  • Резисторы на 220Ом
  • Соединительные провода «ПАПА – ПАПА»

Начало

Начало работы с любой микросхемой заключается в том, чтобы:

  1. Определиться, что мы хотим от микросхемы.
  2. Найти нужную микросхему, предназначенную для решения нашей задачи.
  3. Найти документацию на нее
  4. Внимательно изучить документацию и научиться подключать плату к Arduino.

Давайте по порядку. Мы хотим увеличить количество пинов. Для этого и подойдет  74HC595. Теперь найдем на нее документацию. Для этого забьем в поисковике такой запрос:

 

После того, как мы изучили документацию и научились подключать микросхему к Arduino, можем смело приступать к сборке схемы.

Схема

Ничего выдумывать не будем. Сделаем простую схему с подключением светодиодов через 74HC595 к Arduino. Главная задача – разобраться, как оно работает.

Внимание на схему сборки:

 Код к схеме

#define DATA 13 // Пин данных
#define LATCH 12 // Пин "защелкивания" или строба
#define CLOCK 11 // Пин такта

// Создадим несколько переменных типа byte. 
// Я не стал создавать массив т.к. я сделал всего 3 режима
// Для большего количества данных, передаваемых на микросхему,
// лучше создавать массив.
byte number1 = 0b01000000; //1 светодиод горит
byte number2 = 0b01110000; // 3 светодиода горит
byte number3 = 0b011111100; // 6 светодиодов горит

void setup() 
{
  Serial.begin(9600);
  Serial.println("Write number");
  // Обозначенные нами, три управляющих пина обозначим как выход
  pinMode(DATA, OUTPUT);
  pinMode(LATCH, OUTPUT);
  pinMode(CLOCK, OUTPUT);

}

void loop() {
  // Код из наших прошлых уроков для приема команд с Сериала
   if(Serial.available() > 0)
   {
    char cmd = Serial.read();
    if(cmd == '1')
    {
      //Зажигаем 1 светодиод
      digitalWrite(LATCH, LOW);
      shiftOut(DATA, CLOCK, LSBFIRST, number1);
      digitalWrite(LATCH, HIGH);
    }
     if(cmd == '3')
    {
      //Зажигаем 3 светодиода
      digitalWrite(LATCH, LOW);
      shiftOut(DATA, CLOCK, LSBFIRST, number2);
      digitalWrite(LATCH, HIGH);
    }
     if(cmd == '6')
    {
      //Зажигаем 6 светодиодов
      digitalWrite(LATCH, LOW);
      shiftOut(DATA, CLOCK, LSBFIRST, number3);
      digitalWrite(LATCH, HIGH);
    }
   }
}

//Ты можешь дополнить код, чтобы были режимы горения 2, 4, 5 светодиодов.

Пояснения

Byte - в нашем случае, для передачи данных, мы использовали переменную типа byte. Выглядела она так: 0b000000000. 0b0 – говорит, что мы работаем с двоичной системой счисления. Остальные восемь цифр передают HIGH или LOW в сдвиговый регистр.

Управление микросхемой:   Чтобы управлять нашей микросхемой, мы должны объявить три пина: Пин данных (DATA), пин строба (LATCH) и пин такта (CLOCK).

Для начала, нужно начать запись данных в 74HC595, для этого, нужно на пин строба подать LOW.

После, задвигаем байт-маску (записываем байт данных для вывода) с помощью shiftOut(DATA, CLOCK, LSBFIRST, val);

LSBFIRST или MSBFIRST – Этот параметр определяет, в какой последовательности вводить данные в микросхему. Начиная справа(MSB) или слева (LSB).

Val – это байт, который мы будем передавать.

В конце, когда передача данных в микросхему закончена, выводим полученные данные, с помощью подачи HIGH на пин строба.

Итог

Теперь ты знаешь принцип подключения микросхем. Главное читать инструкцию, т.е. datasheet. И только после прочтения, идти включать ее в схему. Двигаемся дальше.

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
Плата Arduino
Arduino Uno
1 Поиск в магазине ОтронВ блокнот
Светодиод
АЛ102Б
6 Поиск в магазине ОтронВ блокнот
Сдвиговый регистр
SN74HC595
1 Поиск в магазине ОтронВ блокнот
Резистор
220 Ом
1 Поиск в магазине ОтронВ блокнот
Соединительные провода"Папа-Папа"1 Поиск в магазине ОтронВ блокнот
Макетная платаBreadboard-half1 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 1
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (0) | Я собрал (0) | Подписаться

Статью еще никто не комментировал. Вы можете стать первым.
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Arduino UNO
Arduino UNO
AVR-программатор USB ASP Солнечная панель 10Вт 12В поликристаллическая
вверх