Например TDA7294

 Форум РадиоКот • Просмотр темы - Определить состояние USB mikrocPRO for pic
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Ср окт 18, 2017 10:59:55



Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Пн окт 02, 2017 16:11:28 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Здравствуйте. Задавал вопрос в общей теме по программировании на С но думаю нужна отдельная тема.
Проблема в следующем: есть устройство на PIC18F2550 подключаемое по USB и определяется как HID Keybord. К этому устройству подключена PS2 клавиатура и программный код реализовывает по сути переходник PS2-USB плюс дополнительный функционал. Возможна работа и без подключения к USB, т.е. автономно принимать команды от PS2 клавиатуры.
Код написан в среде MikroCPRO for PIC с использованием стандартной библиотеки USB HID. Проблема заключается в том, что когда вытягиваешь USB разъем с порта то прекращается выполнение основной программы. И стандартная библиотека не имеет функции получения состояния модуля USB, чтобы при дисконекте перенаправить ветку на работу без USB.
Находил на каком то иностранном форуме точно такую же проблему решили с помощью прерывания по USBIF но не выложили как это было достигнуто. Перелопатил регистры USB модуля и ничего не пришло в голову. PICами ранее не занимался и по этому прошу помощи у опытных разработчиков. Заранее спасибо за любую информацию.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Ср окт 04, 2017 17:25:14 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Видимо подобным вопросом никто не задавался. :cry:
Может кто то посоветует хорошую библиотеку USB HID на с под pic18f2550, буду благодарен.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 
От идеи до готового устройства! Нужен только EasyEDA!

Бесплатный инструмент для проектирования печатных плат - нарисуй свою плату прямо сейчас!

JLCPCB for PCB Prototyping, всего $2 за 10 печатных плат 10×10см. Доставка 2-3 дня.

LCSC Parts: Экономия до 50%, большой выбор компонентов в наличии, отправка заказа в день оплаты.

Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Ср окт 04, 2017 20:32:38 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1019
Откуда: Баку
Рейтинг сообщения: 1
MPLab не подойдет?
Линк.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 

Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Чт окт 05, 2017 10:46:14 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Цитата:
MPLab не подойдет?

У mikroc свой компилятор но я пробую перейти на MPLABX, изучаю его. Пытаюсь скомпилировать проект с usb, сыпет кучу ошибок. Спасибо за линк, буду разбираться и переносить проект на MPLABX.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 

Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Чт окт 05, 2017 11:23:37 
Модератор
Аватар пользователя

Карма: 59
Зарегистрирован: Пт мар 19, 2010 00:09:57
Сообщений: 3572
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Виснет, скорее всего, на этой строке :
Код:
while(!HID_Write(writebuff,8));


Сделайте выход из цикла по тайм-ауту (можно примитивному, без таймера).

_________________
Я мненью вашему вращенье придавал, а осью был - мой детородный орган.


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Чт окт 05, 2017 22:08:12 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Я полностью убрал цикл, оставил только HID_Write(writebuff,8); Все ровно зависает. У меня сложилось такое мнение, что если программа входит в функцию передачи и если usb не подключен она где то в библиотеке зацикливается и ждет подключения usb. Ели бы были исходные коды данной библиотеки, а то сама либа компилирована и доступа к ней нет. Я на libstok нашел библиотеку для microc там больше функционала, но почему то не во всех ПК работает. Пытаюсь разобраться, может я где то накосячил.

Кстати с MPLAM Х ничего не получилось ввиду использования бесплатной версии. Мое устройство использует еще загрузчик по USB, а для сборки микрочиповсего бутлодера мне выдает ошибку, что нужен компилятор pro версии. В общем дальше пытаюсь решить задачу на microC.

Добавлено after 2 hours 32 minutes 55 seconds:
Перевел проект на библиотеку вот от сюда https://libstock.mikroe.com/projects/vi ... ce-library
Все вроде бы работает стабильно но не во всех USB портах, т.е. вставляю в порт ноутбука поддерживающий зарядку по USB и устройство определяется, работает нормально. Вынимаю вставляю в другой порт (обычный) и пишет неизвестное USB-устройство. Хотя перепрошиваю на код со стандартной библиотекой и USB работает во всех портах.
У меня наверное не хватает знаний, чтобы понять почему так происходит. Может из-за того что у меня не подключен +5в от USB хоста к моему устройству? Может где то нужно указать, что устройство работает от внешнего источника питания?

Добавлено after 6 hours 17 minutes 24 seconds:
Обнаружил нюанс с USB портами своего ноутбука. Приведенная выше библиотека скачанная с libstok не работает на USB 3.0. На 2.0 работает. Хотя интерфейсы обратно совместимы. Буду дальше разбираться почему.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Ср окт 11, 2017 18:09:00 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Еще раз здравствуйте. Не разобрался почему не работает на USB 3.0, ну да и не важно. Мне USB2.0 хватит, не коммерческое устройство.
Возникла следующая проблема. Можно как то определить, что устройство находится в режиме BIOS? т.е. Так называемом boot режиме, до загрузки Операционной системы? Идея в следующем. Включается ПК и BIOS просит ввести пароль, нажатием кнопки пароль вводится и продолжается загрузка системы. Когда система загружена то контроллер видит, что он работает в режиме системы и пароль не вводит. Как то можно инициализировать режим системы и boot? Спасибо.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Ср окт 11, 2017 21:29:35 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1019
Откуда: Баку
Рейтинг сообщения: 0
Может по сигналу CS на микросхеме БИОСа? Предполагаю, что после отработки старта и запуска ОС сигнал CS деактивируется.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Чт окт 12, 2017 13:09:45 
Грызет канифоль
Аватар пользователя

Зарегистрирован: Ср фев 13, 2008 15:41:32
Сообщений: 260
Откуда: Украина, Николаев
Рейтинг сообщения: 0
Расшифруете что за сигнал CS? Немного не понял как по USB узнать наличие этого сигнала. Можете по подробнее пожалуйста.

_________________
Немного нервов и девайс готов


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Определить состояние USB mikrocPRO for pic
СообщениеДобавлено: Чт окт 12, 2017 16:15:53 
Электрический кот
Аватар пользователя

Карма: 16
Зарегистрирован: Ср янв 29, 2014 09:41:31
Сообщений: 1019
Откуда: Баку
Рейтинг сообщения: 0
Я подумал, что вы прямо к материнке хотите подключиться.
Через USB вряд ли можно определить этап загрузки ПК.

CS = Chip Select. Вывод на некоторых чипах для разрешения работы.

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 



Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y