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

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

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

Сообщение МитяРа »

Ничегонеработает писал(а):Лучше, конечно, формировать аппаратно, но для этого минимум AT90PWM3 нужен.
На входных частотах 50 Гц можно и программно сделать..
Хотя, если есть PCA, то лучше на них..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
kreygen
Родился
Сообщения: 18
Зарегистрирован: Ср сен 07, 2011 20:21:10

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

Сообщение kreygen »

Здравствуйте, опять хочу поинтересоваться о протеусе. Насколько точно он моделирует скорость процессора? Есть дисплей, есть МК, есть код(взятый из инета и модифицированный под скорость), но экран заполняется всё равно медленно. На реальном мк скорость отрисовки будет такой же?
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

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

Сообщение Engineer_Keen »

kreygen писал(а):Здравствуйте, опять хочу поинтересоваться о протеусе. Насколько точно он моделирует скорость процессора?

Точность достаточная.
kreygen писал(а):экран заполняется всё равно медленно. На реальном мк скорость отрисовки будет такой же?

У вас симуляция скорее всего не в реальном времени. Для тяжелых схем (индикаторы, контроллеры с высокими тактовыми частотами, много аналоговых элементов) обычно не хватает производительности, и об этом будет сказано в окне сообщений.
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

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

Сообщение Chip115 »

Chip115 писал(а):Всем привет! Не подскажете где найти описание CANopen на русском? описание CAN нашел... это ведь не одно и то же ?

ни кто не шарит?
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
Аватара пользователя
DiGiCat
Друг Кота
Сообщения: 4793
Зарегистрирован: Пт июл 11, 2008 09:42:35
Откуда: Made in USSR

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

Сообщение DiGiCat »

Не всем надо... В гугл и читай по сусекам... :)

CANopen DS.301 на русском...

тут, тут...
scio me nihil scire...
_______________________

Изображение <= Жалобная кнопка в правом нижнем углу... )
SII
Вымогатель припоя
Сообщения: 635
Зарегистрирован: Пт янв 30, 2009 14:50:35
Откуда: Солнечногорск

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

Сообщение SII »

Errorkpi писал(а):Не подскажите мс для конвертации уровней 5 в 3,3В. Желательно двунаправленную.


Подсказать не подскажу (искать лениво), но предостерегу: не злоупотребляйте двунаправленными преобразователями, самостоятельно выбирающими направление передачи. Партнёры нашей конторы из Америки влепили у себя в умном приборе такую -- и спалили нафиг выход АЦП, поскольку схема почему-то не отработала должным образом. Заменили на обычные -- и всё заработало. Правда, насколько знаю, они не пытались детально разбираться в причинах плохого поведения преобразователя (ну а я лично их никогда не использовал, а соответственно, и проблем не имел), но всё ж...
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

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

Сообщение Meteor »

SN74LVC4245APWR управляемый дунаправленный преобразователь
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
thunder87l
Встал на лапы
Сообщения: 138
Зарегистрирован: Вт дек 30, 2008 22:54:36

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

Сообщение thunder87l »

Наткнулся сегодня на хороший топик про оптимизацию VHDL кода для синтеза. В частности порадовал совет по обрезанию размера переменных. В связи с этим возникла пара вопросов:

1) Если задеклароровать:

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

variable COUNTER: integer range 0 to 3;

будет ли работать переполнение? Если COUNTER=3 и COUNTER:=COUNTER+1; он сбросится на ноль?

2) Если декларировать максимальное значение не степенью двойки, а каким-нибудь другим числом, например:

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

variable COUNTER: integer range 0 to 9;

Так будет работать или выкинет ошибку? И если переполнение работает, то 0-1 ,будет равно 9?

3) И то-же самое с функциями. Если функция ждёт 0 to 11, а в неё подать -2, поймёт ли функция это 10?
Если вдруг это всё допустимо для симуляции, можно ли такое синтезировать?

И ещё пара вопросов не связаных с переполнениями. Есть например два таких куска кода.

а)

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

A:=f(x,y);
B:=f(x+1,y+1);
C<=A+B;


б)

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

C<=f(x,y)+f(x+1,y+1);


4) После синтеза первый будет выполняться шаг за шагом, а второй - всё сразу? Если f() у меня LUT, будет ли в первом случае синтезироваться одна таблица, из которой будут добываться нужные значения, в во втором - две сразу?

5) И последний вопрос - как добыть бинарное значение integer'a. Есть ли какая стандартная функция позволяющая обращаться к интегеру, как к std_logic_vector - вытаскивать и запихивать биты?
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

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

Сообщение Meteor »

thunder87l,
1) сбросится т.к. при объявлении определяется разрядность.
2) не сбросится при значениях больше 9 и до значения 15
3) Для записи знаковых лучше использовать signed
4) Не понял
5) Счетчики объявляю так

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

Variable CNT:unsigned(7 downto 0):"00000000";
....
cnt:=cnt+1;
Buss<=Std_logic_vector(CNT);
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
thunder87l
Встал на лапы
Сообщения: 138
Зарегистрирован: Вт дек 30, 2008 22:54:36

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

Сообщение thunder87l »

Meteor писал(а):4) Не понял


Да, я наверно паршиво объяснил. Допустим у меня есть функция:

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

   function dat(B: std_logic; V: std_logic; N: integer; C: integer) return integer is
   type data_table is array (0 to 3, 1 to 5) of integer;
   constant DT: data_table := (   (17, 21, 23, 21, 17),
               (11,  5,  0, -3, -4),
               (-4, -2,  0,  1,  2),
               ( 2,  1,  0, -1, -1));
   begin
      if (V='0') then
         return 0;
      else
         if (N<0) then --must add negatives
            if (B='1') then
            return DT(-N,6-C);
            else
            return -DT(-N,6-C);
            end if;
         else
            if (B='1') then
            return DT(N,C);
            else
            return -DT(N,C);
            end if;
         end if;
      end if;
   end dat;


Если я вызову эту функцию в своём коде, при синтезе эта хрень займёт кусок места на чипе. Массив DT описывает raised-cosine волну, а мне нужна на выходе их сумма, примерно в таком виде:

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

OIv<=i_to_v(31 + dat(Iv(rot(M-3)),Vv(rot(M-3)),-3,C) + dat(Iv(rot(M-2)),Vv(rot(M-2)),-2,C) + dat(Iv(rot(M-1)),Vv(rot(M-1)),-1,C) + dat(Iv(rot(M)),Vv(rot(M)),0,C) + dat(Iv(rot(M+1)),Vv(rot(M+1)),1,C) + dat(Iv(rot(M+2)),Vv(rot(M+2)),2,C) + dat(Iv(rot(M+3)),Vv(rot(M+3)),3,C));


Я тут немного нахимичил, и подозреваю что если это и возможно синтезировать, то оно сожрёт весь чип, если на каждый вызов функции будет синтезироваться отдельный кусок логики. Вот я и думаю как уменьшить размер этого чуда. Можно было бы запихать в цикл - тогда по идее функция синтезируется один раз.
Chettuser

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

Сообщение Chettuser »

Кто-нибудь пользовался новым MPLAB X IDE?
Какое мнение? Сильно ли тормозит?
Как он относится к установленным компиляторам? Или ему нужны свои версии специально под него?
Стоит ли его вообще качать?
Спасибо.
kreygen
Родился
Сообщения: 18
Зарегистрирован: Ср сен 07, 2011 20:21:10

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

Сообщение kreygen »

Здравствуйте
Скажите пожалуйста, а внешний SRAM в AVR микроконтроллерах устанавливается только в МК серии ATMEGA128, или, например, на ATMEGA48PA тоже можно установить?
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Установить можно в любой, организовав соответствующий протокол.
Docendo discimus
kreygen
Родился
Сообщения: 18
Зарегистрирован: Ср сен 07, 2011 20:21:10

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

Сообщение kreygen »

А можно ссылочку на статейку по этому поводу?
И насколько это медленнее будет работать, относительно внутреннего SRAM?
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Статейку не скажу, см. даташит на нужную SRAM. А насколько медленнее зависит от кривости/верности написания протокола.
Docendo discimus
kreygen
Родился
Сообщения: 18
Зарегистрирован: Ср сен 07, 2011 20:21:10

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

Сообщение kreygen »

Спасибо большое, буду изучать.

Ещё вопрос, то есть в зависимости от протокола к 8-битному процессору можно подключить и больше 64к памяти?
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

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

Сообщение pyzhman »

Да хоть терабайт. А чем не угодила та же 128-ая с ее кБайтами на борту? Только не говорите - надо.
Docendo discimus
Chettuser

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

Сообщение Chettuser »

Почему если не включать TMR0 в PIC'ах не работают TMR1 и TMR2?
Так специально задумано? :dont_know:
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

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

Сообщение Jack_A »

pyzh_man писал(а):Установить можно в любой, организовав соответствующий протокол.

Только если взять что-нибудь вроде Atmega8515, то там доступ к внешней памяти поддерживается аппаратно, а в других нужно мудрить с самопальным протоколом, и по скорости будет медленнее.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Chettuser писал(а):Почему если не включать TMR0 в PIC'ах не работают TMR1 и TMR2?
Так специально задумано? :dont_know:

У меня они работают независимо друг от друга... Проверьте инициализацию.
Ответить

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