Yura_4ixpaR Опубликовано 24 апреля, 2014 Поделиться Опубликовано 24 апреля, 2014 Доброго времени суток. Помогите разобраться с ЦАП на STM32. Выглядит проект так: к МК STM32 подключен LCD экран, матричная клавиатура 4х3 и аналоговый выход под динамик. Суть - вводится с помощью клавиатуры какой-то набор из 6 цифр на клавиатуре (они же выводятся на экран для наглядности), когда цифры введены - идет генерация шума, что выводится на динамики. Пример, необходимо вывести случайный бит на ЦАП от хеша тех цифр, что мы ввели на клавиатуре. Так я записываю эти цифры в переменную "Pass", подключаю криптографическую библиотеку, беру от переменной хеш и записываю случайный его бит во вторую переменную "retval", подключаю таймер "TIM6" и включаю ЦАП "DAC->CR |= DAC_CR_EN1", пишу такую команду "DAC->DHR12L1 = retval;" чтоб отправить эту переменную на левый канал ЦАП, но на выходе - тишина. Ссылка на проект на dropbox - https://www.dropbox.com/sh/c6mrkjpv2lb5yns/n5hsPQgNNO (проект в Keil - Projects\Current\MDK-ARM\STM32L-Discovery.uvproj) Подскажите, что я не досмотрел, как это исправить и как можно улучшить данный проект. Спасибо. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
swat24 Опубликовано 24 апреля, 2014 Поделиться Опубликовано 24 апреля, 2014 После введения переменной и получения хеша, Вы через определенный промежуток времени берете определенный бит и записываете его в ЦАП? Если да, то если бит установлен надо записывать в регистр ЦАПа хотя бы 2048 (если цап 12 битный). Иначе у Вас будет какие то миливольты на выходе. И то не факт что вообще что то будет. Шум Вы точно не услышите.... и какого типа у Вас переменная "retval" ? битовая? как тогда отреагирует компилятор на попытку записать в регистр ЦАПа битовую переменную? Смотрели в отладчике, что записывается в регистр? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Yura_4ixpaR Опубликовано 24 апреля, 2014 Автор Поделиться Опубликовано 24 апреля, 2014 retval - int32_t, посмотреть в дебагере не могу, он отключается когда доходит до цикла, ввода с клавиатуры. Ввод происходит не по прерываниям. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Вуйко Опубликовано 24 апреля, 2014 Поделиться Опубликовано 24 апреля, 2014 (изменено) После записи данных в регистр ЦАП нужно еще дать ему команду установки этих данных. Для F100 серии это выглядит так: DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE); Либо устанвкой битов SWTRIG1/SWTRIG2 в DAC_SWTRIGR регистре. Какой вид будет иметь данная команда для L100 посмотрите в периферийной библиотеке либо в даташите. Изменено 24 апреля, 2014 пользователем Вуйко 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Yura_4ixpaR Опубликовано 24 апреля, 2014 Автор Поделиться Опубликовано 24 апреля, 2014 Спасибо, DAC->SWTRIGR |= DAC_SWTRIGR_SWTRIG1; помогла, но выводится синус, и я не вижу в нем никакой случайности =/ Но это уже другая проблема. Спасибо. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.