Задать вопрос
Ответы пользователя по тегу Программирование
  • Сортировка пузырьком. Первый элемент?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Это не сортировка пузырьком. Это бред. Посмотрите на википедии реализации:
    https://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D1%80%D...

    public int[] Search(int[] gmas)
    {
        for (int i = 0; i < gmas.length-1; i++) 
        {
            bool swapped = false;
            for (int j = 0; j < gmas.length-i-1; j++) 
            {
                if (gmas[j] > gmas[j+1]) 
                {
                    int b = gmas[j]; 
                    gmas[j] = gmas[j+1];
                    gmas[j+1] = b;
                    swapped = true;
                }
            }
            if(!swapped)
            break;
        }
    }
    Ответ написан
    Комментировать
  • Как реализовать хорошую графику на arduino?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Вот прям недавно на гиктаймсе были статьи про это дело. Нашел на стороннем ресурсе: robotclass.ru/tutorials/arduino-nextion-tjc
    Вкратце, дисплей со своим контроллером, рисует интерфейс, отдает команды по нажатию на тач, обновляет интерфейс согласно входной информации от ардуино.
    Ответ написан
    1 комментарий
  • Софт для организации музыки на компьютере?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Поскольку ОС в топике не задана, считаем что работаем под Windows 7 и новее.
    0. TagScanner - бесплатен, поддерживает групповые операции, заполняете теги из онлайн баз данных, восстанавливает теги из структуры папок и имён файлов, раскладывает треки, создавая папки по тегам. Для меня - идеален, лучшего я не находил.
    1. iTunes. Особенно радует genius - составление плейлиста на основе данных одного трека.
    2. TagScanner иногда помогает.
    3. Если правильно помню, tag scanner тоже умеет
    4. Не очень понял суть. Интересует статистика коллекции или что?
    5. iTunes синхронизируется с WindowsMobile, с андроидом печально. Но можно.
    6. AIMP обладает библиотекой и редактором тегов, в прицепе тоже неплохой вариант, но про синхронизацию с андроидом не знаю, я всегда ручками таскал треки на телефон.
    Ответ написан
    Комментировать
  • Альтернатива Arduino для обучения?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    как-то принято детей за идиотов считать. Ребёнку от 14 лет можно спокойно дать основы С и пусть программирует, это более правильный путь, поскольку приближен к реальности.
    Я считаю, что программировать микроконтроллеры без знания их устройства - это шаг назад. Половина проблем ардуинолюбителей происходит от непонимания, что и как работает внутри микроконтроллера.
    Таймеры, прерывания, регистры состояний - для большинства ардуинщиков это просто слова. Отсюда непонимание глюков, непонимание, почему код не работает правильно или не работает совсем, и почему скомпилированный результат такой большой по размеру.

    В своё время я ещё школьником ходил в кружок радиоэлектроники, где мы год программировали 8051 серию микроконтроллеров на ассемблере. собирали частотомеры, писали софтовый ШИМ для гирлянды, управляли микросхемой цифрового радиоприемника, делали автоответчик для телефона на микроконтроллере. И погодную станцию кто-то делал точно. Все писалось в tamely studio и заливалось в микроконтроллер простейшим программатором.
    К микроконтроллерам я вернулся спустя лет 10. И как-то вообще не испытываю проблем с переработкой прошивок и сборкой новых устройств на микроконтроллерах.
    Ответ написан
    6 комментариев
  • Развитие в электронике/схемотехнике. Есть ли аналог схеме ориентирования в программировании?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    1. Освоить базовый курс электротехники, чтобы понимать, куда, как и когда текут токи
    2. Освоить базовый курс по пассивным и активным радиоэлементам
    3. Выбрать направление: цифровая или аналоговая техника.
    4. Если аналоговая, то учимся делать радиоприемники, усилители и т.д.
    Если цифровая - проходим базовый курс цифровой схемотехники.
    Параллельно п.4 учимся паять и изучаем нормальный софт для проектирования схем и печатных плат (P-CAD, Altium designer, Eagle)

    Советы сразу брать ардуино мне не по душе, потому как без базовых сознаний аналоговой и цифровой схемотехники сложно к ней приделать что-то более интересное, чем пара светодиодов. Надо хотя бы понимать, в чем разница между биполярным и полевым транзистором, как их использовать и чем опасно для транзистора реле и индуктивные нагрузки в целом.
    Более того, лично я допускаю сборку изделия из ардуины и кучи модулей только в одном случае: это макет. На этом макете я отработаю софт и железо, потом разработаю свою печатную плату и на базе макета соберу красивое и работоспособное изделие. А макет будет разобран. Не вылезать за пределы ардуино с парой модулей и лапшой из кабелей это все равно что проектировать станки из детского конструктора. Можно, но ценность невелика.
    Ответ написан
    Комментировать
  • Какой вариант меньше "изнашивает" микроконтроллер?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Если ваша переменная находится в оперативной памяти микроконтроллера, а не в энергонезависимой - то "износ" никто не считает. Вот на запись в энергонезависимую память есть лимит. Обычно гарантируется 10000 перезаписей ячейки. А количество перезаписи в оперативной памяти. Ну, если найдёте такие цифры - покажите, будет интересно.
    Ответ написан
    5 комментариев
  • Почему AVR глючит на вычислениях в основной программе при разрешенных прерываниях?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Скорее всего у вас пересекаются области памяти, которые используются внутри прерывания, которое отвечает у вас за обновление светодиодной индикации и области памяти, которые вы задействуете в основной программе.
    Ответ написан
  • Как управлять arduino с RF пульта?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Для начала неплохо бы выяснить, что же у вас за "тот самый" пульт и приёмник и в каком виде он вам выдаёт код нажатой кнопки.
    В общем виде ваша задача сводится к скану информации с приемника и одному оператору case, в котором вы, в зависимости от кода нажатой кнопки, пишете код для выполнения тех или иных действий.
    Ответ написан
    Комментировать
  • Эмулятор клавиатуры на arduino?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Используйте коды 79 и 80 для клавиш "стрелка вправо" и "стрелка влево" соответственно.
    Ответ написан
    Комментировать