реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> вопрос по PIC + USB флэшка, записать файл во флэшку
ddd-ekb
сообщение Jan 12 2017, 19:10
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 28-10-15
Пользователь №: 89 059



Извиняюсь если не в тот раздел пишу.
Сам пишу исключительно на асме и с высокоуровнемы вещами типа USB незнаком абсолютно.
Сейчас прорабатывается небольшой контроллер, который будет месяц-два копить статистику с некоторого количества датчиков и складывать её в еепром типа 2464 в виде простово текстового файла.
Необходим дополнительный контроллер, по сути безразлично на чём сделаный, лишь бы это было недорого и легко покупаемо, который будет тоже подключен к этому еепрому и к USB-разъёму типа "мама". Также к нему должна быть подключена либо кнопка его активации, либо он должен сам при вставлении флэшки просыпаться. Проснувшись выставить сигнал доступа к 2464 и через секунду (контроллер сбора данных за это время точно его заметит и отключит свой порт от еепрома ) скопировать из неё всё, записав данные без какой-либо обработки в виде файла "file.txt" длинной 8192 байт.
Вопрос в принципе с кем то пообщаться на тему реализации этой задачи, ибо сам я ниасилю.
Спасибо.
Go to the top of the page
 
+Quote Post
varostov
сообщение Jan 13 2017, 09:34
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 5-04-10
Из: Ростов-на-Дону
Пользователь №: 56 418



Если исходить из необходимости работы "исключительно на асме", могу порекомендовать использовать не универсальный контроллер с 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

Сообщение отредактировал varostov - Jan 13 2017, 09:49
Go to the top of the page
 
+Quote Post
ddd-ekb
сообщение Jan 13 2017, 10:25
Сообщение #3





Группа: Участник
Сообщений: 13
Регистрация: 28-10-15
Пользователь №: 89 059



Цитата(varostov @ Jan 13 2017, 14:34) *
Если исходить из необходимости работы "исключительно на асме"

Тут речь о том, что сам контроллер сбора и подготовки данных в память я напишу на асме, но вот взаимодействие с флэшкой уже не сумею. Поэтому мне нужен какой то дополнительный контроллер сразу запрограммированный на единственное действие - при втыкании флэшки переписать туда всю 2464 и обозвать "файл.тхт". Чтоб мне не надо было отрабатывать какое то с ним взаимодействие, АТ-команды и тд и тп
Go to the top of the page
 
+Quote Post
ddd-ekb
сообщение Jan 14 2017, 12:56
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 28-10-15
Пользователь №: 89 059



Вобщем пока решил попробовать usbula.com, под мою задачу кажется самое простое из готового решения. Заказал пики, придут - буду тестить. Всем спасибо, тема пока закрыта. Вроде бы.
Go to the top of the page
 
+Quote Post
controller_m30
сообщение Jan 15 2017, 00:49
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 254
Регистрация: 24-02-09
Пользователь №: 45 309



Если нужно только принять данные по USB, то наверное достаточно использовать USB-COM переходник, типа: PL2303, CP210x (x=1,2,3), FT232, Ch430. Они продаются буквально везде.
В своём девайсе добавить отправку по UART накопленных данных, по какому-нить условию: при нажатии кнопки, или после обнаружения подключения USB-COM переходника, и т.п.
А принимать данные в компьютере, с помощью терминальной программы, которая умеет сохранять в виде ТХТ файла всё что было принято.
Например прога sscom32E имеет кнопочку "сохранить" принятые данные, и они как раз сохраняются в ТХТ формате, без всяких дополнений или искажений. Лишь бы ваш девайс прислал данные в виде читаемых ASCII символов. И всё laughing.gif

Если требуется чтоб устройство было подобно "серьёзной" USB-флешке, и данные нужно получить обязательно через проводник Windows, то и здесь есть вариант.
Писать данные нужно не на флешку типа 24С64, а на MicroSD карту в режиме SPI, как на обычную SPI-флешку. Заготовку ТХТ-файла длиной 8192 байт - записать на карту заранее, и по номеру сектора, где расположен файл, записывать свои данные. Это ненамного сложнее, чем писать на 24С64.

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

Можно совсем просто. Писать на карту памяти, ничего не встраивая в свою схему, а когда нужно - извлечь карту из своего девайса, вставить в кардридер и прочитать её на компе (или на телефоне, если у него есть слот для MicroSD) rolleyes.gif

Сообщение отредактировал controller_m30 - Jan 15 2017, 01:00
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th March 2017 - 06:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.02092 секунд с 7
ELECTRONIX ©2004-2016