В любом компьютере много устройств подключённых к разъёмам USB.
Почему компанент KE_DetectDevices, размещённый на вкладке KernelChip, не обнаруживает эти устройства?
Какими параметрами должно обладать устройство, подключённое к разъёму USB, чтобы оно определялось компанентом KE_DetectDevices?
Заранее благодарен за любой ответ!
Этот топик читают: Гость
Ответов: 29
Рейтинг: 0
|
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
|
Ответов: 29
Рейтинг: 0
|
|||
Отзовитесь кто пытался использовать компанент KE_DetectDevices!
Сообщите хоть какую-то информаци о практическом применении этого компанента! |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
это намек на то, что в сообщении по ссылки из второго поста этой темы полную хрень написали?
|
|||
карма: 27 |
|
Ответов: 8961
Рейтинг: 824
|
|||
Dilma, nesco - это крик о том, что пора уже в HiAsm иметь не просто KE_DetectDevices, а USB_DetectDevices и свой компонент работы с USB по своему протоколу
![]() |
|||
карма: 19 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
эра COM не закончилась и закончится еще очень не скоро.
|
|||
карма: 27 |
|
Ответов: 29
Рейтинг: 0
|
|||
Леонид писал(а): Dilma, nesco - это крик о том, что пора уже в HiAsm иметь не просто KE_DetectDevices, а USB_DetectDevices и свой компонент работы с USB по своему протоколу эра LPT и COM давно закончилась!Очень согласен с этим выводом! Кстати, недавно разобрался и практически осуществил сопряжение МК ATtiny2313 c компьютером посредством компанента СОМ - порт. С трудом, но в результате всё получилосью. Хотелось бы, чтобы в зтом компаненте было больше настроек. В часности желательно иметь возможность задавать количество битов в передаваемой посылке сообщения, так как для получения байта информации сейчас нужно передать три посылки и уже в МК ATtiny2313 писать программу преобразования этих трёх посылок в байт. |
|||
карма: 1 |
|
Разработчик
Ответов: 26305
Рейтинг: 2146
|
|||
kolira писал(а): желательно иметь возможность задавать количество битов в передаваемой посылке сообщенияИ где ты такое видел ![]() kolira писал(а): так как для получения байта информации сейчас нужно передать три посылкиС какого перепугу ![]() |
|||
карма: 22 |
|
Ответов: 29
Рейтинг: 0
|
|||
nesco писал(а): И где ты такое видел COM-порт отродясь имел, либо 7 бит, либо 8 бит передачи
kolira писал(а) С какого перепугу ![]() Попытаюсь ВАМ ,Разработчик nesco , пояснить, как вы выражаетесь "С какого перепугу" , чем я обосновываю то, что для получения полного байта (это число 255) информации сейчас нужно передать три посылки. Если собрать реальный макет, пользуясь паяльником и осцилографом, то при просмотре эпюры напряжения одной посылки,выдаваемой СОМ портом при передачи например одной цифры ясно видно, что сама информация о цифре содержится только в 4-х битах, при этом три бита ("Стартовый", " Чётности" и "Стоповый") отводятся на служебные сигналы. В стандартном USART (Universal Syncronous/Asyncronous Receiver/Transmitter) - универсальном синхронно/асинхронном приёмопередатчике, который является составной частью СОМ порта любого компьютера, только чистая информация передаётся 8-ю битами. http://www.denvo.ru/pub/hardware/rs-232.html |
|||
карма: 1 |
|
Разработчик
Ответов: 26305
Рейтинг: 2146
|
|||
kolira, да будет Вам известно, что длина 8-битного пакета асинхронных данных без проверки четности занимает длину ровно 10 бит (как раз, два из них отводится под стартовый и стоповый биты) и совершенно не зависит от количества активных бит внутри байта передаваемой информации. Откуда взята пурга про 4-e бита и 3-и байта, сие -- неизвестно. Советую почитать подробнее соответствующую литературу, например, вот эту лабораторную работу http://www.labfor.ru/?act=metod&target=metod_leso1_5. Вот рисунок из нее, который показывает, длину одной посылки
Откуда видно, что один байт, всегда передается 10-ю битами, независимо от количества активных бит в байте, те, значения от 0 до 255 передаются в одной посылке. |
|||
карма: 22 |
| ||
файлы: 1 | 5.1.png [11.8KB] [309] |
Ответов: 8961
Рейтинг: 824
|
|||
kolira, я занимался просмотром СОМ порта с записью сигнала и затем его просмотром в медленном режиме - всё происходит именно так, как показал nesco стартовый бит, 8 бит информации т. е. байт с значением: буква A - 65, буква я - 255, стоповый бит, итого 10 бит
![]() nesco, [flood]Вы отвлеклись от основного вопроса этой темы: напмсание протокола и компонента для USB ![]() |
|||
карма: 19 |
|
Разработчик
Ответов: 26305
Рейтинг: 2146
|
|||
Леонид писал(а): напмсание протокола и компонента для USBЯ не собираюсь их писать, потому, что у меня нет устройств USB со стандартным протоколом HID, те, проверять не на чем |
|||
карма: 22 |
|
Ответов: 29
Рейтинг: 0
|
|||
Леонид, может быть я в чём-то заблуждаюсь, но снова перепроверил осцилографом - всё так как я писал!
Я же не могу своим глазам не верить! Схема эксперимента, с использованием компанентов HiAsm, простая. На форму вывожу компаненты: COM-порт, таймер, Edit, кнопку и DoData. Открываю СОМ-порт и с периодом таймера через DoData передаю информацию, записанную в Edit, на вход doWrite СОМ-порта. Осцилографирую на контакте 2 COM-порта - RD (Принимаемые данные). В чём же я ошибаюсь? Я же речь веду о выдаче сообщений именно с помощью компанента СОМ - порт конструктора HiAsm, а не о стандартной работе стандартнойго СОМ - порта (RS232). |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
согласно википедии nesco, прав http://en.wikipedia.org/wiki/UART. Если взглянуть на настройки порта в 68 строке кода элемента, то можно увидеть:
|
|||
карма: 27 |
|
Разработчик
Ответов: 26305
Рейтинг: 2146
|
|||
kolira, причем тут осцилограммы вообще
![]() ------------ Дoбавленo в 23.01: kolira писал(а): Я же речь веду о выдаче сообщений именно с помощью компанента СОМ - порт конструктора HiAsmЭтого не может быть потому, что этот компонент работает с COM-портом через буфер USART, как с файлом, с самим портом RS232 работате уже драйвер USART в реальном времени. При записи данных компонентом COM-порт, на выходе физического COM-порта будут данные в стандарте RS232 |
|||
карма: 22 |
|