Оглавление:
Видео: Использование ОЗУ ПК для Arduino через последовательный порт: 7 шагов
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Мой друг вдохновил меня своим небольшим проектом Arduino. В этом небольшом проекте задействована Arduino UNO R3, которая считывает данные программой, созданной в среде Arduino IDE, и отправляет их в последовательный порт (USB-порт) программой C #, созданной в Visual Studio. Поскольку это была моя первая сборка, включающая ардуино, я очень доволен результатом, и я кое-что узнал о том, как подключать провода и как программировать ардуино. Поскольку я не являюсь экспертом в программировании или обращении с микроконтроллерами, вы можете ожидать довольно простых инструкций, но я постараюсь изо всех сил объяснить вам этот проект. Надеюсь, вам понравится это руководство. Этот проект можно развить гораздо больше, в будущем я думаю, что сделаю приборную панель, на которой вы сможете отслеживать использование ОЗУ, использование ЦП и температуру графического процессора и… Ну, вы понимаете, «в наши дни существует так много возможностей»:)
Шаг 1. Вещи, которые вам понадобятся
1x Arduino UNO R3
1x USB-штекер для кабеля типа B.
12 резисторов 220 Ом
12 проводов (я использую провода для громкоговорителей, работает отлично) и 12 перемычек между мужчинами и женщинами ИЛИ 12 перемычек между мужчинами и женщинами (выбор за вами)
12 прямых игл (те металлические булавки, которые раньше поставляются в той же упаковке, что и сама Arduino) (см. Изображение)
1x 7-сегментный 4-дюймовый цифровой светодиодный дисплей с общим катодом 0,36 дюйма
1x паяльник с припоем
1x инструмент для зачистки проводов
1x медная труба (минимум 11 мм внутренний Ø (диаметр) при использовании 2 медных труб, как у меня)
Термоусадочная проволочная пленка (Ø (диаметр) 2,5 мм)
1x тонкая деревянная доска (вы можете сделать любой дизайн, какой захотите, моя выглядит немного неуклюже, я думаю:) Сделайте то, на что вам хотелось бы взглянуть. Здесь пригодился бы 3D-принтер)
Шаг 2: Подключение
Здесь также пригодится макетная плата, если вы хотите протестировать проводку, прежде чем приступить к пайке резисторов и проводов.
НО, если ты знаешь свое дело, как я * эхм *, ты можешь сразу начинать паять все вместе. !!! НО НЕ В АРДУИНО !!!
Это довольно просто, фотографии говорят сами за себя, я думаю:)
Здесь вам пригодится паяльник, так как нам нужно припаять провода к контактам дисплея, а резисторы - к 4 контактам COM на дисплее (COM1, COM2, COM3, COM4), как показано на первом изображении. (Резисторы не обязательно должны быть обращены в одном направлении, но мне нравится постоянство, поэтому …)
Если вы используете термоусадочную пластмассу для проводов, что я рекомендую (чтобы свести к минимуму риск короткого замыкания и статики / сбоев). Вы можете, как и я, использовать не очень горячую часть паяльника (выше на паяльнике) или зажигалку для усадки пластика, решаете вы.
Я действительно рекомендую пометить провода, чтобы вы знали, какой провод куда пойдет, это будет намного проще, когда вы начнете собирать весь проект (по крайней мере, для меня и моего странного дизайна…).
Я также рекомендую припаять «черные, маленькие, пластиковые, металлические контакты» к концам проводов (см. Два последних изображения).
Припаяв провода к контактам дисплея, можно начинать подключать провода к Arduino UNO (см. Первое изображение).
Шаг 3. Установка Arduino IDE и поиск нужного порта
Сначала вам нужно установить Arduino IDE (используйте эту ссылку: https://www.arduino.cc/en/Main/Software) в зависимости от того, какая у вас ОС (я использую Windows 10), вам нужно загрузить ее для нужной, поэтому для Windows 8.1 ^ вы можете перейти в магазин Microsoft и загрузить там программное обеспечение Arduino IDE (или перейти по ссылке выше).
Теперь вам нужно подключить Arduino UNO к одному из USB-портов вашего компьютера и выяснить, к какому COM-порту вы подключены с вашим Arduino, но как? Что ж, вы можете перейти к управлению устройствами в Windows, щелкнув правой кнопкой мыши логотип Windows на панели задач и выбрав DEVICE MANAGER (см. Изображения), там должен быть один с именем USB-serial, это правильный порт.
Затем в программе Arduino IDE щелкните инструменты, а затем порт и установите его на правильный порт (для меня это COM4).
Шаг 4: Код для Arduino UNO
Теперь мы можем начать самое интересное - КОДИРОВАНИЕ!
Сначала вам нужно назначить двенадцать (12) контактов дисплея различным переменным (см. 1-е изображение).
(COM-контакты, для которых загорится "позиция")
Затем вам нужно создать еще несколько переменных и массив, который будет принимать символы, полученные портом, и помещать их в свой массив (см. 2-е изображение).
Теперь вам нужно настроить контакты или порты на Arduino на ВЫХОД (см. 3-е изображение).
Я вернусь к циклу чуть позже, но сначала вам нужно сделать так, чтобы числа правильно отображались на дисплее.
Теперь мы собираемся сделать функции для чисел 1-9 на дисплее (см. 4-е, 5-е и 6-е изображения).
Поскольку я не собираюсь ничего отображать в первой позиции дисплея, я сделал три (3) функции для остальных позиций (каждая для одной позиции). Вам необходимо создать функцию для каждой позиции цифры, для которой будет отображаться определенное число (см. 7-е, 8-е и 9-е изображения).
Я также сделал функцию сброса, чтобы сделать данные, отображаемые на дисплее, более надежными (см. 10-е изображение).
Теперь о цикле, который будет повторяться во время выполнения программы.
Теперь вы можете скомпилировать и загрузить код в Arduino, нажав кнопку загрузки (программа скомпилируется и загрузится в Arduino, если компиляция прошла успешно) (см. 11-е изображение)
Шаг 5. Код для отправки использования ОЗУ на последовательный порт (C #)
Теперь я собираюсь показать вам один из способов отправки данных в последовательный порт на C #.
При кодировании я использую Visual Studio 2017. Код совсем небольшой, но потребовалось время, чтобы разобраться в некоторых частях, например, как заставить программу запускаться при запуске компьютера и не показывать уродливое окно консоли на рабочем столе или на панели задач, ну, хватит разглагольствования, давайте сразу в код!
Итак, чтобы начать с этого проекта кода в Visual Studio, вы можете начать, щелкнув файл и новый проект (см. 1-е изображение), а затем выберите VISUAL C #, а затем WINDOWS CLASSIC DESKTOP и, наконец, нажмите CONSOLE APP (. NET FRAMEWORK) и конечно, назовите его как хотите и сохраните где угодно. (см. 2-е изображение)
Теперь можно приступить к написанию программы…
вам понадобятся те, которые используют директивы (см. 3-е изображение), ну на самом деле вам не нужны все они, но не имеет значения, есть ли они там.
И основной код выглядит так (см. 4-е изображение), не забудьте использовать тот же ПОРТ и BAUD-SPEED (9600), что и в коде ARDUINO UNO !!! (см. 5-е изображение). И также не забудьте проверить, сколько у ВАС ОЗУ, у меня установлено 8 ГБ (7,90 ГБ) ОЗУ, поэтому у меня в коде 7,90 (см. 4-е изображение).
Если вам интересно, почему у меня есть DllImports, это потому, что я хотел полностью скрыть окно от пользователя, в данном случае от ME, потому что программа запускается автоматически при загрузке компьютера. Но я объясню это позже.
На этом этапе лучше всего протестировать и Arduino-, и C # -программу и убедиться в отсутствии ошибок. Очень важно, чтобы у вас была запущена программа Arduino до того, как вы начнете запускать программу C #, потому что в противном случае она не будет работать.
Теперь, когда программа написана, вы можете перейти к папке программ, пока не найдете папку bin и не откроете ее, а затем дважды щелкните папку отладки, и вот она, * уф * ваше золотое приложение / программа, теперь прямо -щелкните по нему, а затем нажмите «Создать ярлык»… Затем нажмите на клавиатуре (окна) ⊞ -клавишу + R-клавишу. Затем напишите в текстовом поле: shell: startup и нажмите (ввод / возврат) ↵ -клавишу, когда вы находитесь в этой папке. Я хочу, чтобы вы перетащили созданный ярлык вашего приложения в папку автозагрузки. И вот … Теперь программа будет запускаться при загрузке компьютера.
Теперь все должно работать, а если нет, то лучше займитесь поиском проблемы:).
Шаг 6: создание кейса
Теперь мы можем перейти к более физической части создания конструкции, имейте в виду, что вам придется внести некоторые коррективы в корпус, чтобы все в него поместилось. В моем случае это очень плотно подходит для всего, поэтому я рекомендую сделать он повсюду немного больше. Но если вы хотите сделать такой же, как у меня, я дам вам несколько основных мер и как собрать его воедино. Чтобы разрезать трубы, я использовал труборез, они идеально подходят для резки труб, да ладно, черт возьми …
Очевидно, что хорошо протестировать, чтобы в течение всего процесса сборки ничего не было потеряно, подключив его к компьютеру и запустив программу C # (не забудьте вставить Arduino в тот же USB-порт, что и раньше).
Поэтому для начала вам понадобится деревянная доска толщиной примерно 4 мм (0,157 дюйма). См. 1-е изображение для получения подробной информации об измерениях всех частей.
Я использую пистолет с горячим клеем, потому что это легко и быстро, я рекомендую это, но вам решать, что вы будете использовать …
PS. Я думаю, что изображения будут описывать процесс немного лучше, но обязательно прочтите это: я использую универсальный нож с защелкивающимся лезвием для вырезания кусков, это заняло некоторое время, но когда это будет сделано, вы можете вырезать там, где дисплей будет (на куске 60 x 45 мм), вы должны очень плотно вставить дисплей в «отверстие для дисплея», когда вы сделаете это, вы можете просверлить отверстия в нижней части «бокса для дисплея» Для установки медных труб важно также, чтобы трубы плотно входили в отверстия. Теперь вы можете начать протягивать провода от дисплея через трубы (если вы используете две (2) трубы, вы можете разделить количество кабелей, чтобы они проходили через трубы (шесть (6) проводов в каждой трубе…) (см. 2-е, 3-е, 4-е, 5-е, 6-е и 7-е изображения)).
PS. Я не считаю это необходимым, но при желании можно просверлить несколько отверстий в нижней части, чтобы Arduino могла немного «дышать». (см. 10-е изображение).
Теперь вам нужно будет просверлить отверстия для труб на верхней доске «Основание» (см. 8-й рисунок). Когда вы склеили все части вместе, НО не забывайте оставлять одну сторону не приклеенной все время, чтобы вы могли извлечь Arduino в случае использования в другом месте. Я использовал два (2) небольших магнита и две (2) маленькие металлические детали, чтобы убедиться, что боковая стенка находится на месте. вы можете начать подключать провода (если вы сделали, как я, а именно использовали обычные провода для динамиков, вы можете подключить провода к перемычкам «мама-папа», а затем к Arduino), обязательно подключите правильные порты на Arduino. (см. последнее изображение)
Поскольку края в целом были довольно некрасивыми, я решил использовать тонкую веревку, чтобы прикрыть края, я думаю, что в итоге это выглядит довольно красиво. Но помните, что на этот раз дизайн не был для меня главной идеей проекта, поэтому обязательно сделайте ваш еще красивее, чем мой * это не так уж сложно *.
Шаг 7: ЭТО ЖИВОЕ И РАБОТАЕТ
УБЕДИТЕСЬ, ЧТО СПРОСИТЕ МЕНЯ ЧТО-НИБУДЬ, ЕСЛИ ТЫ НЕ УДОСТОВЕРЯЛ ЧТО-ТО, КАСАЮЩИЕСЯ ЭТОГО ПРОЕКТА, И Я ПОПРОБУЮСЬ ИЗ ЛУЧШЕГО, ЧТОБЫ ОБЪЯСНЯТЬ ВАМ ЭТО!
(Я ТАКЖЕ БУДУ ПРЕДЛОЖИТЬ, КАК СДЕЛАТЬ КОД ДАЖЕ ЛУЧШЕ, ПОСКОЛЬКУ Я НЕ ЭКСПЕРТ ПО ARDUINO UNOS).