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
       
  • Сообщения

    • @Dr. West Аккумуляторы у меня стояло пару старых, которые я нынче заменил четырьмя новыми проработали около десяти лет. И беру я их далеко не каждый год. Лет пять я аккумуляторы вообще не обновлял до этого. Рассмотрю и радиоуправление. Если не сложно можете даже схемок подкинуть, а потом и решу на чём и как сделать в финалочке.
    • Сам я не смогу, ещё плохое воспитание получу, а здесь проверенная тропа... и опять же, - УНЧ начну собирать, наверняка это как-то связано.
    • Не расскажите - из чего сделана мембрана? На вид материал достаточно толстый и жесткий.  И как сделан шаблон - фрезерованием на ЧПУ фрезерном столе? @ky3ne4ik  Помнится вы искали чем гофрировать широкие мембраны, а товарищ   @Bobius интересно сделал шаблон под гофрирование. Правда это под конкретные размеры если только такие делаешь. И сами волны крупные получаются.   @ky3ne4ik  Благодарность вам за ваши исследования и работы. Слежу за вашими публикациями, интересно, хоть тема не совсем моя. 
    • Вообще-то, мне хотелось узнать, что побудило  Bobius-а изготовить динамики такого типа, так как у самого руки так и дошли до этого, хотя и хотел это сделать под впечатлением звучания советских наушников ТДС-7, аналогичной конструкции . Сейчас может и лучшего звучания продаются наушники, но раньше не было особого выбора. Помню, что у них отдача была низкая и приходилось делать специально для этого усилитель, чтобы слушать их на повышенной мощности, нежели для обычных наушников. Но ведь тогда не было в свободном доступе мощных ниобиевых магнитов.  И если динамические практически невозможно было изготовить с нуля самостоятельно, то изодинамические вполне реально. А на счет троллинга - так это у кого чего болит...
    • Ни о чем не беспокойся. Тут ведь главное, чтобы ты свои пробелы восполнил и быстрее паззлы собирал, которые с пометкой +18. Мы подождем, развивайся. 
  • Покупай!

×
×
  • Create New...