Перейти к содержанию
  • записи
    53
  • комментариев
    1 217
  • просмотр
    81 331

Микроскоп в роли молотка?


Falconist

31 597 просмотров

На форуме как-то исподволь сложилось мнение, что я являюсь каким-то "микроконтроллероненавистником"... Отнюдь нет! МК - великолепный инструмент для решения множества достаточно сложных задач, которые с применением рассыпной логики решались с огромным геморроем. Ключевые слова здесь: "достаточно сложных"! Но когда МК пихают во все дырки куда ни попадя (типа помигать светодиодами) - поневоле приходят на ум слова "забивать гвозди микроскопом". Причем, апологеты массового применения МК заливаются соловьями (сиречь нагло врут), утверждая, что при изменении алгоритма работы "в железе ничего менять не надо - только в прошивке".

Ситуация вчерашнего и сегодняшнего дней, категорически противоречащая этому утверждению: взял субподряд на изготовлении узла управления специфической мигалки для авто. Алгоритм такой: при подаче напряжения питания должно последовать 4 вспышки, после чего светодиод светится постоянно, пока не снято напряжения питания. Если снова подать питание - цикл повторяется. Если снять питание, пока идут вспышки, то при его новой подаче цикл начинается сначала. Причем, первый импульс должен начинаться в момент подачи питания.

Собственно, схема была уже изготовлена "умельцем", выполнена на микроконтроллере. Показана в работе клиенту. Тому не понравилась частота вспышек (слишком частые), потребовал ее уменьшить. А "умелец" куда-то сдрыстнул и сейчас находится за пределами реального доступа. ВСЁ! Прошивка неизвестна. Программатора нет. Средств изменения констант на плате нет.

Даже если бы всё (за исключением последнего пункта) и было - попробую ситуацию немного усугубить. Изменили константу, отвечающую за частоту. Прошили МК заново. Показали клиенту. Ему не понравилось количество вспышек. Потребовал увеличить с 4 до 8  Изменили константу, отвечающую за к-во вспышек. Прошили МК заново. Показали клиенту. Теперь ему снова не понравилась частота вспышек - слишком мала. Изменили константу, отвечающую за частоту. Прошили МК заново. Показали клиенту... И т.д. и т.п. Причем, клиент ничего не может поменять сам - только ехать на сервис, чтобы перепрошивали МК.

Причем, утрировал ситуацию я не сильно. Буквально вчера речь шла о 4-х вспышках. А сегодня генподрядчик возжелал, чтобы их было 8!

Покрутил я Т.З. и так и эдак... И уже ночью сообразил, что вся "хотелка" может быть реализована с помощью одной-единственной КМОП микросхемы CD4060:

Мигалка - логика.GIF

Собственно, схема известна, применяется в реле времени/таймерах, я только использовал младшие разряды счетчика для формирования начальных вспышек.

При подаче напряжения питания счетчик обнуляется через конденсатор С1 и запускается тактовая генерация. С выходов Q9 или Q10 (выбираемых перемычкой Х2) единичные импульсы поступают на силовой блок, запрещая его работу (т.е., формируя паузы между импульсами). Через 4-8-16 таких импульсов (опять же их количество выбирается перемычкой Х3), единица через диод VD1 "затыкает" генератор тактовых импульсов и счетчик остается в этом состоянии до снятия напряжения питания. На исполнительный узел поступает логический ноль, разрешая его работу. Частота генерации регулируется подстроечным резистором R1. ВСЁ! Алгоритм соблюден. Меняться в определенных пределах может клиентом, совершенно незнакомым с МК самостоятельно. Размеры платы практически такие же, как и с МК. Не требует программатора и умения программирования.

Засим еще раз повторюсь: я целиком и полностью "ЗА" широкое применение микроконтроллеров при условии, что для данной задачи их применение обосновано!!!


 

462 Комментария


Рекомендуемые комментарии



8 часов назад, Hambaker сказал:

А на вопросы вида  " вы чё тут собралися меня учить яспросил почему сгарел светадиот от кроны" Вы сами готовы ответиь?

Я такие вопросы игнорирую, и вам могу посоветовать то же самое делать. Смотрите, сплошные плюсы от такого игнорирования:

1. "Недостойный" не получает ответа и в тоске и печали покидает форум в поисках лучшей жизни

2. Вы не тратите нервы и силы на бесполезные объяснения и нравоучения

3. Я не переживаю за имидж российских форумов :)

4. Сам форум освобождается от совершенно лишних текстов, не несущих ничего, кроме негатива

 

Ссылка на комментарий
1 минуту назад, Falconist сказал:

Точно, одессит...
 

Вообще-то нет, но вот что интересно - Вы считаете, что я не могу отвечать вопросом на вопрос, но в тоже время сами на мой вопрос задаёте свой вопрос :) Бревно в глазу и т.п.

Ссылка на комментарий

Ню-ню...

49 минут назад, СергейХолопов сказал:

КАк с помощью схемы на ОУ прямоугольные колебания преобразовать  в треугольные? помогите со схемой и обьясните программисту)))

Ссылка на комментарий
1 час назад, demiurg1978 сказал:

Взяли моду на форумах азы электроники изучать

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

Меня гораздо больше печалит то, что когда я сам попадаю в ситуацию, когда мне нужна конкретная помощь (к сожалению, именно в том самом ключе - "всё готовенькое"), я получаю ровно тот самый ответ, который тут многие и "рекомендуют". То есть в лучшем случае "спасение утопающих - дуло рук самих утопающих", а в худшем - сами знаете...

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

К чему это я? Да добрее надо быть к людям. Во всяком случае, я бы этого хотел...

Ссылка на комментарий

Форум - не учебное заведение. Форум - это "консультативный центр". Если собственных знаний - ноль, то любое число (совет), умноженное на этот ноль, даст в итоге ноль.

Именно об этом и идет речь во всей этой записи.

Ссылка на комментарий

А если своих знаний воз и маленькая тележка, но все они не в той области, с которой проблема? А проблема в той области, которая вроде как вызывает ощущение, что почти по силам, но силы как раз и переоценил?

Простой пример: я больше 20 лет программирую. А вот с линухом, не смотря на всю его "доступность", справиться не могу - не то, что программировать, даже эксплуатировать не могу. И выходит, что со своими проблемами я останусь наедине, т.к. советы "читай маны" мне не нужны, а других не дождешься. Это ведь не правильно.

Ссылка на комментарий

Есть у меня знакомый системный администратор. Винду и линух знает очень хорошо, на мои вопросы всегда отвечал охотно. Если чего-то не знал или проще было так сделать, посылал гуглить. По линуху на многие вопросы можно найти ответы просто в поисковике. Но нужно четко формулировать запрос.

Ссылка на комментарий
10 минут назад, demiurg1978 сказал:

Если чего-то не знал или проще было так сделать, посылал гуглить. По линуху на многие вопросы можно найти ответы просто в поисковике. Но нужно четко формулировать запрос.

Неужели вы не осознаете тот факт, что человек, овладевший предметной областью до уровня осмысленного формулирования четких и конкретных вопросов, не нуждается в ответах на них? А вопросы, на которые он не знает ответа, он и сформулировать не может! И становиться специалистом во всех областях естествознания (а по нашей жизни, так во многих других) просто не хватит ни сил, ни времени ни у кого. И поэтому число ламерских вопросов не уменьшится, и количество ламеров не уменьшится. Возможно, вы гуру в микролектронике, но явно в медицине у вас провалы, а не в медицине, так еще в сотне областей жизни вы нифига не петрите. А проблемы-то вас подстерегают везде и всюду. И если, например, я вам не помогу, отправив в гугл, возможно, вы так и не решите свою проблему. А если вы не поможете мне, какую глупость я бы у вас не спросил - я, может быть, так и помру в незнании... И не потому всё это будет, что вы или я ленивый тупарь, а потому, что каждый из нас - эгоист больше, чем того надо для выживания.

Только и всего.

Изменено пользователем ARV
Ссылка на комментарий

Милые люди. Ну, подскажите мне, какой  программатор лучше  всего - быстрее, надежнее, без багов в ПО. Какое ПО к нему лучше  подходит? В общем, с чего начать, чтобы не разочароваться?

Ссылка на комментарий
20 минут назад, mvkarp сказал:

Милые люди. Ну, подскажите мне, какой  программатор лучше  всего - быстрее, надежнее, без багов в ПО. Какое ПО к нему лучше  подходит? В общем, с чего начать, чтобы не разочароваться?

Какой МК будет программировать?

22 минуты назад, demiurg1978 сказал:

Мой опыт: STK-500, потом AVRISP MKII.

Денег они стоят ненормальных, на мой взгляд. Отладка в Atmel Studio 7 на них работает?

Ссылка на комментарий

Лично я зарабатываю на AVR. Поэтому и спокойно трачу деньги на эти программаторы. Деньги я отбил уже давно. Зато никакого геморроя. Работаю только со студией 4.19. Отладки у этих программаторов нет. Никогда не пользовался отладкой. Программы отлаживаю в симуляторе студии, потом на железе.

Ссылка на комментарий
9 минут назад, demiurg1978 сказал:

Отладки у этих программаторов нет.

Без отладки - USBasp. Не вижу смысла переплачивать.

Всё-таки, AS 7 по сравнению удобства интерфейса огромный шаг вперёд по сравнению с 4.19.

Самое хорошая ситуация с программаторами у STM32 - ST-Link v.2 поддерживает отладку и программирование. И 32-бита всё-таки.

Изменено пользователем Darth_Vader
Ссылка на комментарий

STK-500 отладочная плата и программатор AVR. Поддерживает как параллельное, высоковольтное программирование так и ISP (внутриплатное программирование). Удобна набором панелек для AVR в DIP-корпусах. Наличием 8 кнопок и 8 светодиодов. Минус - работает от COM порта.

AVR-Studio 4.19.

Ссылка на комментарий
7 минут назад, demiurg1978 сказал:

работает от COM порта

Это плохо. 

А скорости прошивки от чего зависят? 
Высоковольтное программирование - для чего? Вроде перемычки пережигать не нужно.

Отладка - это как? Какой-то симулятор работает с платой отладчика или на живой плате программа крутится? И что видно в отладчике?

Ссылка на комментарий
2 минуты назад, mvkarp сказал:

Высоковольтное программирование - для чего? Вроде перемычки пережигать не нужно.

Отладка - это как? Какой-то симулятор работает с платой отладчика или на живой плате программа крутится? И что видно в отладчике?

Высоковольтное программирование нужно когда намудрил с настройками фьзов и МК перестал программатором видеться.

В отладчике видно как выполняется программа - место выполнения, значение периферии, переменных и т.п. Очень удобно.

Ссылка на комментарий

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Добавить комментарий...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

Загрузка...
×
×
  • Создать...