Перейти к содержанию

Вопросы от начинающих по МК


Рекомендуемые сообщения

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов
  • Создана
  • Последний ответ

Топ авторов темы

Это несложно посчитать исходя из ограничения тока на выходе в 40мА и емкости вывода. Но эта информация не имеет никакого смысла, ибо в реальной конструкции скорость фронтов будет зависеть от очень многого, в часности от монтажа и нагрузки на вывод. Я вот добился фронтов с подтяжкой в 200кОм и выводом переведённым в 3-е состояние порядка нескольких микросекунд. Но с нормальным выходом висящим в воздухе фронты порядка 10-20нс, и даже подключение щупа осциллографа их сильно увеличивает.

Но вероятней всего, вы имели в виду с КАКОЙ скоростью контроллер может дёргать выводами? Так она равна тактовой частоте делённой пополам - именно такое время проходит между двумя командами вывода в порт. Но если туда подключить сколь-нибудь существенную емкость то импульса можете просто не успеть увидеть.

Учение - изучение правил. Опыт - изучение исключений.

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

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

55 минут назад, ttt222 сказал:

с какой скоростью фронты

Нет такого понятия.

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

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

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Средняя температура по больнице тоже элементарно вычисляется :)

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

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

спасибо за ответы

еще вопрос у меня.

как поведет себя процессор авр если у меня во флеше  програмный код буд разорван, и между его частями останется непрошитое место. тоесть, выполняется код,  и вот уперся он в непрошитые ячейки, что будет происходить? поскачет по ним дальше или что? операция nop  вроде как 0000 по памяти, процессор непрошитые ячейки как операцию nop исполнит?

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

Здравствуйте. Хочу сделать анализатор спектра на Atmega32u4 (есть на руках сам МК + всё необходимое).

Вот ссылка на проект, который хочу взять за основу:

http://blog.vinu.co.in/2012/05/implementing-discrete-fourier-transform.html (Оригинал)

 http://www.rlocman.ru/shem/schematics.html?di=134055 (Русский перевод)

Но вместо отдельного дисплея хочется видеть результат Фурье преобразования на экране компьютера с ос Windows. 

Вопрос только один: реально ли это сделать без дорогостоящих дополнений к МК ? (Поверхностное гугление англоязычных форумов показало, что могут возникнуть проблемы при передаче данных с МК в операционку посредством USB)

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

Процессор в непрошитую зону не пойдет. А нафига ему это нужно?

2 минуты назад, WSK сказал:

...Хочу сделать...

...хочу взять за основу...

...хочется видеть... на экране компьютера с ос Windows. 

...реально ли это сделать без дорогостоящих дополнений к МК ?

Вам - не реально. Ищите другой, готовый проект.

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

8 минут назад, Геннадий сказал:

Вам - не реально. Ищите другой, готовый проект.

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

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

35 минут назад, WSK сказал:

есть ... всё необходимое

Если в списке "всего необходимого" присутствует знание языков программирования, то тогда мне непонятен Ваш вопрос о возможности обмена данными МК с ПК. Если же знаний ЯП нет, присоединяюсь к ответу @Геннадий .

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

58 минут назад, WSK сказал:

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

Никто Вас не троллит.

Что бы МК хоть что нибудь выводил в ПК требуется написать драйвер вывода в самом МК и программу отображения на ПК.

Вероятно, что речь идет о USB интерфейсе.Что потребует написания (или адаптации готового) стека USB device  на МК поверх имеющегося проекта. Причем чужого проекта. Задача совершенно нетривиальная. То есть человек, формулирующий вопрос как Вы, по определению этого сделать не сумеет.

Мало того, представленный в проекте МК вообще не переварит одновременно и ДПФ, и стек USB. Тем более, что аппаратного USB у него нет.

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

戦う前に相手のベルトの色に注目

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

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

Процессор в непрошитую зону не пойдет

почему не пойдет? аппаратно распознает что там непрошитая флеш? и как он далее себя поведет? что произойдет?

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

1 час назад, my504 сказал:

аппаратного USB у него нет

По моему, есть.

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

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

1 hour ago, ttt222 said:

почему не пойдет?

Если память допустим 8К, а программа занимает 1К, то 7К непрошитая память. Если ошибок в программе нет и компилятор не ошибается, то перехода в эту область не будет.

 

1 hour ago, ttt222 said:

аппаратно распознает что там непрошитая флеш?

Никакого аппаратного распознавания нет

 

1 hour ago, ttt222 said:

и как он далее себя поведет? что произойдет?

Если всетаки выскочит в непрошитую область, то будет выполнять команды FF пока не дойдет до конца памяти ( или бутлоадера). После переполнения счетчик команд обнуляется, а по 0-му адресу обычно прерывание по сбросу.

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

Помоему, байт-код 0xFFFF соответствует команде XOR какого-то регистра, вероятно 31-го. Ну, подумаешь индексный регистр Z пострадает...

Но правда, если программа сделана без переходов "вникуда" и без неявного перехода(через индексные регистры) то управление в непрошитую область не будет передано НИКОГДА.

5 часов назад, WSK сказал:

Но вместо отдельного дисплея хочется видеть результат Фурье преобразования на экране компьютера с ос Windows. 

Вопрос только один: реально ли это сделать без дорогостоящих дополнений к МК ?

Реально! Более чем. У вас там данных под передачу... всего 16 чисел малобитных... и кто сказал что контроллеру для этого нужен обязательно USB? UART... а на стороне компьютера - USB-UART конвертер, за 2$. Судя по статье, с той скоростью преобразования хватит наверно даже битовой скорости 9600бод... Можно не заморачиваясь передавать прямо 16 байт, или упаковать результаты(там всего 4 бита на полосу) и передать всего 8 байт на каждый результат преобразования. Хотя, лично я бы ещё добавил 2 байта для синхронизации и 3-й контрольную сумму, чтобы софт на ПК в случае одиночной потери или включения не с начала смог бы синхронизироваться заново, не анализируя временные интервалы между посылками(на виндовс с этим беда - нельзя гарантированно измерять время между событиями - ведь система между событиями может на неделю уйти в гибернацию, или более приоритетный процесс получит управление на пару часов).

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

Учение - изучение правил. Опыт - изучение исключений.

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

7 часов назад, ttt222 сказал:

почему не пойдет? аппаратно распознает что там непрошитая флеш? и как он далее себя поведет? что произойдет?

Вы предполагали дописать флеш?

С чего бы работающему коду исполнять участок, на который в нем нет перехода?

4 часа назад, Alexeyslav сказал:

 а на стороне компьютера - USB-UART конвертер, за 2$.

Не очень понятно что автор вопроса понимает под "не очень дорогостоящим".

Ну и конвертер тогда нужно ставить на стороне МК, а не компьютера. Иначе придется оформлять физический уровень УАРТА в кабель, что так же стоит некоторых денег.

戦う前に相手のベルトの色に注目

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

@my504 да, хотел поиграть с возможностями самопрограммирования AVR. просмотрел я все байт-коды, нет ни одной команды в которой одни 1, хотя бы один 0 да присутствует. видимо это специально сделано. возможно мк может "знать" когда он шагает по не прошитой флеш

 

24 минуты назад, my504 сказал:

С чего бы работающему коду исполнять участок, на который в нем нет перехода?

ну это я так, академический интерес)

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

1 минуту назад, ttt222 сказал:

@my504 да, хотел поиграть с возможностями самопрограммирования AVR. просмотрел я все байт-коды, нет ни одной команды в которой одни 1, хотя бы один 0 да присутствует. видимо это специально сделано. возможно мк может "знать" когда он шагает по не прошитой флеш

 

Какой то набор слов...

Вы пишите чушь. ЛЮБОЙ код интерпретируется дешифратором команд каким то образом. В том числе и код  OxFFFF. 

И что из этого следует? 

В любой программе для МК имеется так называемый "суперлуп". То есть зацикленный участок кода, в котором и происходит исполнение всего функционала устройства. Из этого цикла происходят вызовы функций и выходы в прерывания. Но всегда код возвращается в этот цикл.  Никто не допускает выход кода в участок непрошитой памяти программ. Потому что это равноценно сбросу контроллера

戦う前に相手のベルトの色に注目

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

2 минуты назад, my504 сказал:

В любой программе для МК имеется так называемый "суперлуп". То есть зацикленный участок кода, в котором и происходит исполнение всего функционала устройства. Из этого цикла происходят вызовы функций и выходы в прерывания. Но всегда код возвращается в этот цикл.  Никто не допускает выход кода в участок непрошитой памяти программ

все это мне известно, и про супер лупы, и прочее.

а интересовал меня этот вопрос потому что хотел писать во флеш страницами, и я подумал что возможно было бы удобнее дописывать и переписывать каждый раз с начала некой новой страницы, не обращая внимания насколько полностью заполнена предыдущая,  в которой может располагаться часть кода, без перехода на новую страницу

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

Писать код Вы можете с любой страницы, правда это нужно будет как то объяснить тому программатору, который Вы для этого будете использовать, сиречь написать свой участок кода не с начала флеша. Но Бог, с ним, с этим участком. Предположим Вы его записали. Дальше то что? С какого перепуга старый код попадет на этот участок? Ему до него нет никакого дела.

Можете сделать проще. 

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

戦う前に相手のベルトの色に注目

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

20 минут назад, my504 сказал:

правда это нужно будет как то объяснить тому программатору, который Вы для этого будете использовать, сиречь написать свой участок кода не с начала флеша

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

ну да ладно. сегодня попробую, что из этого выйдет

Изменено пользователем ttt222
Ссылка на комментарий
Поделиться на другие сайты

Не знаю как там в АВР, но в 16-разрядных ПИКах запись во флеш из кода (самопрограммирование) можно производить либо по одной строке (иногда по две - зависит от технологии), либо блоками. Но всегда меньше страницы стирания. Скорее всего в АВР точно так же.

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

戦う前に相手のベルトの色に注目

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

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

Но всегда код возвращается в этот цикл.  Никто не допускает выход кода в участок непрошитой памяти программ.

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

Учение - изучение правил. Опыт - изучение исключений.

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

3 часа назад, Alexeyslav сказал:

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

Тут не обсуждаются ошибки, особенно такого рода. Трудно пропустить сброс контроллера в проекте...

戦う前に相手のベルトの色に注目

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

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

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

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

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • Все предложенные к рассмотрению источники питания работают примерно по одному принципу: сетевое напряжение выпрямляется, фильтруется (получаем чуть больше 300 вольт постоянного), затем преобразуется снова в переменное, но уже на частотах в несколько десятков килогерц, понижается на трансформаторе и снова выпрямляется. За счёт высокой частоты преобразования используется трансформатор на ферритовом, а не на стальном, сердечнике, гораздо меньших габаритов и стоимости. Минусы: значительное усложнение схемы блока и вероятность возникновения различных помех от него. Модули управления (кроме первого) также являются импульными преобразователями, с теми же достоинствами и недостатками. Если нужно по быстрому собрать некое подобие ЛБП, то уж лучше брать модуль вроде этого. Ну и блок питания к нему соответствующий. Но не очень понятно, какой практический опыт можно получить от соединения готовых модулей парой проводов.  
    • У меня больше всего вопросов вызвала необычная схема обеспечения отрицательного питания. Автор этой обстоятельной заметки пишет: For this supply to work correctly, the transformer must have a secondary voltage of at least 18V RMS.  Почему? Что будет не так с отрицательным питанием, если напряжение на трансформаторе будет меньше 18В?   https://tinyurl.com/23mlwxtt - я в простейшей эмуляции ставлю 12В пикового напряжения для трансформатора и на стабилитроне все как положено: -5.6В.
    • Согласен, очень криво объяснил. Это работа трёх вольтовой линии, просто на диод шотки сдвоенный, на один анод приходит сигнал напрямую с трансформатора, а на второй через дроссель. Вольт/деление 5 вольт в клетке, тайминг по моему 10 МС. Третья фотография это сигнал на катодах уровень земли ровно по центру экрана. Но все линии по итогу в порядке 3.3 в, 5, в, 12 в и -12 в. Нагрузить все линии не могу сразу ,так как тут же выгорают транзисторы (имеется нагрузка 250 ватт по 10 ампер на каждую линию за исключением-12в), поэтому нагружаю 3.3 вольтовую линию на 10 ампер,  подключаю переменный резистор 50 ватт на 15 ом на 5 вольтовую линию и постепенно довожу до той той картины с перекосом (это гдето  50 ватт общее). По поводу микросхемы, вверху имеется скрин где между импульсами проскакивает мини импульс, если так можно сказать, он проскакивает и на одной  и на второй ноге (7,8). Микросхема не tl 494, а lw4933/abx942.1/c9421646. Далее они приходят на базы транзисторов 945g  коллекторы этих транзисторов соединены с  выводами трансформатора. Просто схема типовая, легче мне кажется просто привести фото самого блока, для тех кто разбирается будет гораздо информативне.  Диод шотки по 12 вольтовой линии был подгоревший, заменил на донора. Приводить скрины не буду что бы не захламлять тему. В итоге, пока все так же, при достижении определенной нагрузки суммарно где-то 50 ватт, появляется этот "выброс и перекос". По этому имеются мысли на два варианта, это микросхема , этот мини импульс между периодами, на низкой нагрузке особо не влияет, но при достижении определенной приводит с самовозбуждению входной цепи и непроизвольному открытию транзистора нижнего плеча. Либо дело в "горячей части", плавающий дефект в обвязке силовых ключей.  Спасибо за ответ.
    • @Gomerchik а вы контролировали как меняется уровень сигнала на А1 ардуины?
    • Спасибо за совет. Автором данного проекта я не являюсь, мне нужно было воссоздать уличный датчик для метеостанции взамен пропавшего(( Из разного найденного в интернете этот проект работает с моей станцией Орегон (спасибо автору). В понедельник попробую последовать Вашему совету. Но все равно куча непоняток  как блин это работает)) Если дело в неправильной отправки команды, то как на это влияет подключение датчика температуры? Если совсем не подключать таймер, то передача идет один раз (как и прописано в программе), станция принимает и отображает, но минут через сколько-то естественно станция уже ни чего не показывает, но с таймером питание полностью не пропадает с ардуинки, но передача сигнала каким-то образом работает по таймеру.  В моем понимании данная команда подается один раз потому, что таймер должен отключать питание МК после передачи сигнала и каждые 43 сек снова подавать питание (так того требует станция).  Ардуино передает показания температуры отключается полностью и 43 секунды мк не работает.  Сейчас у меня питание пока сделано на подпитке от солнечной батареи, но пару пасмурных дней и аккумулятор съедается до отключения(
    • thickman Так и сделаю. Вытащу из бу БП.  Буду знать, как отличить. Благодарю. Заменил транзисторы на IRFB20N50K. Картина стала, совсем другой.  Похоже трудность не в драйвере, на момент подвозбуда, переходные процессы, в нем, завершены. Увеличил затворные резисторы до 50ом, стало немного лучше.  Не понятно, почему верхний ключ греется несколько сильнее. Возможно, стоит посмотреть ток в коллекторе.  Снабберные емкости временно удалил, изменений не произошло.  Замена ТГР на другой, на кольце MSTN-16A-TH, так же, результата не принесла.   irfb20n50k.pdf
  • Похожий контент

×
×
  • Создать...