Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Мурик, производительность, на самом деле, больше важна маркетологам, чем потребителю. Куда интересней, с моей точки зрения, решение одной и той же задачи с минимальным потреблением. Например, радио датчик температуры с LCD дисплеем. У меня такой конкурс выиграл STM8L152C6T6. Но не возьмусь утверждать, что оценил все альтернативы корректно
Реклама
Chettuser

Сообщение Chettuser »

Ткните носом как в Atollic TrueStudio использовать встроенный Terminal (плата Discovery)? Не нашёл ничего на форумах. :(
Реклама
Mem
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1915
Зарегистрирован: Вт апр 17, 2012 14:20:59
Откуда: Новокузнецк

Сообщение Mem »

Каким образом на PIC можно записать текст для вывода на экран?

Программу пишу на си в mikroC for PIC, вывожу текст на дисплей простой командой, например Lcd_Out (1,1,"Temperature"). Но текста много, да еще куча всяких переменных используется. Всё это неплохо грузит оперативку.

И вот ищу способ оптимизировать всё это дело, но только как? Забивать все тексты в char и выводить их? Или еще лучше определить их как const char? Тогда они будут сохраняться в оперативке или памяти программ?
Главный инженер проекта - человек, который как никто другой знает, что приближаться к спроектированной им хрени близко не стоит.
Грызет канифоль
Сообщения: 274
Зарегистрирован: Чт апр 16, 2009 14:23:59

Сообщение NebelWefer »

Товарищи подскажите:
мк тинька запитан от акб 2.7-4.2В, а программатор усб. Получается логические уровни 5В выше, чем питание,так ? Как к этому отнесется мк? Получится ли безопасно прошить?
Реклама
Эиком - электронные компоненты и радиодетали
Самсусамыч

Сообщение Самсусамыч »

Для МК побарабану... а вот программатору при питании МК около 3_х вольт может не понравится… может отказаться его шить… лучше сделать так… отсоедини аккум при прошивке и питай МК от программатора и проблем не будет.
Реклама
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

Здравствуйте! Ребят подскажите микросхему или тригер. Вообщем суть такая есть бистабильное реле(реле с магнитом постоянным) на нем две катушки. подаешь кратковременное питание на одну обмотку реле перещелкивается и фиксируется магнитом. напряжение можно больше не подовать. Есть мега 2560. Хотелосбы задействовать один выход с нее для переключения реле. что то типа CD4017(счетчик импульсов) только чтоб при подачи сигнала на упровляющий вход подавалось кратковременное напряжение то на одну обмотку то на другую реле. таких реле будет штук 10 + разные датчики. Пока остановился на сдвиговый регистр 74HC595. Но код не удобный получается постоянно нужно запоминать в каком положении реле чтоб подать сигнал на другую обмотку еслиб это запоминал какой нибудь тригер былоб проже. и при подачи на него сигнал просто переключал питание на другую обмотку. Блин наверно не понятно написал простите)
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18788
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

впервые встречаю ситуацию, когда сгородить 5 внешних триггеров проще, чем задействовать напрямую 10 пинов МК и запоминать все программно...

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

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

Мой уютный бложик... заходите!
Контактная информация:
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

Как правило будет работать постоянно и при сбросе питания или перегрузки меги все будет сбрасыватся в зарание установленные положения. задействовать нужно будет не 10 а 20 пинов. потому что для переключения этого реле нужно два управляющего пина. две катушки. этот вопрос частично решу сдвиговый регистр 74HC595. а вот про память не уверен. на ней будет веб сервер. + куча датчиков как минумум тоже 10 температуры и движения. и она будет очень загружена. огороды городить тоже не хочу поэтому спросил может есть какая нибудь микросхема или тригер. типа на фонариках переключения режимов. типа cx2812. только мне не нужно посттоянно чтоб она выдовала напряжения. мне нужно чтото что будет при подачи логической единицы напровлять эту логическую единичу чеклически по очереди то к одному пину то к другому.
Самсусамыч

Сообщение Самсусамыч »

[uquote="evgen625",url="/forum/viewtopic.php?p=3682364#p3682364"]Пока остановился на сдвиговый регистр 74HC595. Но код не удобный получается постоянно нужно запоминать в каком положении реле чтоб подать сигнал на другую обмотку еслиб это запоминал какой нибудь тригер былоб проже.[/uquote]
ИМХО. Лучший вариант это управление конечно же регистром сдвига (…595)… что касается что-то запоминать: зачем что-то запоминать, когда и так будет понятно что необходимо делать… для этого необходимо выбрать самый простой подход для реализации управления такими реле… так как реле имеет две обмотки, то соответственно два выхода у 595 будут задействованы для управления одного реле. Младший бит будет включать реле, а старший бит будет отключать реле. Таким образом младший бит будет устанавливаться в зависимости от необходимости вкл/выкл. а старший бит будет выставляться всегда инверсно младшего бита. Таким действием получается, что 0b01 – вкл. 0b10 – выкл. И ничего не надо запоминать. Необходимо лишь знать что нужно сделать с реле – включить или выключить.
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

[uquote="Самсусамыч",url="/forum/viewtopic.php?p=3682545#p3682545"][uquote="evgen625",url="/forum/viewtopic.php?p=3682364#p3682364"]Пока остановился на сдвиговый регистр 74HC595. Но код не удобный получается постоянно нужно запоминать в каком положении реле чтоб подать сигнал на другую обмотку еслиб это запоминал какой нибудь тригер былоб проже.[/uquote]
ИМХО. Лучший вариант это управление конечно же регистром сдвига (…595)… что касается что-то запоминать: зачем что-то запоминать, когда и так будет понятно что необходимо делать… для этого необходимо выбрать самый простой подход для реализации управления такими реле… так как реле имеет две обмотки, то соответственно два выхода у 595 будут задействованы для управления одного реле. Младший бит будет включать реле, а старший бит будет отключать реле. Таким образом младший бит будет устанавливаться в зависимости от необходимости вкл/выкл. а старший бит будет выставляться всегда инверсно младшего бита. Таким действием получается, что 0b01 – вкл. 0b10 – выкл. И ничего не надо запоминать. Необходимо лишь знать что нужно сделать с реле – включить или выключить.[/uquote]

Да только если это не проходное реле.))) Тоесть по мимо реле будет еще и механический выключатель. и включение выключение нагрузки будет постоянно менять свое положение и мне нужно чтоб сигнал пощел на другую катушку.
Пока я остановился на том варианте что предложили вы (регистром сдвига (…595) два выхода на управление одного реле 4 реле получилось + запоминать в каком положении щас реле чтоб после подачи команды на переключение подать сигнал на нужную обмотку. хотел использовать регистром сдвига (…595) +CD4017 (Счетчик импульсов) но он слишком громоздкий получается и я так и не разобрался при пропадании логической единицы на входе на выходе 1 сохроняется или становится в 0. попробую схему нарисовать что хочу.
Самсусамыч

Сообщение Самсусамыч »

[uquote="evgen625",url="/forum/viewtopic.php?p=3682562#p3682562"]Да только если это не проходное реле.))) Тоесть по мимо реле будет еще и механический выключатель. и включение выключение нагрузки будет постоянно менять свое положение и мне нужно чтоб сигнал пощел на другую катушку.[/uquote]
Ваша концепция изначально неправильная… все манипуляции с переключениями должны доходить информативно до МК. Тогда он будет в реальном времени «знать» состояние того или иного исполнительного механизма. А в Вашем варианте (как я понял) некоторые переключатели «живут» своей жизнью, а Вы ломаете голову как всё это совместить в одно целое… такой путь не приведёт к полной согласованной работе системы в целом. Ищите иной путь…
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

[uquote="Самсусамыч",url="/forum/viewtopic.php?p=3682609#p3682609"][uquote="evgen625",url="/forum/viewtopic.php?p=3682562#p3682562"]Да только если это не проходное реле.))) Тоесть по мимо реле будет еще и механический выключатель. и включение выключение нагрузки будет постоянно менять свое положение и мне нужно чтоб сигнал пощел на другую катушку.[/uquote]
Ваша концепция изначально неправильная… все манипуляции с переключениями должны доходить информативно до МК. Тогда он будет в реальном времени «знать» состояние того или иного исполнительного механизма. А в Вашем варианте (как я понял) некоторые переключатели «живут» своей жизнью, а Вы ломаете голову как всё это совместить в одно целое… такой путь не приведёт к полной согласованной работе системы в целом. Ищите иной путь…[/uquote]



Не буду спорить. моя концепция 100% рабочая и механика дает 100% уверенности в работоспособности схемы при всяких нештатках. Ардруина нужна как вспомогательный элемент удаленное упровление +отслеживание. МК в реальном времени всегда знает что происходит с нагрузкой (включена она или выключенна. мне не нужно знать в каком положенни переключатель) Схема работала некоторое время на 3 реле вот решил улучшить и добавить реле, всякие плюшки + возможно сократить код и более его структурировать. Задача некая микросзема или устройсво не громозкое которое будет цеклически переправлять логическую единицу по очереди то к одному выходу то к другому
Вложения
345645645654645645.jpg
(15.23 КБ) 369 скачиваний
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

evgen625, Что-то я Вас не пойму. У Вас есть обратная связь между реле и МК или нет? МК знает в каком положении каждое реле или нет?
Если не знает, то надежность схемы низкая. Так как подача напряжения на обмотку реле еще не обозначает, что реле сработало. Особенно в Вашей ситуации, когда напряжение нужно подавать импульсом длительностью +-лапоть. И точно момент переключения реле можно определить только через ОС. Подавать же напряжение на уже переключившееся реле не только бессмысленно, но еще и вредно.
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3682852#p3682852"]evgen625, Что-то я Вас не пойму. У Вас есть обратная связь между реле и МК или нет? МК знает в каком положении каждое реле или нет?
Если не знает, то надежность схемы низкая. Так как подача напряжения на обмотку реле еще не обозначает, что реле сработало. Особенно в Вашей ситуации, когда напряжение нужно подавать импульсом длительностью +-лапоть. И точно момент переключения реле можно определить только через ОС. Подавать же напряжение на уже переключившееся реле не только бессмысленно, но еще и вредно.[/uquote]

Обратная связь есть.+ под каждую реле выделена переменная котороя запоминает на какую обмотку подовали напряжение чтоб в следующий раз подать на другую. ПОЭТОМУ ХОЧУ ОБЛЕГЧИТЬ МК и нучно чтото типа cd4017 только на два выхода. В логике не силен. но помоему чтото такое было толи тригеры толи чтото еще. хотябы как такие называются. или ветку в которой это обсуждают. А то мне кажется я не туду написал.
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

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

P.S. Для управления 5 реле достататочно одной 74LS145 и четырех пинов МК. Если, конечно нет насущной необходимости переключать больше одного реле одновременно.
P.P.S. А 8 реле можно управлять пятью пинами МК и одной 74HC4067 (готовая платка с ней на Ali стоит полдоллара).
Родился
Сообщения: 6
Зарегистрирован: Ср авг 14, 2019 07:56:34

Сообщение evgen625 »

[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3683014#p3683014"]evgen625, а какой смысл запоминать "на какую обмотку подовали напряжение" если есть обратная связь. Обратная связь достоверно информирует о том, в каком положении реле, а "на какую обмотку подовали напряжение" информирмирует только о том, в какое положение реле пытались переключить, но ничего не говорит о том, переключилось ли оно в итоге.

P.S. Для управления 5 реле достататочно одной 74LS145 и четырех пинов МК. Если, конечно нет насущной необходимости переключать больше одного реле одновременно.
P.P.S. А 8 реле можно управлять пятью пинами МК и одной 74HC4067 (готовая платка с ней на Ali стоит полдоллара).[/uquote]


Я вроде с начало написал что по мимо реле у меня механический переключатель(по принцепу проходных выключателей (наберите в поиске проходные выключатели)) Реле стоит последовательно выключателю. "какой смысл запоминать "на какую обмотку подовали напряжение"" Потому что нагрузка может включится как с реле подаем на первую обмотку реле. А выключится с механического выключателя. а потом опять включится с реле по даем на втрорую обмотку.. или наоборот. и как вы решите эту задачу без запоминания. а обратная связь показывает только включена нагрузка или выключенна. а как она включенна нет. само собой проверка включения с реле есть. если была выключена нагрузка подаем сигнал на реле нагрузка включилась реле сработало. нагрузка не включилось нагруска не сработала реле не включилось нужно оповестить об ошибки. ПОЭТОМУ на каждое реле есть переменная которая запоминает положения на какую обмотку подать потому что сейчас эта обмотка включает нагрузку а через время эта обмотка будет выключать нагрузку. я понимаю что это не по стандартам и все через жопу. А вспомнил моя концепция не правильна..... только кто определил правильность и не правильность концепции не понятно.... потому что вы все так привыкли делать.... но мне надо чтоб 100% схема работала. даже если мега будет гореть синим пламенем засчет механики остальная схема будет работать. мега вспомогательная часть а не остновная. не работает ну и хер с ней. вообщем я понял именно по МОЕЙ проблеме мне тут не мопогут.

P.S За 74HC4067. Спасибо будет удобней чем две 595.
Вложения
345645645654645645.jpg
ВОТ ЧТО МНЕ НУЖНО.
(15.23 КБ) 329 скачиваний
Самсусамыч

Сообщение Самсусамыч »

[uquote="evgen625",url="/forum/viewtopic.php?p=3682832#p3682832"]Не буду спорить. моя концепция 100% рабочая и механика дает 100% уверенности в работоспособности схемы при всяких нештатках.[/uquote]
Похоже Вы меня не верно поняли… хорошо ещё раз… если хотите чтобы МК «всё знал» необходимо ему об этом сообщать… иначе система не работоспособна… хотя может у Вас свои критерии работы системы автоматики – кто знает. :dont_know: Но опять же, если задаёте вопрос, то значит есть непонимание данных процессов… :roll: хорошо делайте как считаете нужным… хозяин барин. :beer:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

evgen625, обратная связь должна идти не только от нагрузки, но и от реле. Мало того, что при перезагрузке МК он без понятия, в каком положении находится какое переключающее реле. Так еще и реле может не успеть переключиться по тем или иным причинам. Опрос и состояние реле и состояния нагрузки можно осуществлять тем же 74HC4067. Скорее всего - через оптопару. Например, PC817, но учитывая, что обратное напряжение на ее светодиоде не должно превышать 6 вольт.

То, что на рисунке, Вам не нужно. Нужен дешифратор. Возможно, в сочетании со сдвиговым регистром, если уж совсем мало свободных пинов у МК. Но я бы, скорее на PCF8574 (5 шт. за доллар) тогда смотрел. Каскадировать проще.
74LS145 способен обеспечить 10 выходов на 10 обмоток. По два на каждое переключающее реле. Соответственно, 74HC4067 - 16 выходов на 16 обмоток. Выводом 4 бит в любой из них выбираете обмотку и реле, которую надо активировать. После переключения реле, напряжение с обмотки можно снимать и переключать следующее реле, если требуется.
Самсусамыч

Сообщение Самсусамыч »

[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3683157#p3683157"]evgen625, обратная связь должна идти не только от нагрузки, но и от реле.[/uquote]
Извините, но в системах автоматики... как раз обратная связь идёт от регулируемого параметра, а не от исполнительного механизма. Допустим Вы «рулите» соленоидом подачи жидкости… так вот обратная связь будет реализована в появлении давления после соленоида, а не замкнуто или разомкнуто реле подающее напряжение на соленоид.
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Самсусамыч писал(а):[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3683157#p3683157"]evgen625, обратная связь должна идти не только от нагрузки, но и от реле.[/uquote]
Извините, но в системах автоматики... как раз обратная связь идёт от регулируемого параметра, а не от исполнительного механизма.
Извините, но в АСУ, проектированием которых я занимаюсь, обратная связь идет не только от регулируемого параметра, но и от исполнительных механизмов. И это требование прописывается в техпроектах почти всегда. Исключений я даже припомнить не могу.
Ответить

Вернуться в «Разные вопросы по МК»