Показано с 1 по 10 из 561

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    20.02.2009
    Возраст
    52
    Сообщений
    44
    Вес репутации
    224

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Вообще странно,
    Serial.print(dt1,DEC);
    должен именно в десятичном выводить!

  2. #2
    Новичок
    Регистрация
    21.11.2009
    Возраст
    41
    Сообщений
    19
    Вес репутации
    208

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Hamster Посмотреть сообщение
    Вообще странно,

    должен именно в десятичном выводить!
    он и выводит но почему то встроенный в аурдино монитор показывает крокозябру, а гипертерминал показывает нормально
    Цитата Сообщение от Tvi.Dubna Посмотреть сообщение
    Пост #142, автор Hamster...
    Спасибо, проглядел!
    Последний раз редактировалось Dr_cannabis; 08.06.2010 в 11:24.

  3. #3
    Пользователь
    Регистрация
    24.03.2008
    Сообщений
    39
    Вес репутации
    250

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Сегодня плотно разбирался с устройством...
    ЧУДЕСА!!!
    Вдруг всё заработало и прошивка стала выдавать коды и сериал монитор их правильно показывать.
    Похоже таки ардуина попалась капризная и не каждая попытка ее прошить завершается успешно. Только так могу объяснить эти чудеса с неработавшими скетчами и вдруг заработавшими...
    Единственно запускал гипертерминал. Может он дал пенделя операционке и она стала работать с портом... не знаю.
    Теперь о грустном. Не наботает скрипт для автохоткея.
    Если запускаю его из отдельной директории в которой только он и commg.dll, то просто ничего не происходит. Запускается и ничего не видит. А если кладу оба файла в директорию с автоноткеем, то он повисает и закрыть можно только из диспетчера задач.
    Предположение - не работает связь с ком-портом. Либо надо длл-ку куда-то класть в другое место либо она сама глючная либо ошибка в скетче.
    Последний раз редактировалось Tvi.Dubna; 11.06.2010 в 00:54.

  4. #4
    Пользователь
    Регистрация
    20.02.2009
    Возраст
    52
    Сообщений
    44
    Вес репутации
    224

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Tvi.Dubna Посмотреть сообщение
    Предположение - не работает связь с ком-портом. Либо надо длл-ку куда-то класть в другое место либо она сама глючная либо ошибка в скетче.
    dll достаточно, чтобы лежала там где скрипт. Скрипт по умолчанию работает с com8, к сожалению обработку ошибок при некорректном подключении к порту я не делал - там не все так тривиально, функция инициализации порта не всегда корректно работает.
    Но, скрипт и прошивка рабочие

  5. #5
    Пользователь
    Регистрация
    24.03.2008
    Сообщений
    39
    Вес репутации
    250

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Так может я на это "некорректно" и попал...
    и кстати, пожалуйста объясните логику этого цикла
    Loop ; Ждем нажатия кнопки на руле
    {
    s := DllCall("commg.dll\GetByte","Cdecl str")
    If s=255
    {
    ; d := DllCall("commg.dll\GetByte","Cdecl str")
    ; d1 := DllCall("commg.dll\GetByte","Cdecl str")
    ; SteeringKey := d1*255+d
    SteeringKey := DllCall("commg.dll\GetByte")
    Break
    }
    почему мы берем байт, а не число которое выдает скетч???

  6. #6
    Пользователь
    Регистрация
    20.02.2009
    Возраст
    52
    Сообщений
    44
    Вес репутации
    224

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Цитата Сообщение от Tvi.Dubna Посмотреть сообщение
    почему мы берем байт, а не число которое выдает скетч???
    Потому что другой функции в dll нету А вообще, по сути скетч выдает именно байт, от 1 до 5.

    И вообще, понятие "число" несколько некорректно. Это может быть как реальное значение (chr(1)), а может быть код кнопки 1 (chr(49)). Разные интерпретаторы могут по разному понимать и пихать эту инфу в порт.

    Loop ; Ждем нажатия кнопки на руле
    {
    s := DllCall("commg.dll\GetByte","Cdecl str") ; Ждем "стартовый" байт, он должен быть chr(255)
    If s=255
    {
    SteeringKey := DllCall("commg.dll\GetByte") ; читаем второй байт, в нем должен быть код кнопки (Chr(1) - Chr(5))
    Break
    }
    Последний раз редактировалось Hamster; 11.06.2010 в 03:22.

  7. #7
    Пользователь
    Регистрация
    24.03.2008
    Сообщений
    39
    Вес репутации
    250

    По умолчанию Re: Управление рулевыми кнопками при помощи Carduino.

    Почитал соседнюю тему.... Хм...
    У меня кардуина подключена через USB хаб с доп. питанием от компа.
    Может всё дело в этом
    Разбирать панель лениво... а похоже придется!

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 7 (пользователей: 0 , гостей: 7)

Ваши права

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