Микроконтроллеры AVR - применение и Краткий Курс - часть 10

 
1 11 12 13 14 15 38
UA Non-conformist #12.02.2009 15:35  @termostat#12.02.2009 14:28
+
-
edit
 

hcube

старожил
★★
Хрень какая ;-) Ее можно в корпус DB9 разъема уложить при желании, а им DB25 не хватило ;-)

Есть же ADUM1200/1201 - их и надо использовать. Один DC-DC, один стабилизатор, конденсаторов по вкусу ;-D
Убей в себе зомби!  7.07.0
RU termostat #12.02.2009 16:45  @Non-conformist#12.02.2009 15:35
+
-
edit
 
+
-
edit
 

termostat

аксакал

hcube> Хрень какая ;-) Ее можно в корпус DB9 разъема уложить при желании, а им DB25 не хватило ;-)
hcube> Есть же ADUM1200/1201 - их и надо использовать. Один DC-DC, один стабилизатор, конденсаторов по вкусу ;-D

Лучше уж поновей со встроеными DCDC adum5xxx ...
+
-
edit
 

Serge77

модератор

Хочу сделать индикацию режима работы высотомера - запись или передача данных. Свободных ног у МК уже нет, поэтому думаю повесить светодиод на вывод, с которого идёт передача на СОМ-порт. Поставлю резистор 1000 Ом.
Вопрос - не будет ли это мешать передаче данных? А если резистор будет 500 или 300 Ом?

Xan

координатор

Serge77> Свободных ног у МК уже нет, поэтому думаю повесить светодиод на вывод, с которого идёт передача на СОМ-порт. Поставлю резистор 1000 Ом.

Для пика, чтоб падение на ноге не превысило 0.8 вольта (стандартная граница для ТТЛ), можно забирать ток до 15 мА.
Если старый красный светодиод с падением 1.6 В, то 5 - 1.6 - 0.8 = 2.6 вольта на резисторе.
2.6 / 15 = 0.173 килоома.
Это для включение резюка и диода между ногой и +5 питания.
Если от ноги к земле, там транзисторы слабее, но зато граница ТТЛ = 2 вольта, так что ток можно больший забрать.

У атмела, вроде, с мощью выводов немного лучше, резюк можно ставить ещё меньше.
 7.07.0

Xan

координатор

ЗЫ
0.8 и 2 вольта - это из даташитов на всякие преобразователи ТТЛ - RS232
 7.07.0
+
-
edit
 

Serge77

модератор

Я думал соединять от ноги к земле, почему-то так привычнее ;^))
Сильно большой ток не нужен, зачем батарею сажать. Думаю, 5 мА будет достаточно, чтобы увидеть свечение светодиода.

Xan

координатор

Serge77> Я думал соединять от ноги к земле, почему-то так привычнее ;^))

У UART, пока он не передаёт, на ноге единица. А при передаче получаются нули.
Если хочется, чтоб было видно, когда есть передача, лучше диод к питанию цеплять, чтоб он загорался при передаче и не горел в паузе.

А можно и два разноцветных диода подключить, один вверх, другой вниз. Но каждому свой резистор.
Совсем красиво будет!!! :)
Я так делаю на RS485, чтоб наверняка знать, что сигнал есть.

Сверхярким, наверное, и килоома хватит, чтоб днём на солнце было видно. Вблизи, конечно.
 7.07.0
+
-
edit
 

Serge77

модератор

У меня задача состоит не в том, чтобы увидеть собственно момент передачи, а в том, чтобы при включении схемы просигнализировать, в каком режиме начал работать МК - записи данных или передачи. Чтобы при случайном включении на запись вместо передачи можно было это понять и выключить МК, пока данные в памяти не перезаписались.

Запись начинается через 40 секунд после включения, и я хочу, чтобы все 40 с светодиод мигал.
RU termostat #28.02.2009 23:12  @Serge77#28.02.2009 19:55
+
-
edit
 

termostat

аксакал

Serge77> Поставлю резистор 1000 Ом.
Serge77> Вопрос - не будет ли это мешать передаче данных? А если резистор будет 500 или 300 Ом?

Дак ПРОВЕРЬ ! Я думаю и с 300 со светодиодом будет нормально передавать.
+
-
edit
 

Serge77

модератор

Так проверяю! Впаял 1000 Ом - не передаёт.
RU termostat #01.03.2009 00:15  @Serge77#28.02.2009 23:23
+
-
edit
 

termostat

аксакал

Serge77> Так проверяю! Впаял 1000 Ом - не передаёт.

Это схему надо смотреть. Как у тебя включено ? Не может 1 кОм припаяный к ноге AVR TxD мешать передачи от МК. Какая дальше схема к ПК стоит ?

Измерь его сопротивление. Можно подстроечник впаять и посмотреть когда передавать перестанет.
Это сообщение редактировалось 01.03.2009 в 00:21
RU Андрей Суворов #01.03.2009 08:31
+
-
edit
 

Андрей Суворов

координатор

Да, килоом мешать не может. Скорее всего, это программный затык.
 7.07.0
+
-
edit
 

Serge77

модератор

Serge77> Так проверяю! Впаял 1000 Ом - не передаёт.

Как обычно, причина оказалась простая - "упрощал" схему и в результате reset повис в воздухе.
Теперь всё передаёт, светодиод мигает как надо. Всем спасибо!
RU termostat #01.03.2009 19:07
+
-
edit
 
+
-
edit
 

Serge77

модератор

На самом деле аксиома выглядит чуть по-другому: "у Serge77 все работает, но не сразу" ;^))
RU Full-scale #02.03.2009 06:18
+
-
edit
 

Full-scale

опытный

По этому поводу есть поговорка. Если чтото не работает сразу то в схеме как минимум одна ошибка, если же все работает то ошибок как минимум две :)
 3.0.63.0.6
RU termostat #03.03.2009 22:42
+
-
edit
 

termostat

аксакал

Новость ! AvrStudio 4.16 работает в связке с PROTEUS.

AVR Studio 4.16 build 628. Размер: 127 MB добавлены:
- поддержка новых микроконтроллеров (ATtiny10, ATtiny24A, ATtiny44A, ATxmega32A4, ATxmega16A4, ATmega164PA, ATmega48PA)
- новый инструментарий для сенсорных клавиатур AVR QTouch Studio
- поддержка различных комбинаций переходных плат STK600
- активирована система отчетов об ошибках Windows (Windows Error Reporting (WER))
- поддержка Xmega в командной строке JTAGICE mkII

Object not found!

The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error. If you think this is a server error, please contact the webmaster. // www.efo.ru
 

PROTEUS правильный там:

Просмотр темы - PROTEUS где скачать рабочую версию ? • roboforum.ru

roboforum.ru: Микроконтроллеры — PROTEUS где скачать рабочую версию ?, Страница 1 из 9 // roboforum.ru
 
+
-
edit
 

GOGI

координатор
★★★★
Вопрос.
К мк подкючен квадратурный энкодер. два выхода А и B.
обработка в прерывании по изменению уровня любого выхода
я правильно понимаю что чтобы узнать направление вращения достаточно одной операции исключающее ИЛИ текущего значения A и предыдущего значения B (ну или наоборот текущего B и предыдущего A)?
1  
RU Андрей Суворов #27.03.2009 08:35  @GOGI#27.03.2009 07:26
+
-
edit
 

Андрей Суворов

координатор

GOGI> Вопрос.
GOGI> К мк подкючен квадратурный энкодер. два выхода А и B.
GOGI> обработка в прерывании по изменению уровня любого выхода
GOGI> я правильно понимаю что чтобы узнать направление вращения достаточно одной операции исключающее ИЛИ текущего значения A и предыдущего значения B (ну или наоборот текущего B и предыдущего A)?

Здесь это уже обсуждали, и, насколько я понимаю, нет, нельзя. При этом бороться с дребезгом не выйдет. Правильная последовательность при вращении в одну сторону
0-1-3-2-0, при вращении в другую 0-2-3-1-0. Остальные переходы - дребезг.
 7.07.0

pokos

аксакал

GOGI> обработка в прерывании по изменению уровня любого выхода
Сделай только от одного. Он должен быть зафильтрован ФНЧ. Мне хватило резючка и кондючка.

GOGI> я правильно понимаю что чтобы узнать направление вращения достаточно одной операции исключающее ИЛИ текущего значения A и предыдущего значения B (ну или наоборот текущего B и предыдущего A)?

Достаточно при условии выше. На самом деле, ещё тупее. Приходит прерывание - тупо смотришь уровень на втором входе. Типо =1 - влево, =0 - вправо. У меня подобный подход прекрасно работает в электронном регуляторе громкости. Кодер мне попался довольно говённый - при вращении в одну из сторон контакты переключаются почти одновременно. Но всё работает.
Всего-то делов:
code text
  1. // External Interrupt 1 service routine
  2. interrupt [EXT_INT1] void ext_int1_isr(void)   // enCoder
  3.        
  4. {
  5. // Place your code here
  6.         if (command==0)
  7.         {
  8.                 if (F2==1) command=C_UP;
  9.                 else command=C_DOWN;
  10.         };
  11. }


Если, всётки, кодер очсильно дребезжит, то можно сделать простенький алгоритм фильтрации прямо в обработчике прерывания, с использованием таймера.
 6.06.0
Это сообщение редактировалось 27.03.2009 в 12:09
+
-
edit
 

Piroman
Ignis Caelum

опытный

Есть ли какие достоверные данные по сопротивлению пинов МК Атмега при низком уровне на землю и при высоком уровне на Vcc ?

Вопрос вызван тем, что подключив 2 нагрузки к 2-м пинам по 17 мА. с подачей высокого уровня на пины.
Имею греющийся до 30 гр Ц корпус Атмеги 88 частота 18.432 Мгц.

раньше делал подключение нагрузки через подачи земли с пина и такого не наблюдалось. Переделать - не вопрос.
Хочется достоверных данных. в даташите ответа не обнаружил. Там макс 40 мА на пин и 200 мА на все пины.
Лучше быть оптимистом и ошибаться, чем пессимистом, который всегда прав.  6.06.0
CA pokos #13.04.2009 13:06  @Ignis Caelum#13.04.2009 12:25
+
-
edit
 

pokos

аксакал

Piroman> Хочется достоверных данных. в даташите ответа не обнаружил. Там макс 40 мА на пин и 200 мА на все пины.
Нужно смотреть Figure 28-22 и Figure 28-25, там нагрузочные характеристики ног.
Видно, что положительное плечо заметно более хилое, чем отрицательное, поэтому при 17мА оно уже может стабилизировать ток, соответственно, часть мощности уже выделяется в корпусе.

Имеется в виду даташит на Мегу 48/88/168 Rev.2545G
 6.06.0

Piroman
Ignis Caelum

опытный

pokos> Имеется в виду даташит на Мегу 48/88/168 Rev.2545G

В даташите на Мегу 48/88/168 Rev.2545М

есть след. фигуры. и из них следует что разницы нет по падению напрежения на пине в зависимости от тока. ни в прямом ни в обратном направлении...
Прикреплённые файлы:
 
Лучше быть оптимистом и ошибаться, чем пессимистом, который всегда прав.  8.08.0
1 11 12 13 14 15 38

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru