Мелкие вопросы по МК и ПЛИС.
Re: Мелкие вопросы по МК и ПЛИС.
а какие кварцы посоветуете заказать скажем так самые лучшие
есть дип в металическом корпусе в виде столбика или лодочки большие такие 2 пин
а есть смд керамические 3 пин и 4 пин
есть дип в металическом корпусе в виде столбика или лодочки большие такие 2 пин
а есть смд керамические 3 пин и 4 пин
- Реклама
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1907
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Объясните, что для вас: "самые лучшие"
SMD TSX-3225, +/- 10 ppm.
SMD TSX-3225, +/- 10 ppm.
Re: Мелкие вопросы по МК и ПЛИС.
Всем мяу!
Столкнулся я с обновлением прошивки через загрузчик, вопрос такой: допустим обновление не прошло до конца(допустим RS485), часть памяти успели записать а дальше допустим питание вырубили, а потом после подачи питания как понять сколько успели записать и верно ли всё записалось. Сейчас сделан самый примитивный вариант, тупо начинаем всё с начала, но как бы RS485 не самый быстрый интерфейс чтобы при любом чихе начинать всё с самого начала, пришла идея запроса "контрольной суммы" страницы, но опять же какова вероятность что запишется половина(или с ошибками) и каким то образом контрольная сумма совпадёт
гипотетически.
CRC использую - CRC-16 CCITT для каждой страницы в 512 байт.
К чему такие заморочки: устройство будет находиться довольно далеко, чтобы просто прийти с программатором, а если окирпичится то по шапке напинают не только мне
Столкнулся я с обновлением прошивки через загрузчик, вопрос такой: допустим обновление не прошло до конца(допустим RS485), часть памяти успели записать а дальше допустим питание вырубили, а потом после подачи питания как понять сколько успели записать и верно ли всё записалось. Сейчас сделан самый примитивный вариант, тупо начинаем всё с начала, но как бы RS485 не самый быстрый интерфейс чтобы при любом чихе начинать всё с самого начала, пришла идея запроса "контрольной суммы" страницы, но опять же какова вероятность что запишется половина(или с ошибками) и каким то образом контрольная сумма совпадёт
CRC использую - CRC-16 CCITT для каждой страницы в 512 байт.
К чему такие заморочки: устройство будет находиться довольно далеко, чтобы просто прийти с программатором, а если окирпичится то по шапке напинают не только мне
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="alex_",url="/forum/viewtopic.php?p=4416061#p4416061"]...допустим обновление не прошло до конца(допустим RS485), часть памяти успели записать а дальше допустим питание вырубили...[/uquote]
При удалённом обновлении, лучше всего грузить в отдельную область.
После загрузки всего обновления, проверки целостности можно уже и обновить.
При этом можно проверить наличие резервного питания и прочих условий позволяющих
не "окирпичиться" устройству.
Конечно же для этого микроконтроллер должен иметь достаточный запас по объёму флешь памяти,
но оно того стоит.
При удалённом обновлении, лучше всего грузить в отдельную область.
После загрузки всего обновления, проверки целостности можно уже и обновить.
При этом можно проверить наличие резервного питания и прочих условий позволяющих
не "окирпичиться" устройству.
Конечно же для этого микроконтроллер должен иметь достаточный запас по объёму флешь памяти,
но оно того стоит.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="alex_",url="/forum/viewtopic.php?p=4416061#p4416061"]какова вероятность что запишется половина(или с ошибками) и каким то образом контрольная сумма совпадёт
гипотетически. CRC использую - CRC-16[/uquote]
2^(-16)
2^(-16)
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Реклама
Re: Мелкие вопросы по МК и ПЛИС.
Dismas, резервного питания не предусмотрено, пишется именно так, в отдельную область, и только после заливки всей прошивки запускается процесс обновления, при этом полностью переписываться как бут область так и основная прошивка, если же по какой то причине будет записан не тот байт то однозначно получаем кирпич который не будет выходить из рестарта
Gudd-Head, согласен, логично, как только это соотнести к размеру массива, например 512 байт, тупо умножить?
Gudd-Head, согласен, логично, как только это соотнести к размеру массива, например 512 байт, тупо умножить?
Re: Мелкие вопросы по МК и ПЛИС.
Всё давно придумано до нас.alex_ писал(а):часть памяти успели записать а дальше допустим питание вырубили, а потом после подачи питания как понять сколько успели записать и верно ли всё записалось
Записываемая инфа разбивается на блоки. Для каждого блока указывается его длина и проверочная сумма. Из этого формируется управляющий блок. Этот управляющий блок передаётся и записывается первым. Дальше всё просто. Перед стартом загрузчик вычисляет проверочные суммы каждого блока и сравнивает со значением из управляющего блока. Те блоки, у которого суммы не совпали, битые и их надо загрузить и прошить.
Кроме того, имея управляющий блок данных, можно в процессе работы непрерывно проверять целостность данных в записанной памяти.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="alex_",url="/forum/viewtopic.php?p=4416382#p4416382"]как только это соотнести к размеру массива, например 512 байт[/uquote]
Никак. Поскольку у вас CRC не зависит от длины массива, ложноположительная вероятность при наличии ошибки всегда будет зависеть только от длины CRC = 1/65536 при длине 16 бит.
Никак. Поскольку у вас CRC не зависит от длины массива, ложноположительная вероятность при наличии ошибки всегда будет зависеть только от длины CRC = 1/65536 при длине 16 бит.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
R4, R5, R6 ставить ближе к приёмнику сигнала.
R5 подтянуть туда, где чаще чаще будет находиться трансивер (в каком состоянии).
R5 подтянуть туда, где чаще чаще будет находиться трансивер (в каком состоянии).
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="Di123",url="/forum/viewtopic.php?p=4424121#p4424121"]а можно ли к резисторам подтяжки добавить светодиоды ?
нужно видеть присутствие сигнала для технического мониторинга скажем так ...[/uquote]
Лучше через транзистор или логический элемент, но длительность импульсов маленькая,
глаз может не успеть увидеть.
нужно видеть присутствие сигнала для технического мониторинга скажем так ...[/uquote]
Лучше через транзистор или логический элемент, но длительность импульсов маленькая,
глаз может не успеть увидеть.
Re: Мелкие вопросы по МК и ПЛИС.
Di123, при питании 3.3V и скажем зеленом или желтом LED c Vf~ 2V пуллапа фактически не будет (будет подтягивать к +1.3 V что оочень близко к порогу переключения входов, а иногда и недотягивает до H. синие и белые LED вообще Vf ~3+V. красные часто бывают 1.5V, но не все, и это тож на грани получается.
параллельно к пуллап резисторам можно LED+R (~300+ ohm) но, как заметил Dismas, это часто не имеет смысла из-за скорости сигналов.
параллельно к пуллап резисторам можно LED+R (~300+ ohm) но, как заметил Dismas, это часто не имеет смысла из-за скорости сигналов.
Re: Мелкие вопросы по МК и ПЛИС.
насколько безопастно так оцыфровать макушку переменного напряжения в 50гц ?

в теории отрицательная полуволна будет давать чоткий 0
и у нас будет 10мс паузы
далее через функцию фиксирую максимальное число ацп в положительной полуволне которое будет говорить нам о текущем напряжении переменки
далее обнуляю максимальное ацп в течении отрицательного напряжения
и всё по новой
в теории отрицательная полуволна будет давать чоткий 0
и у нас будет 10мс паузы
далее через функцию фиксирую максимальное число ацп в положительной полуволне которое будет говорить нам о текущем напряжении переменки
далее обнуляю максимальное ацп в течении отрицательного напряжения
и всё по новой
Re: Мелкие вопросы по МК и ПЛИС.
Di123, безопаснее всего вместо диода поставить резистор 100..510k, тогда можно хоть 240V AC туда дать. отрицательная полуволна и превышение Vcc надежно отрежутся канальными переходами fet в gpio. чтоб при обрыве цепи была определеннось - еще ~ такой же резистор на землю.
Re: Мелкие вопросы по МК и ПЛИС.
Di123, на gpio не может быть напряжения за пределами Vss-0.7V, Vcc+0.7V пока высоким током не убили выходные fet gpio . резистор последовательно входу гарантирует что ток будет ограничен. единственное если напрямую 240V то скажем резистор размером 0603 может пробиться и тогда усе. 1206 - уже ок для таких напряжений.
если хотите именно измерять огибающую то нужен делитель из 2 резисторов, такой чтоб максимальное ожидаемое напряжение делилось до попадающего во входной диапазон ADC. напр для 240V AC (370V max) 330k и 2.4k от gpio на землю (можно подстроечный, но это несовресменно, лучше скорректировать софтом).
если просто детектировать переход через 0 например то 2 одинаковых резистора 330k и все.
если хотите именно измерять огибающую то нужен делитель из 2 резисторов, такой чтоб максимальное ожидаемое напряжение делилось до попадающего во входной диапазон ADC. напр для 240V AC (370V max) 330k и 2.4k от gpio на землю (можно подстроечный, но это несовресменно, лучше скорректировать софтом).
если просто детектировать переход через 0 например то 2 одинаковых резистора 330k и все.
- GARMIN
- Держит паяльник хвостом
- Сообщения: 954
- Зарегистрирован: Вс дек 02, 2012 16:58:33
- Откуда: от туда
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="Di123",url="/forum/viewtopic.php?p=4425119#p4425119"]какое предназначение низкоомных резисторов между мк и ads ?[/uquote]
Убирают высокочастотный звон цифровых сигналов (может быть одностороннее согласование линий или ФНЧ совместно с входными емкостями микросхемы). С ними звук лучше, сам пробовал.
Убирают высокочастотный звон цифровых сигналов (может быть одностороннее согласование линий или ФНЧ совместно с входными емкостями микросхемы). С ними звук лучше, сам пробовал.


