|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.03.2018, 16:04 | #1 |
Новичок
Джуниор
Регистрация: 11.03.2018
Сообщений: 1
|
bluetooth usb хаб
Доброго времени суток.
Немного оффтопа: Прекрасное время – последний курс института. Диплом начинается. Просто восхитительно, когда при этом еще и особо не шаришь в теме своего диплома. В общем, к концу апреля мне нужно уже доделать эту работу хотя бы на процентов так 90, поэтому очень надеюсь на Вашу помощь в разборе материала. Я далее изложу задание и то, к чему я пока пришел. Хотелось бы не только ответы на вопросы получить, но и может какие-то комментарии или полезные ссылки, если таковые имеются. Заранее спасибо за помощь. Задание: Создание программного обеспечения для устройства и мобильника. Суть устройства проста это своего рода usb хаб, только с некоторыми особенностями. Это автономное устройство, которое через Bluetooth подключается к мобильнику и в приложении на телефоне производятся операции с файлами – удаление, перемещение, копирование. Данная задача актуально поскольку половина телефонов не поддерживают работу с usb накопителями, и поэтому создать некое универсальное устройство (в меру универсальное, не надо нам через него мышки, клавиатуры, жесткие диски и прочее подключать, только обычные флешки) Некоторые дополнения к заданию (дополнительные условия): По условиям задачи мобильник на платформе android. Устройство на основе микроконтроллера семейства AVR. Принципиалки в данный момент нет, поскольку физическое исполнение проекта поручено другому человеку. Мне исключительно программная составляющая поручена. С товарищем ответственным за железо сошлись пока на том, что будем делать на AT90USB162, а для экспериментов и постепенного решения задач используем отладочную плату AVR USB 162. Также были куплены два обычных USB type А и Bluetooth модуль НС-06. Мое понимание задачи: Есть устройство и мобильник. Соответственно нужно рассматривать две отдельные системы, которые через bluetooth будут взаимодействовать между собой. Система для устройства представляет собой переходник по своей сути от usb к bluetooth, поэтому в моем представлении ее можно разбить на три основные элемента: 1. «Ядро» программы 2. Модуль usb 3. Модуль bluetooth Соответственно модули позволяют производить инициализацию устройства, отключение, чтение данные поступающих с него, и отправку данных на него. И они в отличии от драйверов будут просто закомпилены вместе с условным ядром в цельную программу. Система для телефона представляет собой своеобразный файловый менеджер, который в моем представлении можно разбить на три составляющие: 1. Пользовательский интерфейс 2. «Ядро» программы 3. Модуль bluetooth, аналогичный тому, что будет на МК Для исправной работы всего этого комплекса необходимо, чтобы usb модуль соответствовал стандартам. А протокол общения по bluetooth можно выбрать любой (вплоть до разработки своего на коленке), главное, чтобы он был одинаков на обоих устройствах. Основные вопросы на данном этапе разбитые по темам: 1. Правильно ли я понимаю саму структуру этого проекта? 2. Реализуемо ли это в принципе за данные сроки? Если нет, как можно упростить данную задачу? Учитывая, что я знаю только Си с щепоточкой С++, и имел небольшой опыт работы с МК на Си и ассемблере, думаю проблема не так велика, но хотелось бы узнать мнение людей, более просвещенных в данной области, если таковые читают этот длиннопост (попытаться договориться на счет упрощения думаю получится, если не урезать задачу в разы) 3. Для usb можно попытаться нашаманить что-то при помощи библиотеки v-usb. Это оптимальный вариант? Или есть какие-нибудь предложения получше? Если есть готов выслушать. Если нет, хотелось бы тогда узнать есть ли на русском полноценная о нем информация? (на английском много нашлось, но если возможно упрощение, я бы хотел им воспользоваться в любом случае :D) Или может быть лучше использовать встроенные в МК возможности использования USB? Если последний вариант лучше, то как это сделать? Мне не удалось понять. Особенно на отладочной плате, в которой нет возможности подключиться дополнительно к этим портам, но если купить отдельно МК, то возможно и получится. Как я понял USB у АТ90USB162 нужен только для программирования, но если я не прав, буду рад поправкам 4. Для bluetooth я нашел, что вроде протоколы общения есть, но они все разные для разных нужд, получается если я соберу полный набор команд, которые мне нужно передавать между телефоном и устройством я могу и сам составить свой, более приспособленный к моим навыкам программирования протокол общения? 5. Есть ли возможность писать программы на андроид на Си? Или тут только ява, только хардкор? (пока я ее не знаю, для меня это какая-то дичь, все через классы и объекты делать, это слишком мощно для меня, возможно именно поэтому я на С++ не перешел полноценно, а тут это похоже еще больше внедрено в структуру программирования) |
20.03.2018, 14:39 | #2 |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 751
|
Ха-ха-ха!!!!! Я сам делал подобное устройство на микроконтроллере AT90USB162 - хороший микроконтроллер всем рекомендую. Тут даже по-моему где тема есть на этом форуме, а вообще я все делал по статье - находится с полпинка. Там все расписано что и как надо делать.
Вот эта статья: http://avr-start.ru/?p=3064 Только там опечатка, программа, в которой работаешь называется CVAVR - хорошая вещь.:D Ответы на вопросы: 3)USB у этого микроконтроллера может использоваться и для программирования и для всего подряд. Чистый USB порт использовать очень сложно. Там используется виртуальный COM-порт, с ним легче. 5) Ну сейчас все на классах и объектах делается. Это мода времени и ничего с этим не поделаешь. Там все легко и не нужно этого боятся. Объекты сейчас везде используются, но в микроконтроллерах их меньше всего - так что нормально.:D Если будут какие-нибудь вопросы - обращайтесь. Желательно небесплатно.:D По Bluetooth я не специалист, там по-моему какая-то микросхема используется и связь с ней по SPI интерфейсу. Может быть кто-нибудь здесь и подскажет.
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
Последний раз редактировалось Cuprum5; 20.03.2018 в 14:57. |
20.03.2018, 14:58 | #3 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,758
|
В первом приближение сойдет. Только где-то потерялся слой файловой системы.
Зависит от суммы. Кто знает может вы наймете людей на 20 часов в сутки. Цитата:
Цитата:
Теоретически есть, но если вам надо быстро и нет знаний, то лучше Java. И примеров побольше, и книжки есть, и интерфейс быстро наклепать можно. |
||
20.03.2018, 15:27 | #4 |
Форумчанин
Регистрация: 09.05.2017
Сообщений: 751
|
А, тут, UART - ну тогда тут вообще все легко:
http://mkprog.ru/avr/bluetooth-modul...-dlya-avr.html SBHX, нарисуйте, пожалуйста структурную схему этого устройства, я что-то не совсем представляю как микроконтроллер будет общаться с винтом? И какие там вообще винты: IDE, SATA или по USB? По поводу COM-порта: библиотека V-USB - по-моему, она и есть.:D Железяка вообще будет делаться в дипломном проекте или ограничитесь теорией?
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
|
20.03.2018, 15:33 | #5 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,758
|
Cuprum5, что вы несете? У него USB и жесткие диски/флешки через него. А про либу с офф сайта:
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
распайка с usb на micro usb | Terikon | Компьютерное железо | 5 | 07.02.2015 22:05 |
Возможно ли соединить 2 компа кабелем USB-USB? | Ghost3 | Компьютерное железо | 21 | 06.08.2014 09:22 |
Bluetooth USB Dongle (БЮД) | Black-Man1993 | Софт | 16 | 29.10.2010 14:33 |
комп-хаб-модем | BaiAs | Компьютерное железо | 3 | 27.08.2010 07:57 |
BlueTooth | subsonic | Общие вопросы Delphi | 4 | 24.07.2008 16:19 |