ddd-ekb 0 12 января, 2017 Опубликовано 12 января, 2017 · Жалоба Извиняюсь если не в тот раздел пишу. Сам пишу исключительно на асме и с высокоуровнемы вещами типа USB незнаком абсолютно. Сейчас прорабатывается небольшой контроллер, который будет месяц-два копить статистику с некоторого количества датчиков и складывать её в еепром типа 2464 в виде простово текстового файла. Необходим дополнительный контроллер, по сути безразлично на чём сделаный, лишь бы это было недорого и легко покупаемо, который будет тоже подключен к этому еепрому и к USB-разъёму типа "мама". Также к нему должна быть подключена либо кнопка его активации, либо он должен сам при вставлении флэшки просыпаться. Проснувшись выставить сигнал доступа к 2464 и через секунду (контроллер сбора данных за это время точно его заметит и отключит свой порт от еепрома ) скопировать из неё всё, записав данные без какой-либо обработки в виде файла "file.txt" длинной 8192 байт. Вопрос в принципе с кем то пообщаться на тему реализации этой задачи, ибо сам я ниасилю. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
varostov 0 13 января, 2017 Опубликовано 13 января, 2017 (изменено) · Жалоба Если исходить из необходимости работы "исключительно на асме", могу порекомендовать использовать не универсальный контроллер с USB интерфейсом, а специализированные USB-Host контроллеры. Сам я работал только с контроллером Vinculum VNC1L-1A от FTDI (правда, это было давно). Прелесть в том, что можно и USB операциями управлять с микроконтроллера сбора данных - используется сравнительно небольшой набор команд, похожих на AT-команды модемов, а всю низкоуровневую работу Host-контроллер делает сам. Интерфейс - SPI или UART по выбору. Недостаток - спец. контроллер будет скорее всего дороже среднего МК. Позже FTDI добавила Vinculum-II - это уже полноценный МК, куда можно добавить пользовательскую программу (правда, с проприетарной архитектурой и системой команд). Немножко погуглив и подняв свои записи, нашёл ещё микросхемы USB-host: MAX3421 CH375B μPD720150 FT311 FT313 Также для быстрого старта можно воспользоваться готовыми платами с USB-host. У FTDI такие платы позиционируются, как отладочные средства (модули VDIP, VMUSIC и т.п.), поэтому цена будет кусаться. А вот разнообразные USB Host Shields из экосистемы Arduino вполне можно купить на Ali за 500 руб (контроллер - MAX3421). Плюс - готовые библиотеки, котрые можно "изучить", минус - они написаны на С++. P.S. В качестве примера - плата сбора данных DLP-VLOG Изменено 13 января, 2017 пользователем varostov Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ddd-ekb 0 13 января, 2017 Опубликовано 13 января, 2017 · Жалоба Если исходить из необходимости работы "исключительно на асме" Тут речь о том, что сам контроллер сбора и подготовки данных в память я напишу на асме, но вот взаимодействие с флэшкой уже не сумею. Поэтому мне нужен какой то дополнительный контроллер сразу запрограммированный на единственное действие - при втыкании флэшки переписать туда всю 2464 и обозвать "файл.тхт". Чтоб мне не надо было отрабатывать какое то с ним взаимодействие, АТ-команды и тд и тп Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ddd-ekb 0 14 января, 2017 Опубликовано 14 января, 2017 · Жалоба Вобщем пока решил попробовать usbula.com, под мою задачу кажется самое простое из готового решения. Заказал пики, придут - буду тестить. Всем спасибо, тема пока закрыта. Вроде бы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
controller_m30 1 15 января, 2017 Опубликовано 15 января, 2017 (изменено) · Жалоба Если нужно только принять данные по USB, то наверное достаточно использовать USB-COM переходник, типа: PL2303, CP210x (x=1,2,3), FT232, Ch430. Они продаются буквально везде. В своём девайсе добавить отправку по UART накопленных данных, по какому-нить условию: при нажатии кнопки, или после обнаружения подключения USB-COM переходника, и т.п. А принимать данные в компьютере, с помощью терминальной программы, которая умеет сохранять в виде ТХТ файла всё что было принято. Например прога sscom32E имеет кнопочку "сохранить" принятые данные, и они как раз сохраняются в ТХТ формате, без всяких дополнений или искажений. Лишь бы ваш девайс прислал данные в виде читаемых ASCII символов. И всё :laughing: Если требуется чтоб устройство было подобно "серьёзной" USB-флешке, и данные нужно получить обязательно через проводник Windows, то и здесь есть вариант. Писать данные нужно не на флешку типа 24С64, а на MicroSD карту в режиме SPI, как на обычную SPI-флешку. Заготовку ТХТ-файла длиной 8192 байт - записать на карту заранее, и по номеру сектора, где расположен файл, записывать свои данные. Это ненамного сложнее, чем писать на 24С64. Тогда считывать данные по USB, можно с помощью схемы от кардридера-брелка, которые продаются на каждом шагу за копейки. Есть настолько маленькие по размеру кардридеры (не больше самой карты памяти), что платку от него можно целиком распаять в своей схеме, между USB-разъёмом и SD-картой. Есть в продаже и такие девайсы, которые имеют микросхему кардридера пригодную для пайки. И стОят они не сильно дороже простого кардридера. Нужно только предусмотреть изоляцию этого USB-ридера от SD-карты в то время, когда с ней работает контроллер - чтобы не было "фантомного" питания схемы кардридера по сигнальным линиям, ну и чтоб не было помех при работе с картой. Можно совсем просто. Писать на карту памяти, ничего не встраивая в свою схему, а когда нужно - извлечь карту из своего девайса, вставить в кардридер и прочитать её на компе (или на телефоне, если у него есть слот для MicroSD) :rolleyes: Изменено 15 января, 2017 пользователем controller_m30 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться