Вопрос по внутрисхемному программированию МК AVR. Внутри.

Обсуждаем контроллеры компании Atmel.
Ответить
Вымогатель припоя
Сообщения: 507
Зарегистрирован: Чт июн 16, 2011 15:06:10
Откуда: электрощитовая

Сообщение Vova777 »

Собрал схему, где на PortD МК ATmega32 подключены светодиоды D1..D8 с токоограничительными резисторами на 300 Ом. Диоды управляются активной единицей.

Изображение

На PortB, биты №0 и №1 подключены кнопки SB2 и SB3. Это управление схемой.
Соответственно, внешний источник тактовых импульсов Х1 на 4 МГц с двумя конденсаторами С1 и C2, оба на 22 pF.
Кнопка SB1 - сброс программы МК. Сброс осуществляется активным нулем.
Цепи Line 1 и Line 2 - питание 5VDC и GND соответственно.
Разъем J1 нужен для подключения USB-программатора, где:
1- MOSI
2- NC
3- RST
4- SCK
5- MISO

6- Vcc
7- RXD
8- TXD
9- GND
10- GND
Вопрос вот в чем, я подразумеваю, что МК будет программироваться не вынимаясь из схемы. Правильно ли так делать разводку? А если при программировании питание со схемы от внешнего источника сниматься не будет? Или нужно на отводы от разъема поставить защитные диоды?
даешь высокое напряжение
Реклама
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Сообщение kalobyte »

сброс должен быть подтянут к питанию через резистор и там еще конденсатор должен быть
ну и кнопочные входы тоже подтягиваются через резистор к питанию
тематические ответы только в форуме, в приват не пишите
Реклама
Вымогатель припоя
Сообщения: 507
Зарегистрирован: Чт июн 16, 2011 15:06:10
Откуда: электрощитовая

Сообщение Vova777 »

kalobyte писал(а):сброс должен быть подтянут к питанию через резистор и там еще конденсатор должен быть
ну и кнопочные входы тоже подтягиваются через резистор к питанию
ок, что насчет подключения программатора?
даешь высокое напряжение
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

В остальном вроде все ок, ничего криминального нет. Питание это пофиг, главное чтобы плата была вообще запитана при программировании.
Изображение only pure true norwegian blackx Изображение
Реклама
Эиком - электронные компоненты и радиодетали
Вымогатель припоя
Сообщения: 507
Зарегистрирован: Чт июн 16, 2011 15:06:10
Откуда: электрощитовая

Сообщение Vova777 »

kalobyte писал(а): ...там еще конденсатор должен быть...
Конденсатор там для какой цели?
kalobyte писал(а): ...ну и кнопочные входы тоже подтягиваются через резистор к питанию...
У МК активны внутренние подтягивающие резисторы.
blackx писал(а): ...чтобы плата была вообще запитана при программировании...
В принципе, ее программатор может питать, если до 500 мА. Просто в моей схеме два питания встретятся, от источника и от программатора. Я понимаю, ничего не будет. Вопрос про остальные ножки от программатора. Они же параллелятся с нагрузкой (диоды). А если я захочу подцепить кнопки на весь PortB?
даешь высокое напряжение
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

Vova777 писал(а): Конденсатор там для какой цели?
Конденсатор рекомендуется ставить между выводом RESET и землей. Вместе с резистором он образует схему задержки включения (ну и вообще МК не будет перезагружаться от любой наводки в питании).

Vova777 писал(а): У МК активны внутренние подтягивающие резисторы.
Нипонил, кнопки и так подсоединены к + питания. Вам их нужно или к земле подключить, либо линию со стороны МК резисторами к земле подтягивать, а пины перевести в HI-Z.
По хорошему, в такой схеме еще бы резисторы поставить от ножек МК, вдруг ошибетесь в программе, нажмете кнопку, пожжете вывод :)
Vova777 писал(а): Просто в моей схеме два питания встретятся, от источника и от программатора. Я понимаю, ничего не будет. Вопрос про остальные ножки от программатора. Они же параллелятся с нагрузкой (диоды). А если я захочу подцепить кнопки на весь PortB?
Да, забыл сказать. То питание, которое питает МК, не должно быть меньше чем то питание, которое может подаваться на другие ноги МК (например, сигнал с программатора). Например, нельзя МК питать от 3.3 В если программатор будет гнать сигнал в 5 В.

Сами по себе кнопки на МК не влияют, пока на них не начнут нажимать. Но если нажать на кнопку, которая висит на выводах MOSI или SCK во время прошивки, то программатор без защиты можно испортить.
Изображение only pure true norwegian blackx Изображение
Реклама
Вымогатель припоя
Сообщения: 507
Зарегистрирован: Чт июн 16, 2011 15:06:10
Откуда: электрощитовая

Сообщение Vova777 »

blackx писал(а): ...Вместе с резистором он образует схему задержки включения (ну и вообще МК не будет перезагружаться от любой наводки в питании)...
А, задержка включения. Ну да вообще, есть такое.
blackx писал(а): ...Вам их нужно или к земле подключить, либо линию со стороны МК резисторами к земле подтягивать, а пины перевести в HI-Z.
По хорошему, в такой схеме еще бы резисторы поставить от ножек МК, вдруг ошибетесь в программе, нажмете кнопку, пожжете вывод...
Извините, подтяжка в другой схеме, где управление с кнопок идет активным нулем. Сам запутался уже. Но Вы говорите, что в ЭТОЙ схеме нужно поставить резисторы, чтобы не спалить вывод. Расскажите подробнее, я не понял, как его можно спалить?
blackx писал(а): ...Да, забыл сказать. То питание, которое питает МК, не должно быть меньше чем то питание, которое может подаваться на другие ноги МК (например, сигнал с программатора). Например, нельзя МК питать от 3.3 В если программатор будет гнать сигнал в 5 В.
Ну это итак понятно. В моей схеме цепи питания параллелятся друг с другом. Так же нормально?
blackx писал(а): Сами по себе кнопки на МК не влияют, пока на них не начнут нажимать. Но если нажать на кнопку, которая висит на выводах MOSI или SCK во время прошивки, то программатор без защиты можно испортить.
Как организовать защиту?
даешь высокое напряжение
Опытный кот
Сообщения: 758
Зарегистрирован: Вс фев 10, 2013 15:26:00

Сообщение nirq »

Сопротивления в разрыв программаторных линий полезны. Для защиты программатора как от замыкания через кнопки, так и "перетягивания линии в разные стороны за разные концы".
Но и сэкономить на них соблазн, поэтому решается самостоятельно.
Компромисс: резисторы развести, но заменить перемычками. Потому что и в программаторе они тоже предусмотрены (и тоже заменены перемычками).
Расскажите подробнее, я не понял
Один конец линии: с выхода либо низкий уровень тянет линию вниз, либо высокий уровень тянет её наоборот, либо совсем высокий уровень тянет её ещё выше (внимательно с разными питаниями), либо вход ничего никуда не тянет.
Другой конец линии: те же самые четыре варианта.
Отключаемся от интернета, берём бумажку и фломастер, перебираем и разрисовываем руками все возможные сочетания вариантов.
МК питать от 3.3 В если программатор будет гнать сигнал в 5 В
Через защитные диоды на ногах всё лишнее сливается в рельсу питания.
Для дома, для семьи - колхозно, но не смертельно. УМВР.



И да: при рисовании R1 голова применялась никак. Внутри!
Ответить

Вернуться в «AVR»