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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Родился
Сообщения: 10
Зарегистрирован: Пт мар 25, 2011 19:20:06

Сообщение Вырвиглаз »

Мелкий вопрос. МК питается от 5в. На разъем приходит 5 логических сигналов амплитудой до 15 вольт. Надо ли ставить стабиллитроны или можно обойтись только резисторами. Если по 100-300кОм поставить, достаточно ли будет внутренних стабиллитронов или обязательно лепить внешние? Плата вся под SMD. А стабы есть в наличии только под сверление. Не хочется лишних хлопот с ними.
Контроллер PIC18F.
Реклама
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Надо ли ставить стабиллитроны или можно обойтись только резисторами.
Всё зависит от того, на сколько стабильны и богаты помехами 15В-уровни. Если это бортсеть автомобиля, то лучше стабилитроны, или вообще опторазвязку.
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

При компиляции проги на асме (ПИК12) пишет такое:
ADC-W0010: A Minimum of 2 TADs are required before another conversion should be started.
Смотрел даташит, смотрел пример... Честно говоря не понял что такое 2 TADs.
Успех - императив!
Chettuser

Сообщение Chettuser »

Посмотрите тута. Видимо речь идёт о 2T AD - типа 2 такта для ADC. Может так?
Реклама
Эиком - электронные компоненты и радиодетали
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

Сообщение Necroteeth »

Добрый день!
Вопрос следующего плана: хочу на отладочную плату прикрутить возможность общения с ноутбуком. в наличии переходник USB-COM PL2303. на самой отладочной плате что нужно поставить кроме самого разъема DB9 и собственно дорожек, соединяющих между собой RxD и TxD разъема и контроллера?
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

MAX232
Контактная информация:
Реклама
Грызет канифоль
Аватара пользователя
Сообщения: 271
Зарегистрирован: Пн окт 25, 2010 20:47:04
Откуда: Казахстан, Астана

Сообщение shurikss123 »

Chettuser писал(а):Вопрос по MPLAB наверное сюда?
Проблема такая: при отладке программы (F7, F8 или "Animate") через некоторое время (пока не уловил, примерно секунд 10-20) вылетает с ошибкой. Очевидно какая то несовместимость в системе. Может у кого то такая проблема была?
а я после такого память поменял и усе номуль
sergeys писал(а):Привет! Коты как думаете хватит для самого начала этого программатора? Потом имея его можно и мегу8 прошить и нормальный сделат. Я так думаю.
http://www.masterkit.ru/main/set.php?code_id=276487
Весь вопрос с дудой под линуксом сдружиться?
avrdude -c list
Necroteeth писал(а):Добрый день!
Вопрос следующего плана: хочу на отладочную плату прикрутить возможность общения с ноутбуком. в наличии переходник USB-COM PL2303. на самой отладочной плате что нужно поставить кроме самого разъема DB9 и собственно дорожек, соединяющих между собой RxD и TxD разъема и контроллера?
Я на прямую кидал котакты, и все работает, и не надо никаких MAX232
Изображение
Мастер на все руки, кручу, кручу, кручу и матерюсь
Повелитель паяльной станции, лома, и пинцета!!!
Chettuser

Сообщение Chettuser »

Кто не жадный! Поделитесь плиз библиотечкой DS18x2x для MCC18. :oops: Переделать AVR-овскую мне пока не по зубам.
Последний раз редактировалось Chettuser Пн апр 04, 2011 20:50:17, всего редактировалось 1 раз.
Мудрый кот
Аватара пользователя
Сообщения: 1866
Зарегистрирован: Сб фев 14, 2009 18:15:07
Откуда: Молодечно(Беларусь)

Сообщение Radiobonchic »

ВСЕМ ЕЩЕ РАЗ ЗДРАСТИ!!!!собрал вот это устройство благополучно прошил, но он даже не включается....может какието биты конфигурации надо было поменять? если да то какие? программа winpic800.
Мудрый кот
Аватара пользователя
Сообщения: 1866
Зарегистрирован: Сб фев 14, 2009 18:15:07
Откуда: Молодечно(Беларусь)

Сообщение Radiobonchic »

если не трудно.....пометьте на картинке.....Изображение
Вложения
конфигурация....jpg
конфигурация
(41.45 КБ) 888 скачиваний
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1573
Зарегистрирован: Сб окт 09, 2010 12:33:48
Откуда: Незалежная

Сообщение К@Т »

Radiobonchic писал(а):если не трудно.....пометьте на картинке.....Изображение
С винпиком(осцилятор раком стоит) советовать не буду ,т.к. Пики шью только ис прогом.В Ис проге биты становятса из кода автоматически!Прошейте ис прогом.http://www.ic-prog.com/
У кошки 4 ноги и хвост-плюс,минус,вход,выход,а хвост-земля.....Надо переходить с китайской бурды на канифоль.......[url=http://infobar.hsdn.org/][img]http://static.hsdn.org/infobar/350x60.gif[/img][/url]
Мудрый кот
Аватара пользователя
Сообщения: 1866
Зарегистрирован: Сб фев 14, 2009 18:15:07
Откуда: Молодечно(Беларусь)

Сообщение Radiobonchic »

ICprog почему то постоянно матерится на моем компе...а если начать шить то вообще сразу зависает....
Мудрый кот
Аватара пользователя
Сообщения: 1866
Зарегистрирован: Сб фев 14, 2009 18:15:07
Откуда: Молодечно(Беларусь)

Сообщение Radiobonchic »

ВСЕМ СПАСИБО ЕЩЕ РАЗ....свершилось вновь чудо, все заработало, но либо прошивка касая, либо я просто плохо прошил....энкодер как ни крути, всегда вправо поворачивает(так думает прошивка..), но это отдельная тема...
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

Сообщение Necroteeth »

помогите разобраться, что в регистрах таймеров записать.
нужны в программе два таймера - один постоянно работающий, другой включающийся по команде. оба обнуляются по совпадению своих компараторов
при предделителе 1/1024 OCR0=C3, OCR1A=01E8
TIMSK=00010010
TCCR0=00001101

непонятный для меня момент в том, что я не могу найти предделитель таймера1 - в регистре TCCR1A нет битов CS :( и бит обнуления по совпадению с компаратором тоже не заметил...
заметил, что таковые есть зато в TCCR1B. как это понимать? как правильно заюзать второй таймер, чтоб при делителе 1/1024 он считал до 01E8?
короче, запутался я с 16-битным таймером... :(
Друг Кота
Аватара пользователя
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Сообщение Gudd-Head »

Necroteeth писал(а):короче, запутался я с 16-битным таймером... :(
Вы бы хоть МК озвучили.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

короче, запутался я с 16-битным таймером...
Пример для ATMega8. 16-ти битный таймер. Используем 2 "регистра совпадения". Компилятор CVAVR. Два значения 01С2 и 01Е8 по совпадению с которыми генерируется прерывание.

Код: Выделить всё

//инициализация таймера
....
OCR1AH=0x01;
OCR1AL=0xС2;
OCR1BH=0x01;
OCR1BL=0xЕ8;

// Timer 1 output compare A interrupt service routine
interrupt [TIM1_COMPA] void timer1_compa_isr(void)
  { 
  // код
  }
  
// Timer 1 output compare B interrupt service routine
interrupt [TIM1_COMPB] void timer1_compb_isr(void)
{
 // код
}
Чтобы запустить "совпадение" с делителем 1024 пишем: TCCR1A=0x05;, чтобы остановить: TCCR1A=0x00;.

P.S. Компилятора под рукой нет, открыл исходник в блокноте, скопировал кусок, и подправил немного.

Код: Выделить всё

TIMSK=0x19;
Включит Timer0 (8 бит) и Timer1 (16 бит). Как включить только один Timer1 не скажу, компилятора нет, а в даташит лень лезть :)
Нельзя всё знать, достаточно понимать.
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

Сообщение Necroteeth »

ох... извините, я забыл сказать, что МК Atmega16A, а пишу на ассемблере в AVR Studio. логика осуществления мне, в приницпе, понятна, а конкретный механизм установки таймера не очень - 1. части Timer/Counter1 A и B работают полностью независимо или отличаются только значениями компараторов?
2. следует из первого. режим "очистить таймер при совпадении компаратора" устанавливается для обеих половинок Timer/Counter1, отдельно или только у одной его конкретной половины?

поначалу хотелось схалявить и содрать все из обучалки, где использовали часть B в бегущем огоньке, но потом понял, что вопросы тогда не пропадут и захотел сделать на половине A. вот и родились эти вопросы
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

1. В одном таймере - 1 счетчик, и может быть несколько компараторов. В данном случае счетчик - TCNT1, компаратор OCR1A и компаратор OCR1B. В каждом из них свое значение, и сравнивается оно с текущим значением счетчика TCNT1.
2. Это про режим CTC? Если да, то вроде отдельно для каждого компаратора, но если очищать таймер при совпадении компаратора с меньшим порогом, то до компаратора в большим порогом таймер не досчитает :)
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 362
Зарегистрирован: Вс окт 10, 2010 17:43:48
Откуда: Воронеж

Сообщение Necroteeth »

Engineer_Keen писал(а):1. В одном таймере - 1 счетчик, и может быть несколько компараторов. В данном случае счетчик - TCNT1, компаратор OCR1A и компаратор OCR1B. В каждом из них свое значение, и сравнивается оно с текущим значением счетчика TCNT1.
2. Это про режим CTC? Если да, то вроде отдельно для каждого компаратора, но если очищать таймер при совпадении компаратора с меньшим порогом, то до компаратора в большим порогом таймер не досчитает :)
спасибо большое! буду пробовать :beer:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 326
Зарегистрирован: Сб сен 06, 2008 12:56:13

Сообщение ValBag »

Necroteeth писал(а):помогите разобраться, что в регистрах таймеров записать.
Регистры TCCR1A...C общие на весь таймер, а не так, например: TCCR1A <<>> OCR1A и т. д. Остановка таймера: обнуление битов CS12...10 в регистре TCCR1B, а включение: установка (там же) необходимого коэффициента деления.
Режим СТС - сброс при совпадении - устанавливается битами WGM13, WGM12 - 01 в TCCR1B и WGM11, WGM10 - 00 в TCCR1A, это для Atmega16. СТС применим только для OCR1A. Для других: OCR1B, С - только сравнение.
Ответить

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