0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
1 | |
Формирование сигнала R2R23.04.2012, 17:57. Показов 11847. Ответов 30
Метки нет (Все метки)
Здравствуйте. Разбираюсь с принципом формирования сигнала R2R. Прочитал статью про цап и не разобрался как же сформировать нужную мне форму сигнала. Например, использую восемь ног, по очереди включаю каждую из ног, затем по очереди их отключаю, между каждым вкл/откл задержка в 1мс. Ожидаю увидеть треугольник, но получается совсем не то. Помогите разобраться.
http://**************************/download/file.php?id=10186&sid=6267f63ca974ca7529add056c4071d76
0
|
23.04.2012, 17:57 | |
Ответы с готовыми решениями:
30
Формирование сигнала виде пачек радиоимпульса R2R матрица Выбор R2R ОУ R2R ЦАП. |
4 / 4 / 0
Регистрация: 12.03.2013
Сообщений: 24
|
|
23.04.2012, 18:24 | 2 |
Сообщение от motot
вы увидите тоже самое, что и в протеусе). по правильному нужно выводить числа 0..255 а потом 255..0
0
|
0 / 0 / 1
Регистрация: 27.01.2010
Сообщений: 3,435
|
|
23.04.2012, 18:58 | 3 |
Нужно не поочереди включать ноги, а наращивать само число, которое получается из этих разрядов.
То есть для треугольника нужна такая последовательность: 00000000 - 0 00000001 - 1 00000010 - 2 00000011 - 3 00000100 - 4 .... А у тебя получается, судя по всему, так: 00000000 - 0 00000001 - 1 00000011 - 3 00000111 - 7 00001111 - 15 то есть выходит парабола y=x^2-1
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
23.04.2012, 19:36 | 4 |
Сообщение от buy
вы увидите тоже самое, что и в протеусе). по правильному нужно выводить числа 0..255 а потом 255..0 начало доходить, объясните как посчитать эти числа. в смысле треугольник я примерно понял, а вот если синус нужно?
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
23.04.2012, 20:13 | 5 |
нашел в гугле такую формулу
cosTable[i] := 32 + 32 * cos (i * 2*PI/256) вроде эксель нарисовал косинус
0
|
0 / 0 / 0
Регистрация: 30.06.2011
Сообщений: 45
|
|
24.04.2012, 02:56 | 6 |
Обычно лучше эти числа просчитать заранее и прописать в исходнике. Потому что микроконтроллеру сложно считать косинусы ))
Так как значение косинуса изменяется в пределах [-1; 1], а ЦАП не может выдать отрицательное напряжение, то нужно ввести смещение, чтоб косинус изменялся от 0 до 2. Это в приведенной формуле и сделано.
0
|
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
|
|
24.04.2012, 10:24 | 7 |
иногда ещё хранят не всю таблицу, а четверть периода
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
24.04.2012, 17:56 | 8 |
еще вопрос: операционный усилитель увеличит напряжение до нужной величины, а вот ток придется усиливать? достаточно ли будет поставить после операционника составной транзистор? хотелось бы на выходе хотя бы 500 мА.
0
|
SWK
|
|
24.04.2012, 20:35 | 9 |
Сообщение от motot
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
25.04.2012, 11:10 | 10 |
Никак не пойму как подобрать ОУ, параметров выходной ток и мощность нигде не пишут(((
0
|
0 / 0 / 0
Регистрация: 19.09.2010
Сообщений: 1,761
|
|
25.04.2012, 11:15 | 11 |
В даташитах пишут.
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
25.04.2012, 11:18 | 12 |
Сообщение от ptoop
0
|
0 / 0 / 0
Регистрация: 19.09.2010
Сообщений: 1,761
|
|
25.04.2012, 11:23 | 13 |
Отечественными не пользовался, это к SWK
По импортным - есть в терре параметрический поиск http://www.terraitistronica.ru/catalog.php?ID=244
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
25.04.2012, 11:27 | 14 |
Сообщение от ptoop
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
25.04.2012, 11:40 | 15 |
Сообщение от ptoop
0
|
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
|
|
25.04.2012, 11:43 | 16 |
по ОУ -вроде, ж. "Радио" №10,12 1990 (дома уточню) там на двух листочках всё расписано по наиболее известным сериям - а больше ничего и не надо
0
|
0 / 0 / 0
Регистрация: 19.09.2010
Сообщений: 1,761
|
|
25.04.2012, 11:49 | 17 |
Просто на терре, скорее всего, ошиблись при вводе параметров. Посмотри другие - там правильно.
0
|
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
|
|
27.04.2012, 10:34 | 18 |
Сообщение от Johmmy0007
ж. "Радио" №10,12 1989 а справочники и другая лит. вот тут: http://myrknig.som/ набираете в поиске "Операционные усилители" и радуетесь
0
|
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 173
|
|
21.05.2012, 11:59 | 19 |
В общем решил сделать генератор в живую, хочу выводить регулируемый синус, больших требований к качеству сигнала не ставлю. Собрал железку, добрался до софта и как то туплю
ЦАПом вывожу на ножки сигнал: PORTB=0x20; PORTB=0x2C; PORTB=0x37; и т.д. всего вывожу 16 значений теперь пробую регулировать частоту PORTB=0x20; delay_ms(x); PORTB=0x2C; delay_ms(x); x - переменная которую я регулирую кнопочками +/- частота, но т.к. тип переменной x - int, то получается слишком дискретная регулировка, delay_us() не удается использовать ибо он компилятор ругается на переменную, т.е. ему нужна константа, тогда я частоту регулировать не смогу. Пробовал задержку делать таким образом: PORTB=0x37; for(a=0; a < x; a++) { } т.е. гонять пустой цикл, стало чуть лучше, частота стала хоть как то регулироваться, но всеравно не то. Хочется +/- 1 Гц регулировать, подскажите как сделать маленькую задержку, которую можно еще и регулировать.
0
|
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
|
|
21.05.2012, 15:18 | 20 |
сделай задержку for(a=0; a < count; a++). Если кнопка "-" нажата - count = count - 1000. Если кнопка "+" нажата - count = count+1000.
вместо числа 1000 высчитай нужное число (исходя из твоей частоты контроллера.
0
|
21.05.2012, 15:18 | |
21.05.2012, 15:18 | |
Помогаю со студенческими работами здесь
20
R2R матрица. как подключить. Формирование сигнала Формирование сигнала Формирование сигнала с t=0 Формирование ЛЧМ сигнала Формирование сигнала QPSK Формирование входного сигнала Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |