Перейти к содержанию
    

ViKo

Модератор
  • Постов

    12 216
  • Зарегистрирован

Весь контент ViKo


  1. Не получаются. Если хотите, подайте на ЦАП с опорным напряжением 1V, на старший разряд. Получите 0 или 0.5V.
  2. Я, когда выбирал, "куды ж христьянину податься", листал книжку по VHDL, русского автора. Не впечатлила, ни качеством полиграфии, ни содержимым. Потом попалась книжка Полякова, где одинаковые конструкции были расписаны параллельно на двух языках. Тоже книга бестолковая. Но позволила мне сделать выбор в пользу Verilog. Verilog уже свое отжил. Дальше будет только SystemVerilog. C++0x
  3. Какой наезд? Я ж про себя говорю. :) Значит, уровней два? Ну и как они получатся делением 1 на 1? :) А вот это пример как раз "правильного" АЦП. У него есть коды от 0000 до FFFF включительно, итого 2^16 уровней. Нет. Делить надо на то, что написано в даташит. Если не написано, делите на 256. Если делить на 255 (ох, как сложно!), ошибка хоть и маленькая, но будет. Такой хоккей нам не нужен!
  4. Я VHDL тоже читаю :) Приходится. На форуме достаточное количество попадается. Плеваться не плююсь, просто, если не нахожу ничего интересного, выхожу из темы.
  5. Я не владею VHDL вообще. Поэтому и Verilog для меня не убожество. Я писал на AHDL. И не жаловался на судьбу. Делал то, что хотел сделать. Попробовав Verilog, почувствовал больший комфорт. SV - еще лучше. Инструмент. ну как "какую"? Что-то вроде STDLIB
  6. Ну, разве что ради увеличения количества своих сообщений... АЦП выдает вам или 0, или 1 (по сути, компаратор). Так сколько уровней мы имеем? И какова цена младшего (он и единственный у нас) разряда?! :crying: Второй АЦП - "правильный". А первый - или так хитро сделан, или ошибка в даташит. Исключение из общего правила.
  7. Это беда не языка, а IDE. ВрЕменная. Я пользуюсь Quartus, и скажу, что тот список конструкций SV, который поддерживается Квартусом, меня более, чем устраивает.
  8. Ну как же на 1? 1V/2 = 0.5V - вот он, шаг АЦП! И уровней у нас 2!
  9. Именно такая градация у него: 0 - 0V...0.5V, 1 - 0.5V...1V. Выберите что-нибудь "по вкусу" :). P.S. Хочу услышать от АНТОХА признания моей правоты.
  10. Намекаю. Откройте исходники на C и SV и сравните. Вот все "продвинутые" ругают графический ввод схемы, и пропагандируют текстовый. Я тоже сторонник последнего. Почему? Потому что проще, компактнее. То же могу сказать и о VHDL vs. SystemVerilog. Вон у SV уже и классы появились, методы. Скоро будет объектно-ориентированным, как C++. Вопрос ведь не "на чем писать", а "что писать". Главное, чтобы мозги работали. А язык - только помощник в реализации ваших идей.
  11. Полкванта - это ошибка смещения. А спор идет об ошибке масштабирования. Нет проблем! Нельзя. Можно сказать только, что напряжение больше 0.5V
  12. Покажите конкретную формулу из даташит.
  13. Предоставляю вам возможность "расширить кругозор". А я АЦП поприменял за свою жизнь достаточное количество. Вот этот, кстати, тоже. Приведите формулу из какого-нибудь даташит, где границы АЦП точно равны 0 - 0V, 11..11 - опорное напряжение. Нет таких АЦП в природе. Связано с самим механизмом аналого-цифрового преобразования, схемой сравнения, последовательным приближением, матрицей компараторов и т.д.
  14. Попробуем еще раз. Имеем 2-разрядный АЦП, выдающий 4 значения: 0, 1, 2, 3. Опорное напряжение у него 1V. Примем, что ступеньки не смещены на 1/2 младшего разряда. Таким образом, получим: 0 - 0V, 1 - 0.25V, 2 - 0.5V, 3 - 0.75V Вес младшего разряда равен 1V/2^N. Обычно именно такой код АЦП и выдает. Не "добирает" до опорного одну ступеньку. Можно сместить на полразряда, но и тогда младший разряд будет иметь вес 2^-N. 0 - 0.125V, 1 - 0.375V, 2 - 0.625V, 3 - 0.875V. Можно и на целый разряд сместить: 0 - 0.25V, 1 - 0.5V, 2 - 0.75V, 3 - 1V. Допускаю, что где-нибудь и такие АЦП имеются. А вот чтобы данному коду соответствовало напряжение: 0 - 0V, 1 - 1/3V, 2 - 2/3V, 3 - 1V таких АЦП я не встречал. А вы?
  15. Ну, может у MSP430 что-нибудь особенное придумано. Разбираться не буду, вам виднее. В общем же случае - как сказал. Ваш АЦП выдает код 0? А код 4095 выдает? Тогда всего ступенек (уровней) 4096. Так "из-за простоты" или "соответствует реальному"? У вас "и тому дала, и тому дала" :)
  16. Ну конечно! :) Есть 0, и есть 1. Сколько всего? Нужно брать включительно Вот массив из двух элементов какие индексы имеет? Правильно, 0 и 1. И АЦП выдает коды 0...255. Итого 256 ступенек.
  17. Как между Pascal и C была война, и победил, как я понимаю, C. Точно так же будет и VHDL vs. SystemVerilog. От алгоритмических, проектных ошибок не спасут ни строгая типизация, ни др., что там есть. А вот то, что на SystemVerilog строк кода получается в 1.5 раза меньше, и что язык SystemVerilog очень похож на C, для меня аргументы весомые.
  18. Ну вы, блин, даете! (с) На сколько частей разделен диапазон [0:255]? На 256. Если не верите, нарисуйте на бумажке в клетку. Вот и делите на 256.
  19. Здесь ошибка не столько, что по срезу и по фронту, а что переменная изменяется в нескольких блоках. Должно быть все в одном.
  20. RealView MDK ARM 4.14

    В свойствах проекта в разделе C/C++ в Misc Controls добавьте --C99 Об этом в хэлпе написано, но кто ж там найдет без бутылки. Я с самого начала озадачился этим вопросом, и всегда писал в стиле C99
  21. А что, если АЦП издох не от помехи при выключении, а оттого, что питания плюсовое и минусовое пропали в разное время? Например, +15V уже совсем съелось, а -15V еще большое.
  22. Прочитать порт. Можно читать периодически, по прерыванию от таймера, например. Сравнивать с прошлым, запомненным. Находить изменение, и так определять кнопку. Можно настроить прерывание по изменению состояния порта, и по этому прерыванию прочитать новое состояние.
  23. Продолжим, отчего ж не продолжить. Хорошо бы в конце концов докопаться до истины. А не забросить на полпути, получив приемлемый результат. upd. Чтобы не создавать ненужных постов, припишу сюда. Georgy, все нормально. Обычный путь поиска истины, извилистый, иногда заводящий в тупики. Нет никаких обид. Это я пошутил не совсем удачно. Тема интересная. Пока что никто точного ответа не дал. Значит, имеет смысл исследовать дальше.
  24. Сколько конденсаторов (в цепях прохождения сигнала, естественно, питательные не считать), такой и порядок. Ферштейн?
×
×
  • Создать...