Оглавление:

Последовательная связь Arduino и Python - дисплей клавиатуры: 4 шага
Последовательная связь Arduino и Python - дисплей клавиатуры: 4 шага

Видео: Последовательная связь Arduino и Python - дисплей клавиатуры: 4 шага

Видео: Последовательная связь Arduino и Python - дисплей клавиатуры: 4 шага
Видео: 🤖Я в шоке! ChatGPT пишет Arduino проекты 2024, Июль
Anonim
Последовательная связь Arduino и Python - дисплей клавиатуры
Последовательная связь Arduino и Python - дисплей клавиатуры

Этот проект предназначен для пользователей Mac, но он также может быть реализован для Linux и Windows, единственный шаг, который должен отличаться, - это установка.

Шаг 1. Установка программного обеспечения

Установка программы
Установка программы
  1. Загрузите и установите Arduino ->
  2. Загрузите и установите Python 2.7 ->
  3. Загрузите библиотеку Python "pyserial-2.7.tar.gz" ->
  4. Разархивируйте pyserial-2.7.tar.gz
  5. Откройте Терминал и введите:

cd /users/"Your-User-Account"/Downloads/pyserial-2.7

sudo python setup.py установить

Установка программного обеспечения готова!

Шаг 2: Подключение

Проводка
Проводка
Проводка
Проводка
Проводка
Проводка
Проводка
Проводка
  1. Ардуино Уно
  2. Sparkfun 12-кнопочная клавиатура

Подключение выполнено без внешних резисторов, вместо них я использовал внутренние подтягивающие резисторы микроконтроллера (внутренние подтягивающие резисторы Arduino имеют номинал от 20 кОм до 50 кОм).

Чтобы активировать внутренние подтягивающие резисторы, установите INPUT-Pins HIGH в коде.

Если вы используете другую клавиатуру, посмотрите паспорт правильной проводки, иначе это может повредить ваш микроконтроллер.

Шаг 3: код Arduino

Код Arduino
Код Arduino
  • Сначала мы определяем матрицу символов для ключей
  • В клавиатуре используются обычные разъемы переключателей, которые расположены в 4 строки (контакты 7, 2, 3 и 5) и 3 столбца (контакты 6, 8 и 4), которые определены как Arrays rowPins и colPins.
  • Функция setup ()

    • Откройте последовательный порт с помощью Serial.begin ();
    • Установить столбцы как ВЫСОКИЙ ВЫХОД
    • Активируйте подтягивающие резисторы, для этого установите строки как INPUT-Pins HIGH;
  • Функция getkey ()

    • Установите каждую строку LOW и проверьте, является ли один из столбцов LOW. Поскольку подтягивающие резисторы все строки находятся в ВЫСОКОМ состоянии, пока одна клавиша не будет нажата. Нажатая клавиша генерирует LOW-сигнал на INPUT-Pin. Этот НИЗКИЙ указывает на нажатую клавишу в этой строке и столбце.
    • Подождите, пока клавиша не будет отпущена, и вернет символ массива клавиатуры или 0, если клавиша не была нажата.
    • Используйте задержку (debounceTime), чтобы стабилизировать сигнал

Шаг 4: Код Python_2.7

Код Python_2.7
Код Python_2.7
  • Импортировать последовательную библиотеку
  • Определите переменную connected = FALSE, позже эта переменная будет использоваться для проверки, доступно ли последовательное соединение или нет
  • Откройте последовательный порт с помощью serial. Serial («Имя вашего последовательного порта», бод)

    • Чтобы получить имя вашего последовательного порта, нажмите -> Инструменты / Последовательный порт в Arduino IDLE.
    • скорость должна быть такой же, как в коде Arduino
  • Во время теста цикла, если соединение доступно или не считывает последовательный сигнал и устанавливает переменную connected = TRUE, он зацикливается, пока не получит последовательное соединение
  • После подключения прочтите серийный номер в цикле while и поместите этот ввод в новую переменную "var".
  • закройте порт с помощью ser.close ()

Рекомендуемые: