6 690 сообщений в этой теме

my504    348

Тут все очень просто.

Нормальный программист не назовет функцию в своем коде именем normalnaya_funkciya.

Даже если она и в самом деле нормальная.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
COKPOWEHEU    257
4 часа назад, Demonrostov сказал:

Ничего не понял, но код работает как надо......

Любой может написать код, понятный для машины. Хорошие программисты пишут для людей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
dosikus    12

Вот так же и те кто анализируют ваш код нихрена не поймут...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
LEVV2006    158

Всем привет! У меня возник вопрос и я решил с вами проконсультироваться так как сам пока не могу найти ответ. 

Задумка такая. Хочу сделать небольшие часы на ИН-16. Эти часы всегда будут стоять возле ПК и питаться от порта USB. Кроме того решил добавить возможность общения часов с ПК посредством USART и не только передача данных но и возможность перепрошивки. А это значит что нам нужна микросхема с выходами TX,RX,DTR. 

Вы скажите так есть готовая микра. FT232RL. И я отвечу да. Есть. Но она дорогая, паять из за размеров не очень удобно и  она большая :)

У все думал чем заменить эту микросхему... И нашел вот этот проект. В этом проекте используется микросхема Attiny45/85. Она идеальна подходит по габаритам и стоимости! Кроме того в проекте присутствуют исходники. 

Но не обошлось без ложки дегтя..... Почему то скорость только 4800. и нет вывода DTR. Хотя этот вывод реализован на более старших моделях. Да и скорости там повыше будут.

Очень бы хотелось бы допилить Attiny45/85 хотя бы до скорости 9600 и добавить вывод DTR. Я думаю что даже можно использовать внешний кварц, а ногу Reset превратить в вывод DTR. 

Скажите пожалуйста стоит ли оно того? Или есть какие то другие решения? Может уже кто то сталкивался с подобным вопросом? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    630

Не стоит. У микросхемы есть дешевый китайский аналог - CH340, правда со своими дровами но они есть и для 10-ки. А вообще Arduino Nano - там всё уже встроено, разведено и подключено к нужному порту. Да и достаточно миниатюрное.

В проекте на TINY85 скорость больше сделать нельзя, не потянет по ресурсам... там и так всё впритык по таймингам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
mail_robot    1 407

CP2102 все же лучше 340-ой как мне показалось. А дороже всего на чуточку. Зато связь гораздо стабильнее

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
LEVV2006    158

CP2102 мне кажется мелковата для пайки. Да и не просто впаять её... 

CH340 не плоха. в 2 раза больше чем TINY85 но паять удобно. К сожалению в близлежащих магазинах данной микры нет. Придется заказывать с Алика. Цена 250р за 10шт :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
DmitryS    28

@LEVV2006 https://ru.aliexpress.com/item/CH340G-5V-USB-to-TTL-UART-Serial-Converter/32524218818.html?spm=a2g0s.9042311.0.0.5C5rug

такие же ест и на 2102 , все сделано :D

Изменено пользователем DmitryS

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alexeyslav    630

У меня наоборот с CP2102 отрицательный опыт... 2-3 дня работы и винда ловит синий экран из-за этого поделия.

Лучше уж оригинал FT232RL у неё в драйвере больше критических настроек вроде таймаутов и т.д. что бывает весьма важно в радиолюбительской практике когда нужен быстрый ответ от ведомого устройства, по умолчанию там стоит таймаут в 20мс, если буффер в 15 байт не заполняется то в программу он прийдёт не раньше таймаута, а это бывает очень критично при интенсивном двустороннем обмене с девайсом в стиле запрос-ответ. Так вот в других чипах этой настройки НЕТ, и они тормозят.

Изменено пользователем Alexeyslav

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
КЭС    1 119
16 часов назад, LEVV2006 сказал:

CH340 не плоха

Имею отрицательный опыт. Купил на Али 5шт преобразователей за 200р. (зато дешево!), работают, в ОС определяются (дрова установлены, конечно). Но вот программатор Тритон через них работать отказался. Вернее, начинает программировать (или считывать), а затем рандомно по времени вываливается ошибка. До этого юзал TrendNet TU-S9, без нареканий. При попытке долговременного использовании в других случаях (разные программы) выяснилось, что порт тупо теряется. Причем в диспетчере устройств он отображается, а программы его не видят. Лечится удалением порта (в диспетчере), затем при обновлении конфигурации он обнаруживается, и работает опять какое-то время (может несколько дней отработать, а может часов). В общем, не рекомендую.

Изменено пользователем КЭС

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Sergey-Ufa    615

Покупал на Али пару десятков адаптеров USB-RS485 на CH340. Все работает идеально, как с заводскими приборами, так и с самоделками на AVR. Уже почти все ушли в дело, надо еще с десяток прикупить. А программаторы через такие вещи действительно не работают. Эта тема уже неоднократно поднималась.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
КЭС    1 119
6 минут назад, Sergey-Ufa сказал:

программаторы через такие вещи действительно не работают

Имеется в виду USB-COM? Есть масса других преобразователей, с которыми таких проблем у меня не было (один я упомянул).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Sergey-Ufa    615

Здесь дело скорее всего не в самом чипе моста USB-UART, а в полноценности формирования интерфейса RS-232. Многие из дешевых адаптеров USB-COM ограничиваются формированием только RX и TX.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
my504    348

Диву даюсь, коллеги...

Что за любовь к CDC USB для поделок, где требуемый рейт обмена редко превышает 9600, а по факту даже это много?

Почему бы не адаптировать под свою задачу HID USB и не писать под него свой софт для компьютера.

Никогда ничего не отваливается, можно автоматически запускать целевое приложение при соединении, максимально возможный рейт 64 кБАЙТ. Причем главное совсем не в USB, а в UART, патамушта нужно организовать обмен моста с МК по уарту с рейтом  в несколько мбит, иначе 64 байта за 1 мс  (плюс синхронизация данных) не освоить.

Обычно производители МК предоставляют стек USB под свои МК и драйверы для ОС для разных классов USB.

Изменено пользователем my504

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ARV    442
Только что, my504 сказал:

Что за любовь к CDC USB для поделок, где требуемый рейт обмена редко превышает 9600, а по факту даже это много?

Я так понимаю, основная причина - отсутствие необходимости писать собственное прилжение для обмена с HID, CDC же обеспечивает работу с любым "терминалом", и даже в программировании со стороны ПК много проще - открыл "файл" или пиши/читай. HID открыть просто так мало, его еще в системе найди попробуй...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
LEVV2006    158

Как то вы все слишком глубоко углубились в проблему :) Тема форума "Вопросы От Начинающих По Мк" и мне кажется чем проще будет решение тем лучше. 

HID USB Уж простите но на мой взгляд это слишком глубокие дебри... Я один раз окунулся в это и больше как то не хочется. 

Кстати ссылка товарища Геннадия весьма интересна и  осталась без внимания! 

13 часа назад, Геннадий сказал:

Если я правильно понял то на микросхеме которая имеет аппаратный USB можно организовать USB-UART конвектор. И мало того, без особых проблем можно прямо из кода программы писать сообщения в UART. + остается возможность перепрошивки. 

К сожалению информации маловато.... Реализовать бы это на atmega32u4. Так как она у меня уже есть в виде платы Леонардо. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ARV    442
Только что, LEVV2006 сказал:

Реализовать бы это на atmega32u4. Так как она у меня уже есть в виде платы Леонардо

Попробуйте LUFA, но мне кажется, не для начинающего это...

Вот ссылка на проект LUFA, то была ссылка на документацию

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
RA3DTI    56

   Здравствуйте. Вопрос. Возможно - ли в МК зашить программу  автономного генератора, чтобы он не мешал (или почти не влиял) на выполнение основной программы.

Используется  Atmega 8. Требуется меандр с частотой от 9 до 12кГц, частота кварца 16 МГц, или  лучше использовать отдельный (внешний) генератор?

P.S.  Возможно использование других Atmega……N.

Пишу в Atmel studio 6.2.

Изменено пользователем RA3DTI

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Viktor26    307

@RA3DTI можно. Абсолютно не будет мешать. В мега8 есть аж 3 аппаратных шима. Используйте любой

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BiBOX    4

Кто-нибудь встречал примеры,где описывается как работать с Flash внешней по SPI? Сейчас начал искать и был удивлён,ни одного описания как с этой флешью работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Viktor26    307

@BiBOX смотря какая флеш. Они разные есть

а так впринципе пару корпусов сдвиговых регистров и параллельная шина готова

Изменено пользователем Viktor26

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Lopnul    0

Ребята, подскажите, МК STM32F030, появилась необходимость выбора режима по нажатию кнопки с дальнейшем сохранением настроек во флэш МК. В голову пришло несколько вариантов:

1) Сохранение каждый раз по нажатию на кнопку. НО у F030 вроде как 1'000 циклов на запись и если кто-то чрезмерно увлечется, можно и память "запороть".

2) Сохранение во флэш при выключении питания. Но как лучше, поставить бОльшую емкость после лм-ки (стабилизатора) и опрашивать АЦП (понижение питания) каждые 100мс или маленькая емкость, но опрос каждую 1мс. Никогда не задавался вопросом, насколько ресурс самого МК будет уменьшен, если например, таймером запускается АЦП, в прерывании АЦП сохраняется значение и делаться это будет раз в 100мс или раз в 1мс?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: Сергей Скопинцев
      Нужно разработать циклическую программу сбора информации от 10 измерительных источников. Период повторения цикла - одна секунда
      Источники:
       М - тензопреобразователь давления. Мостовая схема питается постоянным напряжением, выходной сигнал от 0 до 100 милливольт
       Т, ТМ, ТА- три канала измерения изменения напряжения в диапазоне от 400 до 600 милливольт (тоже нужен мост?)
       ЛМ - анализатор максимума напряжения (от 0 до 5 Вольт) по 10 точкам более-менее распределённых в измерительном цикле. Найденный максимум потом должен участвовать в анализе, постепенно уменьшаясь на 20% каждый цикл
       ВЛ - измерить напряжение на Малой емкости (50 пФ) с помощью емкостного делителя по алгоритму:
                         Снять Землю со средней точки емкостного делителя, подать на емкостной делитель положительный Импульс
                         Замерить нужное нам напряжение в средней точке делителя
                         Снять положительный Импульс с делителя, посадить на землю среднюю точку делителя
      - остальные каналы К7...К10  служебные
      Разрядность данных - 16 двоичных.

      Результаты писать на MicroSD текстовым файлом, на первом месте в строке текущее время в секундах, остальные каналы разделены пробелами
      Порядок каналов:
      Т - М -ТМ - Вл - ЛМ -...
      Коэффициенты усиления по каждому информационному каналу должен иметь возможность изменить оператор по формуле y = Ax + B
      Прибор автономный, питается от + 5 Вольт.
       
    • Автор: Ru_s
      Здравствуйте. Подскажите пожалуйста, возможно ли на attiny13 реализовать такую штуку. Мне в процессе работы программы нужно поменять режим работы таймера/счетчика с fast PWM на обычный счёт, отсчитать длительный промежуток времени и опять вернутся в режим ШИМ. Т.е. я подаю на ногу сигнал ШИМ и когда он в максимальном значении, я его отключаю, и тупо подаю на ногу высокий лог. уровень. В это время Т/С по идее свободен, и мне надо посчитать время работы выхода на максимальном лог. уровне, при достижении какого-то значения времени нужно перевести т/с обратно в ШИМ. Возможно ли это? И как приблизительно это реализовать
    • Автор: Kiraspbkiev Kira
      День Добрый. Есть два вопроса от новичка: 1) Правильная ли схема сделанная мною? 2) если схема верна то как правильно подключить к atmega328p-mu usb на чипе cp2102-grm?
      На схеме колодка JP1 это AVR ISP а JP2 это UART
      С проектированием столкнулся в первый раз, цель узнать что то новое и сделать своими руками:)

    • Автор: ITSpec
      Привет всем. Это мой первый пост здесь  прошу отнестись снисходительно.
      Просматривал ролики на Ютуб и понравилась тема одного из блогеров: "Воруем у китайцев". Идея понравилась и полез на Алиэкспресс поискать какой нибудь конструктор чтобы сплагиатить.
      Выбор пал на этот.

      Схему даже с платы не пришлось перечерчивать она была на странице продавца.

      Основная часть этой схемы обычный мультивибратор, который "перемигивает" параллельно подключенные диоды. Вторая часть схемы служит для музыкального сопровождения и состоит из трех компонентов: музыкальной микросхемы, усилителя звука в виде транзистора и громкоговорителя в виде пьезового зумера.
      Такой микросхемы у меня конечно же небыло и я заменил ее на чип H-83a который не нуждался в усилителе.

      Сразу припаял на него SMD резистор и кнопку для переключения мелодий согласно схеме.

      В оригинальной схеме использовались двухцветные диоды, таких у меня тоже не было и я их заменил на обычные 3 мм двух цветов.
      Зуммер я тоже не нашел заменил динамиком от старой мобилы.

      Открыл EASYEDA и нарисовал схему.

      Потом спроектировал плату.

      После прибегнул к технологии ЛУТ.

      Припаял все элементы. Отсек для батарейки и чип посадил на термоклей.

      Вот фото окончательного устройства.

      Включается устройство от переключателя, а мелодии от кнопки на музыкальном чипе. Если кому-то хочется чтоб мелодия играла при включении вместо кнопки можно впаять перемычку.
      Ссылка на видео как собиралось:
       
    • Автор: Михаил Савин
      Добрый день. Подскажите есть устройство на плате для регулирования дроссельной заслонки от Калины. Довольно специфическое, индивидуальная разработка, аналогов не купить. Основывается на микроконтроллере ATXMEGA128A3U AU 1651. Возможно ли скопировать залитый в него код что бы изготовить данное устройство ? Или это невозможно в принципе ?