• Объявления

    • admin

      Просьба всем принять участие!   24.11.2017

      На форуме разыгрывается спектроанализатор Arinst SSA-TG LC (цена 18500 руб). Просьба всем перейти по ссылке ниже и принять участие!

demiurg1978

Members
  • Публикации

    155
  • Зарегистрирован

  • Посещение

Репутация

19 Обычный

О demiurg1978

  • Звание
    Осваивающийся

Информация

  • Город
    Новосибирск

Электроника

  • Стаж в электронике
    Более 20 лет
  • Сфера радиоэлектроники
    Новосибирская область
  • Оборудование
    Промышленное оборудование

Посетители профиля

722 просмотра профиля
  1. Подключение LCD(HD44780) к микроконтроллерам AVR

    Все зависит от проекта. Требований к быстродействию. Характера выводимой информации. Статика, динамика. Полное обновление дисплея при посимвольном выводе и 20х4 занимает 84 мс. Если пачками выводить, выйдет быстрее. Так как дисплей медленное устройство, тормозить выполнение прграммы на время вывода информации настолько же неумное решение, как использование delay.
  2. Подключение LCD(HD44780) к микроконтроллерам AVR

    Cлона даже большим ртом можно съесть только кусочками. Это я к тому, если полное обновление занимает много времени, дробите процесс. Посимвольно (каждые 1 мс), по 5 или 10 символов за определенное время. Скажем, каждые 10 мс.
  3. Таймер в attiny2313

    Задержки от единиц мс нужно делать на программных таймерах. Вкратце. Таймер настраивается на тик. Значение зависит от проекта и требуемых минимальных задержек на программных таймерах. 1 мс, 10 мс, 100 мс. Нужное значение кладем в регистр совпадения. Включаем прерывание по совпадению. В прерывании переменная-счетчик считает тики. В основном цикле считываем значение переменной-счетчика, прибавляем к ней нужное количество тиков. Как только накрутило нужное время, что-то делаем.
  4. Пример Реализации Меню На Микроконтроллере

    Вот модуль меню. Ссылка. Он в составе модуля вывода информации. В структуре вы увидите ссылки на функции. Сам модуль вывода информации конечный автомат. Позже дополню.
  5. Пример Реализации Меню На Микроконтроллере

    Я под IAR переделал. Помучался, конечно. Бросал это дело, делал как Arv, на массивах. Не понравилось, сел разобрался и все. Нужно понимать, что суть MicroMenu в навигации. Бесплатным бонусом - не нужно запоминать пути. Все уже прописано. Редактировать переменные не сложно. Вечером выложу пример.
  6. Пример Реализации Меню На Микроконтроллере

    Просто для примера: //======================================================================================================================================================================================================================================================= // NAME PARENT NEXT_LEVEL NEXT_ITEM PREV_ITEM ENTER_FUNC PLUS_FUNC MINUS_FUNC MENU_INIT_FUNC TEXT //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- MAKE_MENU (L_OUT_I_ABC, NULL_ENTRY, L_MENU_TIME, NULL_ENTRY, NULL_ENTRY, NULL_FUNC, NULL_FUNC, NULL_FUNC, info_service_out_i_init, "ПАРАМЕТРЫ"); MAKE_MENU (L_MENU_TIME, L_OUT_I_ABC, L_MENU_SET_TIME, L_MENU_CURRENT, NULL_ENTRY, NULL_FUNC, NULL_FUNC, NULL_FUNC, menu_init, "ВРЕМЯ"); MAKE_MENU (L_MENU_CURRENT, L_OUT_I_ABC, L_MENU_MIN_CURR, L_MENU_CYCLE, L_MENU_TIME, NULL_FUNC, NULL_FUNC, NULL_FUNC, menu_init, "ТОК"); MAKE_MENU (L_MENU_CYCLE, L_OUT_I_ABC, L_MENU_QUANT_PASS, NULL_ENTRY, L_MENU_CURRENT, NULL_FUNC, NULL_FUNC, NULL_FUNC, menu_init, "ЦИКЛ"); Есть разница? Создание и редактирование меню в одном месте.
  7. Пример Реализации Меню На Микроконтроллере

    Давай куда-нибудь выйдем, отдельно обсудим, чтобы здесь не засорять. Как связаться?
  8. Пример Реализации Меню На Микроконтроллере

    Так TUI ваше творение? Поглядел как-то, не понравилось. Лучше MicroMenu на данный момент для меня нет. Все меню редактируется в одном месте. Так меню прописано в таблице, нет надобности запоминать навигацию. Все уже прописано в таблице.
  9. Пример Реализации Меню На Микроконтроллере

    Там все написано. Заходите, логин будка, пароль как написано.
  10. Подключение LCD(HD44780) к микроконтроллерам AVR

    Почему именно 8 бит? 4-битная шина экономичнее по выводам. Я только такой вариант подключения и использую.
  11. Не работает задержка

    DDRC |= (1>>0); PORTC &= (~(1>>0)); /* Replace with your application code */ while (1) { PORTC ^= (1>>0); _delay_ms(10000); } 1 - У операторов есть так называемая приоритетность, поэтому, чтобы в дальнейшем не париться, оборачивайте операции в скобки. Иначе, когда-нибудь поймаете трудноопределяемую ошибку. 2 - Настало время программных таймеров. Максимальное время сработки сторожевого таймера 2 секунды. А у вас на 10 секунд delay мк вешает.
  12. Не читается Atmega 128 16au

    Вообще, по идее, чтобы в дальнейшем не вляпываться, в программаторах должна быть функция прямого ввода числа. На калькуляторе получаете шестнадцатеричное число и вводите его. И не нужно ставить галочки, то есть, изначально убираем фактор ошибочной установки фьюзов.
  13. LCD 1602

    Это проблема всех дисплеев на этом контроллере. Причина в помехах. Защититься от этого никак. Решения проблемы: создание буфера в ОЗУ, в который мы выводим информацию. И через определенные промежутки времени посимвольно выводить информацию на дисплей из буфера. Алгоритм модуля дисплея: инициализация дисплея, переменных. Настройка программного таймера. Скажем на 1 мс. Как только время вышло, если новая строка отправка адреса строки. Затем вывод строки. Все это каждые 1 мс. Полное обновление дисплея происходит за (16 * 2) + 2 адреса строк = 34 мс. Вариант второй. Каждые от 100 мс до 1 секунды выводить нужную информацию на дисплей. Но это тормозит МК на все время вывода информации. Поэтому решение выбирается из требований к проекту. Реакции системы на события.
  14. Я из Новосибирска. Напишите свои контакты.
  15. Считывание данных с DS1307

    Я делаю на устройства на заказ. И мой принцип - сделал и забыл. Последние слова - ключевые. А это значит, что никакого контрафакта. Зато и сплю спокойно, с чистой совестью. Конечно бывают, ммм, нюансы... Но это - рабочие моменты, из которых делаются выводы. Да, это значит, что комплектующие дороже. Но нервы и время мне дороже.