|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
||||||
ЦАП R-2R. Генерация треугольника17.03.2014, 21:04. Показов 5386. Ответов 40
Метки нет (Все метки)
Добрый день.
Собрал из резисторов 5 разрядный ЦАП к ATmega8, среда AVR Studio 6. Вывожу треугольник следующим кодом
Решение проблемы какое? Написание кода на ассемблере? Заранее спасибо за ответы.
0
|
||||||
| 17.03.2014, 21:04 | |
|
Ответы с готовыми решениями:
40
генерация синусоидального сигнала через ЦАП STM32F407VG Даны длины a,b и с сторон некоторого треугольника. Найти медианы треугольника, сторонами которого являются медианы исходного треугольника Даны длины a,b и с сторон некоторого треугольника. Найти медианы треугольника, сторонами которого являются медианы исходного треугольника. |
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 24.03.2014, 16:20 | ||
|
...не знаю, в тему ли... у АВРок на tiny85 и tiny26 есть ШИМы на высокой частоте 64МГц. Это удобно, учитывая условно не такую высокую частоту самого процессора. В таком случае можно обойтись и без внешнего ЦАПа, и добиться сравнительно высокой производительности.
ЗЫ: а ввобще, я тоже за ЦАП+ SPI + DMA. Добавлено через 5 минут да, и еще двухполярный выход можно получить разделительным кондером. В большинстве случаев этого хватает. . В ДШ написано "DAC 1MS/s, Guaranteed by characterization, not tested in production."
0
|
||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 16:24 [ТС] | |
|
Сразу хочу сказать, что это генератор сигналов делаю как обучающий проект + планирую использовать при изучении работы разных электронных схем, в том числе полупроводниковых (опять же обучение), а денег на реальный генератор не хватило, только на осциллограф наскреб.. Какая вообще максимальная частота может понадобиться для таких целей?
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 24.03.2014, 16:49 | |
|
georgfour, я бы сделал такой проект на DDS + контроллер с PLL (тот же STM32).
0
|
|
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 16:57 [ТС] | |
|
Понятно, а где можно найти исчерпывающую информацию по DDS генераторам?
Заранее спасибо
0
|
|
|
|
|
| 24.03.2014, 17:06 | |
|
Достаточно DDS и контроля с верхнего уровня по USB.
https://www.cyberforum.ru/post4466189.html Генератор синуса с цифровым управлением https://www.cyberforum.ru/micr... 38707.html Генератор произвольных частот на МК https://www.cyberforum.ru/post5892305.html
0
|
|
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
||||||
| 24.03.2014, 19:22 [ТС] | ||||||
|
Написал тут код для генерации синуса 5 разрядным цапом, получилось конечно ступенчато, однако максимальная частота поднялась до 16Мгц. Но тут появилась странная проблема
:
В чем может быть проблема? Добавлено через 8 минут Килогерц конечно, опечатался =)
0
|
||||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||||||||||||
| 24.03.2014, 19:30 | ||||||||||||
|
набиваешь несколько таблиц и меняешь просто индекс вот например твой треугольник и меандр (размерность лучше взять 256 и счетчик unsigned char)
примерно так
пока писал тут уже и решение подоспело ![]() вопрос какую максимальную частоту нужно получить и какой ЦАП?
0
|
||||||||||||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 19:38 [ТС] | |
|
ЦАП AD7302BNZ, параллельный.
Частота - какую смогу, как я уже выше написал, нужен для обучения электронике, то бишь для анализа схем, желательно конечно как мне кажется хотя бы до 20кГц дотянуть, но не получается
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||
| 24.03.2014, 19:48 | |||
|
на него просто уровни подаются или есть и управляющие сигналы? дай даташит но быстродействия ЦАП хватит?
0
|
|||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 19:53 [ТС] | |
|
Управляющие сигналы есть, вот даташит
Я пока только с AVR работаю, у меня нет ни средств отладки, ни знаний для ARM. Еще есть проблема у у меня из поста выше, повторюсь: Если записать в регистр OCR1A не 0b00000001, а 0b00000010, то синус перестает генерироваться. Спасибо за помощь.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||||
| 24.03.2014, 20:02 | ||||
|
частота Атмеги 16 мгц частота сигнала 20 кГц
16000/20 = 800 32 выборки 800/32=25 задержка таймера пределитель 1 теоретически должно хватить но только табличный метод (никаких расчетов) и одна кнопка Добавлено через 6 минут Добавлено через 1 минуту
0
|
||||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 20:04 [ТС] | |
|
Нет, это сначала была восьмерка, но потом 32 поставил.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|
| 24.03.2014, 20:10 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 24.03.2014, 20:13 [ТС] | |
|
Atmega32
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||
| 24.03.2014, 20:16 | ||
|
никогда не работал с такими камнями, а без практики трудно давать какие либо советы
0
|
||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 25.03.2014, 19:25 [ТС] | |
|
Кто-нибудь может помочь с этой проблемой?
Причем синус не выводится даже если менять значения в верхнем байте регистра.
0
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
|
| 25.03.2014, 23:11 | |
|
georgfour, отсутствие полного кода, полное отсутствие комментариев в коде, ничего не значащие какие-то выставленные битиках в регистрах настройки. Как вам помогать? Берите ДШ и вычитывайте. Иначе дополните ваш код недостающими элементами.
0
|
|
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
||||||
| 26.03.2014, 00:03 [ТС] | ||||||
0
|
||||||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||||||||||||||||
| 26.03.2014, 01:27 | ||||||||||||||||
|
В коде я не нашел очевидных причин, почему не работает счетчик при изменении значения регистров, но проверить нужно два момента:
а) Если вы таки хотите оставить работу счетчика в обычном режиме, тогда нужно посмотреть стр.89 ДШ и исправить обращение к 16-битным регистрам счетчика. Это особенно актуально на его высоких частотах, без предделителя. б) Все-таки будет правильнее перевести счетчик в режим CTC top OCR1A (выставив TCCR1B=0x09). Единственное, я точно не помню уже, в этом случае надо обрабатывать прерывание по переполнению (соотв. изменения в TIMSK и таблице прерываний), а не по сравнению с OCR1A. Но тогда сброс счетчика в прерывании делать не нужно, и работать будет правильнее и еще быстрее. Добавлено через 17 минут упс... сам не досмотрелся . Со сбросом счетчика у вас все ОК.Добавлено через 3 минуты ...структуру
... и счетчики в регистрах в АСМе (как у вас counter) быстрее будут работать, если считать в обратном порядке. То есть сначала ldi counter, 32 а потом в прерывании
1
|
||||||||||||||||
|
1 / 1 / 0
Регистрация: 10.03.2013
Сообщений: 404
|
|
| 27.03.2014, 16:24 [ТС] | |
|
Спасибо, буду пробовать!
0
|
|
| 27.03.2014, 16:24 | |
|
Даны длины сторон треугольника a, b, c. Найти медианы треугольника, сторонами которого являются медианы исходного треугольника
Внешний ЦАП Делаю ЦАП ЦАП STM32 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|