Мелкие вопросы по МК и ПЛИС.
- КРАМ
- Друг Кота
- Сообщения: 25154
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по МК и ПЛИС.
ШИМ тут при том, что меандр (или не меандр) образуется АППАРАТНО. Ставим период ШИМа равным искомому 1 МГц, а дьюти цикл в половину от периода ШИМа.
Скажем частота заполнения 16 МГц. Период ШИМа формируем четырьмя разрядами счетчика (сброс по 0x10), а дьюти ставим 0х08. Получаем меандр в 1 МГц.
Скажем частота заполнения 16 МГц. Период ШИМа формируем четырьмя разрядами счетчика (сброс по 0x10), а дьюти ставим 0х08. Получаем меандр в 1 МГц.
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Что-то не всасываю. Зачем ШИМ? Сказано только о сможет/не сможет. Что мешает сделать так:
Код: Выделить всё
while(1)
{
PORTA.0= 1;
PORTA.0= 0;
}Docendo discimus
- ibiza11
- Поставщик валерьянки для Кота
- Сообщения: 1900
- Зарегистрирован: Сб фев 21, 2009 13:11:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Это не будет меандром!pyzhman писал(а):Что-то не всасываю. Зачем ШИМ? Сказано только о сможет/не сможет. Что мешает сделать так:Код: Выделить всё
while(1)
{
PORTA.0= 1;
PORTA.0= 0;
}
Ставим плюсы: )
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Если под меандром подразумевать скважность=2, то нет. Почти. Да и шим под меандр в этом смысле тоже подбивать. Но ведь и про меандр в вопросе речи не идет. Автору - или идет? Тогда можно подрихтовать.
Docendo discimus
- КРАМ
- Друг Кота
- Сообщения: 25154
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Мелкие вопросы по МК и ПЛИС.
ibiza11 писал(а):Это не будет меандром!pyzhman писал(а):Что-то не всасываю. Зачем ШИМ? Сказано только о сможет/не сможет. Что мешает сделать так:Код: Выделить всё
while(1)
{
PORTA.0= 1;
PORTA.0= 0;
}
Это не принципиально. Можно и так:
Код: Выделить всё
while(1)
{
PORTA.0= ~PORTA.0;
}или
Код: Выделить всё
while(1)
{
PORTA ^= 0x01;
}Это плохо тем, что загружает МК на 100% и фактически неприменимо. Кроме того, требует значительно более высокой частоты осциллятора, чем аппаратная реализация на периферии.
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
требует значительно более высокой частоты осциллятора
Это как???
Docendo discimus
- Meteor
- Друг Кота
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
КРАМ писал(а):А что, ШИМ применять уже не куртуазно? Видится мне, что ШИМом можно и почаще дергать ногой...
Обращу внимание на особенность задания аффтором
John-RADIST писал(а):коммутируя поочередно +Uп, -Uп и GND.
Ясности нет, но скорее всего имеется ввиду такой режим:
GND->+U->GND->-U->GND...
ВОзможно что я и ошибаюсь, ведь мой телепатор давно на ремонте
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- van_de_luxe
- Встал на лапы
- Сообщения: 103
- Зарегистрирован: Вс окт 31, 2010 16:46:10
- Откуда: Оттуда
Re: Мелкие вопросы по МК и ПЛИС.
van_de_luxe писал(а):наверное такой вопрос уже возникал, но я не нашел
Прерывания обрабатываются последовательно?
например у меня произошло прерывание INT1 с приоритетом 10 и начало обрабатываться. если произойдет прерывание INT0 с приоритетом 5, то INT1 прервется на обработку INT0? или сначала завершится INT1, а потом выполнится INT0?
придется самому на свой вопрос ответить, может кому пригодится.
Такая вещь называется вложенность прерываний, вот вольный перевод из даташита на atmega8:
Когда происходит прерывание, бит глобального разрешения прерываний I очищается, и все прерывания отключены. Пользователь может программно написать логику использования вложенных прерываний. (как я понимаю устанавливая этот бит при вхождении в прерывание)
Все включенные прерывания могут прервать текущее прерывания (тут получается от приоритета не зависит, и низкоприоритетное запросто прервет высокое).
I-бит автоматически устанавливается, когда выполняется инструкция RETI (Return from Interrupt instruction).
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
van_de_luxe писал(а):придется самому на свой вопрос ответить, может кому пригодится.
Оказывается, было достаточно почитать даташит... Как и в большинстве случаев
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- van_de_luxe
- Встал на лапы
- Сообщения: 103
- Зарегистрирован: Вс окт 31, 2010 16:46:10
- Откуда: Оттуда
Re: Мелкие вопросы по МК и ПЛИС.
я не знал как называются вложенные прерывания)) знакомый просветил, и сразу все в даташите нашлось))
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
van_de_luxe писал(а): знакомый просветил, и сразу все в даташите нашлось))
Можно было поступить ещё проще — погонять в Студии.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Мелкие вопросы по МК и ПЛИС.
А что, ШИМ применять уже не куртуазно? Видится мне, что ШИМом можно и почаще дергать ногой...
ШИМ, не ШИМ, толком от автора ничего не добились.
Еще раз повторю - программная генерация займёт минимум 9 тактов. Аппаратная - поставьте фьюз CKOUT и будет вам вывод тактовой на ногу. Нужен мегагерц - пожалуйста. Контроллер на ней вполне сможет нехило работать, и выдавать её на выход.
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Вроде у 32меги CKOUT нету... Если делать программно - сожрет много процессорного времени, смысл контроллера теряется вместо него проще генератор поставить. Как сделать аппаратно я на предыдущей странице написал.
-
John-RADIST
- Открыл глаза
- Сообщения: 44
- Зарегистрирован: Чт дек 15, 2011 19:04:24
Re: Мелкие вопросы по МК и ПЛИС.
Пропустил большую часть дискуссии, только включил комп... Вообще как бы в идеале должен быть меандр скважность=2, но избежать задержки по переднему фронту избежать не удасться.
Правильно именно такой режим...это верно. Может лучше для управления ADG413 использовать отдельный МК, программа в котором запускалась бы от основного МК.
Может быть есть другие варианты сформировать меандр...Ну конечно, кроме ОУ и одновибраторов на ТТЛ и КМОП.
Правильно именно такой режим...это верно. Может лучше для управления ADG413 использовать отдельный МК, программа в котором запускалась бы от основного МК.
Может быть есть другие варианты сформировать меандр...Ну конечно, кроме ОУ и одновибраторов на ТТЛ и КМОП.
Последний раз редактировалось John-RADIST Ср дек 21, 2011 18:07:59, всего редактировалось 1 раз.
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Выше приведенная цитата не моя, поправить бы. Хотя придерживаюсь такого же мнения. Насчет телепатора тоже. 
Docendo discimus
-
John-RADIST
- Открыл глаза
- Сообщения: 44
- Зарегистрирован: Чт дек 15, 2011 19:04:24
Re: Мелкие вопросы по МК и ПЛИС.
Engineer_Keen, подскажите, в
TCCR2=(1<<WGM21)|(1<<COM20)|(X) ;пример для Timer2 и ноги PD7
OCR2=Y
Что это WGM21?????
COM20 ?????
Компилятор ругается.... Использую CVAVR;
Спасибо!!!
TCCR2=(1<<WGM21)|(1<<COM20)|(X) ;пример для Timer2 и ноги PD7
OCR2=Y
Что это WGM21?????
COM20 ?????
Компилятор ругается.... Использую CVAVR;
Спасибо!!!
-
John-RADIST
- Открыл глаза
- Сообщения: 44
- Зарегистрирован: Чт дек 15, 2011 19:04:24
Re: Мелкие вопросы по МК и ПЛИС.
ploop по поводу фьюза CKOUT, там же на выводе на сколько я понимаю будет гармонический сигнал, а нужен-то меандр.
Re: Мелкие вопросы по МК и ПЛИС.
Не понял? Какой такой гармонический сигнал? Симфония Бетховена что-ли?
Там будет обычный меандр с тактовой частотой.
Там будет обычный меандр с тактовой частотой.
-
John-RADIST
- Открыл глаза
- Сообщения: 44
- Зарегистрирован: Чт дек 15, 2011 19:04:24
Re: Мелкие вопросы по МК и ПЛИС.
А пардон, я что-про другое подумал, а это же идея.... Просто мне еще во втором такте (это в устройстве разарабатываемом), нужен однополярный с большей длительностью, как здесь лучше быть???
Спасибо!!!!
Спасибо!!!!
-
John-RADIST
- Открыл глаза
- Сообщения: 44
- Зарегистрирован: Чт дек 15, 2011 19:04:24
Re: Мелкие вопросы по МК и ПЛИС.
Можно конечно програмно-аппаратно сделать одной полярности и использованием той же ADG413, но боюсь без задержки по фронту не обойтьсь.