Содержание

Драйвер чипа CH340 USB-Serial в Linux

Всем привет! У нас уже была статья про установку драйвера CH340 под операционную систему Windows, а сегодня мы вам расскажем про то, как установить CH340 под семейство операционных систем Linux.

Список поддерживаемых плат

Узнаём версию ядра Linux

Первым делом нам необходимо определить какая у нас операционная система и какое ядро используется. Для удобства воспользуемся командой neofetch (neofetch - не является стандартной утилитой, воспользуйтесь инструкцией по установки neofetch) Если в выводе строка Kernel первая цифра больше либо равна 5, то выполняем шаги в разделе Linux с версией ядра 5.x и более свежие версии. Если значение строки Kernel меньше либо равно 4, то читаем раздел Linux с версией ядра до 4.x (включительно).

Linux с версией ядра 5.x и более свежие версии

Мы используем ОС Ubuntu. В вашем дистрибутиве команды из стать могут не работать.

В выводе команды нас интересует информация в строке kernel. Вся информация ниже будет рассматриваться для ОС Ubuntu с ядром 6.8.0-40.

  1. Воспользуемся командой dmesg | grep ch34

Вывод команды dmesg пуст

  1. Вывод команды dmesg | grep ch34
  2. Если вывод команды пуст,тогда переходим в Arduino IDE.
  3. И запускаем пример blink
Blink.ino
  1. // Создаём переменную для хранения пина светодиода
  2. constexpr uint8_t LED_PIN = 13;
  3.  
  4. void setup() {
  5. // Настраиваем пин №13 в режим выхода,
  6. pinMode(LED_PIN, OUTPUT);
  7. }
  8.  
  9. void loop() {
  10. // Создаём переменную для хранения времени изменения состояния светодиода
  11. static uint8_t tmr;
  12. // Если с момента последнего изменения состояния светодиода прошло больше 1 секунды
  13. if (millis() - tmr >= 1000) {
  14. // Тогда сохраняем время изменения
  15. tmr = millis();
  16. // И изменяем состояние светодиода
  17. digitalWrite(LED_PIN, !digitalRead(LED_PIN));
  18. }
  19. }

Команда dmesg выводит ошибки

  1. Если в консоли появились ошибки, например:
  2. Необходимо удалить те программы, которые привели к ошибке, т.е. в нашем случаее будет удаляться программа brltty
  3. Воспользуемся командой apt remove -y brltty
  4. После успешного удаления переходим Arduino IDE
  5. И запускаем пример blink
Blink.ino
  1. // Создаём переменную для хранения пина светодиода
  2. constexpr uint8_t LED_PIN = 13;
  3.  
  4. void setup() {
  5. // Настраиваем пин №13 в режим выхода,
  6. pinMode(LED_PIN, OUTPUT);
  7. }
  8.  
  9. void loop() {
  10. // Создаём переменную для хранения времени изменения состояния светодиода
  11. static uint8_t tmr;
  12. // Если с момента последнего изменения состояния светодиода прошло больше 1 секунды
  13. if (millis() - tmr >= 1000) {
  14. // Тогда сохраняем время изменения
  15. tmr = millis();
  16. // И изменяем состояние светодиода
  17. digitalWrite(LED_PIN, !digitalRead(LED_PIN));
  18. }
  19. }

Linux с версией ядра до 4.x (включительно)

Раздел находится в разработке

Ресурсы