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

Отправить Данные На Stm32F4


Гость Дмитрий

Рекомендуемые сообщения

Здравствуйте, необходимо написать интерфейсную программу. программа должна уметь отправлять на виртуальный com порт данные которые МК будет выставлять на ЦАП и таким образом получится генератор сигналов любой формы, вопрос в том как можно реализовать такую программу, т.е. я сначала думал записать коды в файл .txt но тогда на порт будут отправляться коды записанных символов в лучшем случае, можно ли как то напрямую а не через файл их отправлять? проблема в том что надо около 30 000 отсчетов отправить из которых будет стоиться сигнал.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов 53
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Hongfa для различных применений в Компэл. Большой выбор в наличии!

Компания HONGFA - это не только крупнейший в мире производитель электромеханических реле, но также производитель конденсаторов, вакуумных прерывателей, трансформаторов и низковольтного коммутационного оборудования. На складе КОМПЭЛ регулярно поддерживаются около 100 самых популярных позиций электромеханических реле. Реле Hongfa могут заместить многие изделия производства недоступных брендов. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

можно ли как то напрямую а не через файл их отправлять? проблема в том что надо около 30 000 отсчетов отправить из которых будет стоиться сигнал.

Можно подробнее? 30 Килоотсчетов напрямую с компьютера? А откуда они возмуться, руками вводятся и по мере ввода должны отправляться? Жажду подробностей. :yes:

Ссылка на комментарий
Поделиться на другие сайты

Тренды и лучшие решения для разработки зарядных станций в России

К 2029 году в России прогнозируется увеличение числа зарядных станций до 40 000. При этом отечественный рынок электротранспорта имеет климатические, потребительские и географические особенности. Для успешной разработки и построения инфраструктуры станций заряда в России идеальным вариантом является использование решений и электронных компонентов китайских производителей – лидеров индустрии электротранспорта и возобновляемой энергетики, которые уже представлены в КОМПЭЛ. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

по ту сторону порта стоит FT232 которая принимает данные и по UART отправляет их на МК, интерфейсная программа на мой взгляд должна сначала по определенному закону сгенерить отсчеты в виде байт, для этого надо разобраться с работой ЦАПа который их будет в конечном итоге преобразовывать в напряжение, итак мы разобрались как работает ЦАП и теперь садимся за С#, дальше я думаю надо по формуле с заданными параметрами сгенерить коды чисел, соответствующие тем, которые мы хотим отправить на FT232 после которой они через МК в конечном итоге попадут на ЦАП, и дальше надо эти коды преобразовать в их символы или как правильно не знаю точно пока, короче дело в том что число оно имеет представление в виде машинного кода и чтобы на МК пришло то что нам надо там по моему в С# есть команда "int16" которая их преобразовывает и потом эти отсчеты записываются в файл и отправляются из него на МК через FT232. Жду коректировок в плане моей задумки, как лучше всего это реализовать, хочется попроще и чтобы работало. Смысл в том что препод дал тех задание и его надо исполнить таким образом чтобы с компа можно было задать любой сигнал, кусок которого попав на МК зациклится им и будет генериться пока не выключим прибор или не пришлем другие данные, прибор обязательно после получения данных должен уметь работать без соединения с компом.

Ссылка на комментарий
Поделиться на другие сайты

Секреты депассивации литиевых батареек FANSO EVE Energy

Самыми лучшими параметрами по энергоемкости, сроку хранения, температурному диапазону и номинальному напряжению обладают батарейки литий-тионилхлоридной электрохимической системы. Но при длительном хранении происходит процесс пассивации. Разберем в чем плюсы и минусы, как можно ее избежать или уменьшить последствия и как проводить депассивацию батареек на примере продукции и рекомендаций компании FANSO EVE Energy. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Запудрили вы мозг с этой FT232. Так бы и сказали: "надо отправить через СОМ порт данные из файла, но сложность в том, что отправляются ASCII коды символов, записанных в файл"

Ну и создайте файл в HEX редакторе, коих валом в нете, а его передавайте по-байтно.

Ссылка на комментарий
Поделиться на другие сайты

Генерируете массив данных с формой нужного сигнала, затем этом массив передаете в память МК, далее по таймеру записываем поочередно данные из массива в регистр ЦАП. Чем меньше будет время таймера, тем выше будет частота сигнала.

Можете даже на C# написать эмулятор который будет рисовать график из данных в массиве и посмотрите чего вы там нагенерируете :crazy: .

Хотя с "там по моему в С# есть команда "int16" " - это будет сделать тяжело...

Изменено пользователем TDSS

Иван Сусанин - первый полупроводник

Ссылка на комментарий
Поделиться на другие сайты

Вот, набросал софтинку, поможет при тестировании девайса на МК. Может еще для чего...

Терминал-конвертер-редактор HEX.rar

Изменено пользователем КЭС
Ссылка на комментарий
Поделиться на другие сайты

с заданными параметрами сгенерить коды чисел, соответствующие тем, которые мы хотим отправить на FT232 после которой они через МК в конечном итоге попадут на ЦАП,

Только что сделал, еще горячее :yes:SoundMaker.rar

ПС Обновил вложение. Добавил аппроксимацию отсчетов для улучшения наглядности.

ППС Еще раз обновил. Обнаружил ошибку, исправил.

Изменено пользователем КЭС
Ссылка на комментарий
Поделиться на другие сайты

Спасибо, что помогаете, без вашей помощи мне было бы сложнее, я на самом деле очень слаб в программировании, наверное поэтому научник и дал такое задание.

SoundMaker очень хорошая программа, на мой взгляд, подскажите как ее можно адаптировать к построению хотя бы одного периода сигнала любой формы?

Ссылка на комментарий
Поделиться на другие сайты

SoundMaker .... как ее можно адаптировать к построению хотя бы одного периода сигнала любой формы?

Адаптировать ничего не нужно-она для этого и сделана!

Опишу вкратце. Имеется окно, разделенное на 100 отсчетов по оси Х-это время, и 256 по Y-это уровень в 8-ми битном представлении.

Использовать можно не все 100, а произвольно выбранные отрезки от 2-х до 100 отсчетов (выпадающие списки слева вверху).

Дальше задаем дискретизацию. Здесь я не стал ограничиваться стандартными значениями, а оставил право выбора пользователю, с одним замечанием: если при введенном значении дискретизации и выбранном кол-ве осчетов нарушается принцип теоремы Котельникова, значения автоматом меняются на "заводские".

В поле "количество повторов" выбираем, сколько циклов крутить при воспроизведении по нажатию кнопки "Прослушать" и при создании WAV файла. Время звучания рассчитывается и отображается в виде "t=... мс". Здесь надо быть внимательным: на время проигрывания программа "зависает", поэтому больших значений лучше не допускать или, если надо создать WAV достаточно длинный, сначала прослушать с меньшим значением повторов, а потом поставить необходимое количество и сохранить в WAV-файл, выбрав соответствующий пункт после нажатия "Сохранить как...".

Кнопка "Sin" формирует синусоиды (с каждым нажатием число периодов удваивается). Это было сделано для удобства проверки, да так и оставлено.

При выборе сохранения в текстовый файл сохраняются данные, выделенные зеленым, т.е. выбранный диапазон отсчетов, в виде HEX данных по 16 байт в строке, разделенных пробелами. Открыв этот файл программой из поста #11 (при установленной "галке" HEX<--->ASCII" и введенном пробеле в поле "разделитель"), эти байты можно отправить в СОМ-порт.

Сохранить свои творения можно, выбрав расширение "*.fsm".

Изучайте, пробуйте, творите. Успехов!

Ссылка на комментарий
Поделиться на другие сайты

Ехе-шник нет смысла смотреть, разве что дизассемблером. Программа написана на PureBasic 5.11. Исходники я не раздаю, уж извините, да и зачем он вам? Принципы оцифровки аналогового сигнала широко известны.

ПС Пост 14 закрылся для редактирования, поэтому заменить вложение не могу, оставлю последнее изменение здесь (там одно вылечил, другое сломал :)) SoundMaker.rar

Изменено пользователем КЭС
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

В своем устройстве я использую ЦАП AD9762ARUZ и в данных которые я буду отправлять с компа я должен учитывать принцип работы ЦАПа, т.е. ЦАП должен понять код который я отправляю ему он принимает данные от 0 до 4095 в десятичном виде, и в даташите приводятся формулы по которым вычисляются значения выходного напряжения. в даташите описано на 11 и 12 страницах, я перевел в гугле и если честно плохо понял, буду благодарен если кто нибудь сможет помочь разобраться в этом... т.к. для меня это немного сверх задача, и сроки сильно жмут. мне непонятно вот что, вот с помощью HEX конвертера я отправлю данные на МК, в UART регистре эти данные запишутся, далее МК берет эти данные и выставляет их на порт ЦАП, вопрос что пойдет на ЦАП, я не могу это понять. понять это хочу, чтобы разобраться правильно ли будет работать устройство... Может это и глупо, но сам не догоняю... надеюсь вопрос поставил верно...

AD9762.pdf

Ссылка на комментарий
Поделиться на другие сайты

ЦАП 12-ти разрядный, значит один отсчет должен передаваться за два байта (вернее полтора, но UARTпередает целыми байтами). Вам предстоит "научить" МК принимать байты парами. Способов можно массу придумать: пауза между посылками, байт(ы)-разделители и т.п.

Ссылка на комментарий
Поделиться на другие сайты

Ссылку на что? Я вам практически решение готовое говорю. Отправляете инфу в МК, МК выставляет её на своих выходах, по тактовому импульсу, полученному от МК, ЦАП выставит уровень относительно опоры Vref.

Ссылка на комментарий
Поделиться на другие сайты

может я туплю, но теперь я понял, номер отсчета нам передавать не нужно, т.к. отсчеты будут идти один за другим последовательно, а содержать отсчет будет в себе число. которое будет характеризовать амплитуду.... ночь проведенная перед компилятором и книгами пошла на пользу... спасибо, работаю дальше....

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Здравствуйте, а можно совет? тут такое дело, мне надо все отсчеты загнать в МК чтобы я мог отключить устройство от ПК и оно работало ... у меня 30000 отсчетов, как мне лучше сделать, чтобы реализовать это?? в регистр UART наверно не влезет все, надо в память мк записывать?

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • Неверный ход мыслей. Резонатором внутренний объём становится начиная не от входного сечения,а от того места, которое ты обозначил стрелкой, являющегося по сути некоторой разновидностью компрессионной камеры, в которой как раз и формируется пучок звуковых волн, направленных в сторону входного сечения, а на самом деле выходного отверстия, порта свёрнутого рупора, резонансное усиление которых, как у простого открытого рупора формируется по всей длине конструкции вплоть до самого выходного сечения.
    • Название микры написано в заголовке. 8051 - совместимый универсальный МК.  На этом наши полномочия - всё.
    • @Boris U, у тебя что ли такие же "колонки" на 10ГДГДШ-1-4? При Qts 0,8 и выше ФИ подобным динамикам противопоказан. Банально потому, что рано или поздно от их ППУ-подвесов останутся одни лохмотья и дыры. Не зря же их на заводе ставили в различной формы ЗЯ.  В середине 80-ых я пытался повторить проект акустической системы высокой верности А. Голунчикова. Полгода с упорством носорога пыхтел над динамиками и собирал одну, а потом как только не пытался настроить её, так чтобы, как описано в статье журнала Радио'10, 83г, чтобы работал а "в полку" не смог добиться желаемого результата. И только когда измерил АЧХ тех своих 10ГД-36К и прикинул какова их добротность, понял, что все мои попытки тщетны, и почти готовый корпус пошёл на дрова, а для 10ГД36К вылепил из папье маше пару шаров объёмом около 8 литров. Для тех динамиков такое решение было оптимальным. 
    • Не буду спорить. Для меня это скорее "дело тёмное и непонятное". Вот до сих пор для меня загадка, считать ли внутренний объём этого резонатора частью внутреннего объёма колонки? Ведь начиная со своего входного сечения он же уже резонатор. Если это четвертьволновый разомкнутый на конце резонатор, то по определению его входное сопротивление на резонансной частоте близко к нулю (КЗ), и значит для динамика никак не может являться объёмом (нагрузкой)... А вот в таких конструкциях мучаюсь вопросом, как считать вот этот объём и его форму. Почему это - не резонатор, если у него, причём на довольно высокой частоте, есть прилично выраженный резонанс? Так что просто читаю с интересом и иногда задаю глупые вопросы.
    • Лучше поздно, чем некогда. Нашел время отыскать схемку аткель можно взять ограничение тока с синхрона. Сам же преобразователь будет представлять собой две синхронные понижайки на драйверах 2104, 2184 работающие в противофазе от двухтактного контроллера. Меньше пульсации с двух дросселей и четырех транзисторов от материнок, они лучше под синхрон заточены в плане быстроты бодидиодов.  Проще 494. На один операционник подать ОСН с выхода, на второй с интегратора измеряющего через диоды напряжение открытого нижнего ключа. На словах для понимания описание принципа в несколько измененном варианте. При открывании ключа управляющее напряжение на его затвор через резистор заряжает конденсатор интегратора, а через диод со стока разряжает пропорционально току через ключ с поправкой на его температуру. Через второй диод и резистор во втором такте. Напряжение с интегратора сравниваем с предустановкой тока. Вообщем кто захочет разберется. Практически вся инфа есть в теме по ссылке и ссылках в ней. Удачи!  
    • Если не знаешь так бы и сказал, зачем попросту тратить время
    • Представьте себе: есть на свете люди, которые не таскают с собой по квартире смартфон, даже в сортир. А некоторые вообще его не имеют. Но картошку варить надо. Ну а кто имеет, уж наверняка и так знает о базовом наборе приложений. Тут смысл-то не столько в результате, сколько в процессе. И утилизации старого электронного хлама, который выкинуть жалко.
×
×
  • Создать...