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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Встал на лапы
Аватара пользователя
Сообщения: 133
Зарегистрирован: Пт май 03, 2013 20:14:31
Откуда: Шебекино, граница

Сообщение НСТ »

Доброго здоровья добрым людям!
Приношу свои извинения форуму за свое свое ужасно глупое поведение.
Очень сожалею, что так необдуманно задал вопрос и выложил подобное "творчество" на всеобщее обозрение. Не прошло и суток, как я немного поумнел и пришел в тихий ужас от содеянного. И послал себя учиться.
С уважением, НСТ.
Лучший вид бардака - демократия
Хочешь, чтоб люди тебя понимали? Говори с ними на их языке!
Писать грамотно - моветон!
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 85
Зарегистрирован: Пн ноя 08, 2010 14:07:14
Откуда: Владимирская область

Сообщение Евгений33 »

Добрый день уважаемые. Собственно вопрос: есть ли какие подводные камни при работе микроконтроллера с кварцевым генератором синхроимпульсов. В моем случае это связь Mega32 и КХО-97 (14,7456 МГц), тактируется на XTAL1, фьюзы CSEL настроены на работу с ним. Просто иногда контроллер не запускается, хотя синхроимпульсы с КХО есть. Может нужна какая то обвязка? :dont_know:
.....
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6348
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

1. RESET к питанию через резистор подтянуто ? Для надежности лучше использовать супервизор питания, к примеру, МСР100. Недорого, но запуск будет устойчивей.
2. Какое напряжение питания ? Если ниже 4,5В, имеет право не запускаться.
Встал на лапы
Аватара пользователя
Сообщения: 85
Зарегистрирован: Пн ноя 08, 2010 14:07:14
Откуда: Владимирская область

Сообщение Евгений33 »

Да, сброс подтянут, питание 5 вольт - постоянно контроллирую вольтметром. То есть как я понимаю косяков в выше изложенной мною связки (mega32+КХО), быть не должно?
.....
Реклама
Эиком - электронные компоненты и радиодетали
isx
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Сообщение isx »

Добрый вечер!!!
Помогите с такой задачей. Есть МК атмега8. Нужно сделать так, чтобы при отключении питания МК сохранял некие переменные в EEPROM. Есть мысль подтянуть ногу к питанию через резистивный делитель и задействовать в цифровом режиме. Там есть определённый барьер (вроде около 1.5В) ниже которого лежит низкий уровень, а выше, соответственно высокий. Задумка такая, что при падения напряжения питания с 5В, скажем, до 3 напряжение на делители уменьшится и пин распознает низкий уровень, по появлении которого МК и будет записывать данные в EEPROM. Есть только сомнения, в плане того, что при падении напряжения питания может упасть и "восприимчивость" порта к порогу, который может тоже снижаться до тех пор, пока МК не отрубится. Подскажите пожалуйста, как лучше реализовать такую задачу?
Реклама
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Сообщение SmarTrunk »

Была ветка, на эту тему. Вкратце, нужно отдельное питание МК с электролитическим конденсатором по питанию, емкостью несколько сотен микрофарад - рассчитывается для количества байтов, которые надо сохранить. Пропадание питания смотреть или цифровой ножкой, но подключенной через делитель к другой части схемы, в которой напряжение проседает быстрее, или аналоговым компаратором подключенным вторым входом к внутреннему ИОН. Так вполне реально сохранять несколько байтов. Обязательно предпринять обычные жесткие меры для сохранности ЕЕПРОМ, например включить БОД.
Реклама
isx
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Сообщение isx »

А может диод после делителя поставить, чтоб напряжение просело побольше?
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Сообщение SmarTrunk »

Нет.

http://radiokot.ru/forum/viewtopic.php?f=20&t=62877

Вот, кстати, ветка с обсуждением, хотя там были споры, т.к. каждый привык делать по-своему.
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

Питание на контроллер подать через диод и обязательно конденсатор в питании. Свободный вывод порта повесить через резистор на незащищенную цепь питания - до диода, при его пропадании срабатывает прерывание по уровню на порту, в прерывании экстренно отключаешь все нагрузки контроллера(светодиоды например) - иначе через них преждевременно разрядится конденсатор. Это буквально 10-20 тактов, затем можно сохранять в ЕЕПРОМ и уходить в бесконечный цикл.

А по сбросу контроллера, прежде чем разрешить прерывания - перевести вывод в режим входа и дождаться там "1", чтобы предотвратить ситуацию когда в процессе выключения контроллер случайно сбросится и на остатках конденсатора попытается сохранить в EEPROM еще раз, естественно испортив значение в ячейке.
Контактная информация:
isx
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Сообщение isx »

Попробовал смодулировать в протеусе. Получилось весьма не плохо, при подении напряжения до 4В даже простой делитель на резисторах дал не плохой эффект. Напряжение питания у меня 5В, ёмкость 1000мкФ, потребляемый ток около 250мА, записать нужно всего 5 переменных в int. Вроде должно и так получится. Сделал ещё после записи вывод сообщения на дисплей. Потом на железяке попробую как себя покажет. Если ещё успею прочитать сообщение с дисплея, то значит работать будет как часы... :)
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

250мА - это ток идущий через шины контроллера? Всю силовую часть надо оставить до диода либо при просадке напряжения и срабатывании защиты - отключить нагрузку немедленно и только после этого приступать к записи, это будет залогом нормальной работы.
Контактная информация:
isx
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2316
Зарегистрирован: Вс июн 26, 2011 20:03:21

Сообщение isx »

Всего 250мА. Попробую пока по- простому, если не прокатит, то буду пробовать всё отключать.... Спасибо за помощь!! :)
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Вт мар 12, 2013 05:25:54

Сообщение z00lu »

Есть желание перенести проект с ардуины на МК.
Буду использовать atmaga64.
Какая нужна к нему обвязка?
Питаться будет от usb на компьютере или телефоне/ планшете
Родился
Сообщения: 16
Зарегистрирован: Вс май 15, 2011 10:56:57

Сообщение Nemon »

Всем привет, подскажите пожалуйста как можно соединить между собой 2е Atmega16? Если можно, то рисунком какие ножки соединять между собой
P.S.: у одной Атмега16 нехватает мне ножек, поэтому хочу взять 2е чтобы они могли обмениваться информацией
Модератор
Аватара пользователя
Сообщения: 4618
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

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

Сообщение Engineer_Keen »

z00lu писал(а):Буду использовать atmaga64.
Какая нужна к нему обвязка?
А это зависит от того, что будет подключено к контроллеру. Сам по себе контроллер работает если на него просто подать питание. Для надежности нужен резистор 5-10к с ресета на + и керамика 0.1мкФ по питанию. Если используется внешний кварц, то соответственно кварц+конденсаторы, все это есть в даташите. Остальное зависит от вашей конкретной схемы.
Nemon писал(а):Всем привет, подскажите пожалуйста как можно соединить между собой 2е Atmega16?
UART (2 ноги: RXD-TXD крест-накрест), SPI (4 ноги:MOSI c MISO крест накрест, CLK, SS напрямую), I2C/TWI (2 ноги - SCL,SDA - напрямую)
Nemon писал(а):P.S.: у одной Атмега16 нехватает мне ножек, поэтому хочу взять 2е чтобы они могли обмениваться информацией
А вот тут уже напрашивается использование расширителей вывода вместо лишнего контроллера. Для этого проще всего использовать регистры например 74hc595 (для вывода) и 597 (для ввода) или пару HC164/165.
Друг Кота
Сообщения: 6014
Зарегистрирован: Чт ноя 26, 2009 11:16:50
Откуда: Москва

Сообщение SmarTrunk »

Я больше люблю SPI. Быстрый, простой, аппаратный. Но для односторонней передачи нужны три линии, для двусторонней - четыре.
Для большей экономии ножек могут быть лучше I2C или UART. Еще они лучше, если устройства на разных платах, т.е. расстояние между МК больше 10-15 сантиметров.

А я не против использования нескольких МК! Это более гибкое решение, чем сдвиговые регистры, но решение за разработчиком.
Вымогатель припоя
Аватара пользователя
Сообщения: 535
Зарегистрирован: Вт авг 28, 2012 22:21:33

Сообщение menzoda »

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

Сообщение Engineer_Keen »

У многих микросхем с SPI загрузка данных или выполнение команды происходит по переднему фронту и без линии CS они просто не будут работать. В той же меге в режиме слейва низкий уровень SS включает логику SPI, а высокий уровень делает ей сброс. В конкретном случае конечно можно и обойтись без нее.
Родился
Сообщения: 16
Зарегистрирован: Вс май 15, 2011 10:56:57

Сообщение Nemon »

Спасибо за помощь, пожалуй выберу UART
Ответить

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