Jump to content
Стальной

Скоростная запись на SD карту

Recommended Posts

Всем доброго времени суток.

Общая задача такова - надо снимать сигнал (осциллограмму) с полосой до 400 кГц и временем записи 5 минут. Результат должен быть куда-то сохранен, чтобы потом была возможность сбросить цифровые данные на комп. 

Нужен совет по одному (пока) вопросу. Я хочу писать бинарные данные напрямую на SD-карту. Минимальная частота дискретизации 800 кГц. Разрешение АЦП можно взять 8 бит. Как вы думаете, успеет ли флешка скушать данные? 

Шаблон кода создаю кубом с использованием HAL, тестирую на камне 407VET6. При записи планирую использовать буфер, куда загоняю массив данных, чтобы писать не по одной выборке, а сразу пачкой.

ЗЫ Есть еще вариант. Использовать в качестве промежуточной памяти вот такое https://static.chipdip.ru/lib/435/DOC001435109.pdf  , сохранить туда, а потом уже на внешнюю карту. По идее, есть возможность соединить по FSMC. Но для меня это крайний вариант, ибо до этого не пробовал такое.

Edited by Стальной

Share this post


Link to post
Share on other sites
15 часов назад, Стальной сказал:

800 кГц 8 бит ... успеет ли флешка скушать данные?

Успеет. Для этого просто надо выбрать подходящую флешку. Скорость записи указазывается производителем.

Share this post


Link to post
Share on other sites

@Lexter а контроллер сможет на большой скорости работать? Там вроде 24 МГц допустимо, но я пока не успел испытать. 

Тогда вопрос - а как программно определить класс карты? Или контроллер это аппаратно определяет?

Share this post


Link to post
Share on other sites

Литиевые батарейки Fanso для систем телеметрии и дистанционного контроля

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

Подробнее

1 час назад, Стальной сказал:

как программно определить класс карты?

То, что написано на карточке, и даже то, что считывается из её контроллера, не гарантирует её параметры и даже объём. Учитывая большое количество подделок и фальсификата SD-карт на рынке, лучше не возлагать проверку на устройство (это может занять много времени), а сначала хорошенько протестировать карточку вручную. Это можно сделать как средствами ОС, так и специальными программами.

Share this post


Link to post
Share on other sites

@Lexter это понятно. Просто есть аппаратный механизм выбора скорости? Или работать по принципу возникла ошибка - сбросить скорость?

Share this post


Link to post
Share on other sites
                     

Приглашаем на вебинар Решения для построения ультразвуковых счетчиков жидкостей и газов на базе MSP430

Компэл совместно с Texas Instruments 23 октября 2019 приглашают на вебинар, посвященный системам-на-кристалле для построения ультразвуковых расходомеров жидкостей и газов на базе ядра MSP430. Вебинар проводит Йоханн Ципперер – эксперт по ультразвуковым технологиям, непосредственно участвовавший в создании данного решения. На вебинаре компания Texas Instruments представит однокристальное решение, позволяющее создавать точные недорогие счетчики жидкостей и газов.

Подробнее...

SD спецификацию читайте. Вся нужная служебная информация о карте есть в соотвествующих регистрах.

 

Edited by Oxford

Share this post


Link to post
Share on other sites
3 часа назад, Oxford сказал:

служебная информация о карте есть в соотвествующих регистрах.

Вряд ли @Стальной будет писать работу с SD-картой с нуля. А в драйверах или фреймворках это уже реализовано. Разве что стирание перед началом записи добавит, чтобы не было пауз при приёме потока.

Share this post


Link to post
Share on other sites
12 часа назад, Стальной сказал:

а контроллер сможет на большой скорости работать?

У него есть SDIO для этого. Вот только о кубе придется забыть, если нужна высокая скорость работы. И обязательно надо реализовать равномерную запись по всей карте, а не каждый раз с одного и того же адреса. Иначе карта очень быстро умрет.

Edited by BARS_

Share this post


Link to post
Share on other sites

В общем получилось писать, даже с кубом. Данные прерыванием пишутся в буфер 4096 байт длиной. Как только буфер наполняется, происходит его копирование в другой и запись уже последнего на карту.

Share this post


Link to post
Share on other sites
В 22.01.2019 в 11:04, MasterElectric сказал:

Зачем ты тратишь время на копирование?

Извиняюсь, что долго отвечал. Чтобы гарантированно буфер не был перезаписан новыми данными.

 

А проблема возникла при воспроизведении данных с карты ЦАПом. Логика следующая - два буфера снова, основной и вспомогательный. Из основного ДМА кормит ЦАП (триггер - по таймеру), по прерыванию ДМА в основной буфер копируются данные из дополнительного, а дополнительный буфер заполняется новыми данными. При воспроизведении появляются артефакты.

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By svd
      Предлагаю печатные платы для паяльной станции на STM32 и OLED дисплее 1,3" версии 2.1S
      Плата делалась под китайский алюминиевый корпус.
      Тема, где обсуждается данная станция T12 , опубликована на сайте radiokot.ru
      Фото платы


      Схема немного доработана:
      1) добавлены блокировочные конденсаторы 0,1 мкФ в цепях микроконтроллера;
      2) добавлен резистор в цепи буззера для возможности снижения громкости;
      3) есть возможность подключать жала JBC (для Т12 в разъеме паяльника запаивается перемычка)

      Большинство элементов типоразмера 0603. DC/DC преобразователь PSR-7805LF можно заменить на любой китайский аналог или микросхему 7805
      Ссылки на возможные замены:
      DC/DC аналог 7805 №1
      DC/DC аналог 7805 №2

      Во вложениях схема и расположение элементов на ПП, чертеж передней панели и прошивка под дисплей 1.3" с контроллером SH1106.

      Цена за одну плату 400 руб c учетом стоимости пересылки по РФ. Количество плат ограничено.
      По всем вопросам просьба обращаться в личку.
       
      STM32_T12_2.1S_SSH1106_1.3_v2_.pdf передняя панель.pdf T12_HW21S_Encryption-SH1106.zip
    • By ART_ME
      Здравствуйте.
      Рискну спросить: не завалялась ли у кого в хозяйстве для STM32F103xx: 
      - AC induction motor IFOC software library V1.0
      либо 
      - ACIM and PMSM motor control software libraries release 2.0
      ?
      Просьба поделиться если вдруг такой раритет найдется. 
       
    • By Илья Юрченко
      Добрый день, уважаемые форумчане! Для научной работы хотел собрать данные о том, насколько микроконтроллеры stm32 удовлетворяют нужды и требования программистов и разработчиков продуктов на нем. Если не сложно, ответьте, пожалуйста, важны данные)
      Разумеется "очень средне" неадекватная метрика, но в рамках работы нужна именно средняя удовлетворённость, и определение существует ли необходимость в создании другой серии универсальных плат на базе МК.
    • By n_angelo
      Привет. Хочу узнать ваше мнение. Я новичок в embedded. Можно сказать, что пришел с веба. Малость Python, JS, C. Меня, конечно, предупреждали начать с AVR, но я уверенный в себе решил сразу залезть на STM32. Вынашивая идею для проекта, параллельно курив Reference Manual и Data Sheet по STM32, я понял что его будет слишком жирно для проекта. Я перескочил на STM8L. И тут меня начал огорчать мир embedded. При переходе между stm8 и stm32 нужно менять IDE (TrueStudio на STVD). Во избежание таких курьёзов я пересаживаюсь на IAR. В процессе подключения родной библиотеки от ST, понимаю что библиотека от IAR для того же самого STM8L152C6T6 дико отличается (макросы, структуры). Привет веб-разработка. Как такое могло произойти, что под один и тот же контроллер ST даёт одну библиотеку, а IAR другую. И нигде в уроках тебя не предупредят об этом. Ну, ребят, у меня всего одна жизнь. Вы уже договоритесь там между собой? Придите к единому стандарту. Или они так решили новичков завендерлочить? Моё мнение (не претендует на правильное): пробираясь сквозь тернии популярной архитектуры ARM, инфраструктуры, инструментария, забываешь про бизнес-логику устройств. А еще просто пропасть между "я ничего не понимаю" и "господи, я зажег светодиод". Речь не о копипастерах с уроков, а действительно понимая что ты делаешь, в каком регистре, что меняешь. Это путь в 2000 (а то и больше) страниц на английском перечитанных по несколько раз, чтобы отоложилось. И в конце тебя ждут разные версии одной и той же библиотки в разных IDE. И сидишь вдупляешь... ну почему... я же в правильный регистр кладу правильную маску... ох, наболело. Такое ощущение что не для людей это всё делали, не для людей.
      Ваше мнение?
    • By Sofia Vin
      Предлагаем проектную работу в Москве:
      Микроконтроллер STM32F103.
        
      Есть встроенный код с использованием функций библиотеки FreeRTOS, код имеет описанный протокол для связи с внешним миром.
        
      Необходимо проводить доработку кода под задачи программиста верхнего уровня и его тестирование в составе оборудования. 
      Работа в лаборатории (м.Университет) и удаленно. 
      Оплата по договоренности.
      Если Вы обладаете опытом схемотехнического проектирования и программирования микроконтроллеров, и Вас заинтересовала данная возможность, ждем Ваши отклики по контактным данным:
      8 (925) 023-60-02   Алексей
      E-mail: nassa@marathon.ru
       
  • Сообщения

    • Значит это приманиватель. Тут его и газетой бить нужно, чтобы не гоняться по всему дому
    • Я работал с аналогичными мелкими твердотельное реле, импортными и нашими. Полевики на выходе полностью открываются при токе через светодиод 1-1,3 мА, падение на светодиоде около 1 вольта. Выбор тока через светодиод в обычных оптронах надо делать по графику CTR (коэффициент передачи  по  току). На выходе обычного оптрона стоит биполярный транзистор, ток коллектора которого зависит от тока базы. Если ток через выходной транзистор превышает пару мА, то освещенность базового слоя в транзисторе надо увеличивать. В документации данных по току выходного транзистора обычно нет, поэтому нужно в реале проверять какой ток светодиода даст требуемый ток в выходном транзисторе. Оптроны типа 817 ток на выходе 10 мА выдадут конечно, но при огромном токе через светодиод. Если оптрон включает обмотку реле, то реле с малым током, например, 5 мА, это реле >48V, можно поставить. Для тока на выходе оптрона более 5 мА надо ставить ключ. С ключём любой оптрон будет работать с небольшим током через светик. Максимальный ток 50 мА через светик пропускать нельзя, полагаю что это сильно снизит надежность оптрона. Если выходной транзистор насыщается при паре мА через светик, то на хрена давать 50 мА?   http://img.radiokot.ru/files/131202/1zfbl3a6n0.png    
    • Серёг, да дело не в халяве, а в законности, bля! Всё дело в том, что у нас законов то нетути. Я и не думал лезть в закон, пока меня тинькоф-банк не нае@л. Потом с ним пободались- в дело включается ОТП-банк. Я через их кредит мамке телик купил, на котором она мои ролики смотрит (там мой аккаунт- соответственно мои подписанные каналы). И тут она заходит ко мне, и грит, слушай, а почему ты кредит платишь, а там какая то сумма в 530 рублей с галочкой стоит? И тут я посмотрел кредитный договор. Потом ихнюю выписку из ЕГРЮЛ, потом ихнюю лицензию, и тута Остапа понесло! Нашёл через контакт "ОТП-банк" ихнего представителя, которая мне дала ихнюю электронку. (ну по телефону то обсуждать финансовые дела- моветон!). туды отослал,номер договора, и номер паспорта, и то, что я не физическое лицо, а человек, и прочее. Получаю ответ, мол, ваш кредитный договор не найден в наших базах данных. И фсё!
    • Хм, тогда тебе легко можно перейти из плохой позиции в хорошую, избавившись от лишнего. это гораздо легче, чем это лишнее приобрести.   Ну, дык, а он есть? Его можно использовать для принудительного труда, пока не отработает, чего он там задолжал.
    • Что-то у меня какая-то фигня с напряжением на выходе, в минусовом плече 16,5В в плюсовом 15,7В, стабилитроны 18В стоят. Резисторы 2,6 поставил 1,8кОм. на самих стабилитронах напряжение 17В и 16,2В, думал разброс параметров стабилитрона, менял - не помогло. Это может быть связано с беттой транзисторов? Стоят БД139/140.
    • Обычно-первичка мотается первой, а поверх неё уже мотаются вторички.   Паралелят обмотки для увеличения тока через них при уменьшении сечения провода, или можно мотать одну обмотку большим сечением. Обычно мотают первичка1, вторичка1, вторичка2, вторичка3, первичка2 Или вы смотали только вторую  половину первички, а первая осталась под вторичками, или что то не поняли по намотке транса. Проверяйте шим, обвязку, транзистор.   Проверить генерацию лучше без транзистора, на 6 ноге обычно-если сгорел трансформатор-то менять нужно шим и транзистор
    • Релюшку ставить надо,скоммутировать контакты под свои хотелки,диоды не прокатят.
  • Покупай!

×
×
  • Create New...