Технический форум по робототехнике.
kbnn » 16 апр 2010, 21:28
Вот значит что получается:
Если использовать 8-ми битный АЦП и дальномер на PORTF0 то:
запрос S40 02 03 01p
ответ SWAAAP
запрос S40 03 01 S41 09p
ответ SWAASR00000000000000B040P
Число появляется в 8-м и 9-м байте.
Если читать 2 байта то ответ будет:
SR0000P
SR0000P
SR0000P
SR00B0P
SR4000P
КАК ПРОЧИТАТЬ 2 байта ЧИСЛА первым запросом?
Если использовать 10-ти битный АЦП и дальномер на PORTF0 то:
запрос S40 02 05 01p
ответ SWAAAP
запрос S40 03 01 S41 12p
ответ SWAASR000000000000000000000000000001B00241P
Число в 17-м и 18-м байте. И ОПЯТЬ присутствует 01 B0
=DeaD= » 17 апр 2010, 09:23
2kbnn: Что-то я не понял, вам надо было с 10-битного АЦП прочитать первым коротким запросом число - я показал как это сделать, у вас получилось или нет? Я просто пока слегка всякими задачами нагружен и по возможности полный разбор всего всего в прошивке потом бы провел, а сейчас просто бы помог вам решить нужную задачу.
kbnn » 17 апр 2010, 16:52
Нет. Не получается. Если я запрошу 2 байта то получу 00 00.
Это будут вот эти нули (выделил жирным) SWAASR000000000000000000000000000001B00241P
=DeaD= » 17 апр 2010, 16:56
Что значит "
если я запрошу" ?

Вы попробовали ту команду, которую я сказал?
Вы не тот номер линии передавали похоже - поэтому у вас и 0000 возвращало.
S40 02 05 02p
S40 03
01 S41 02 P
kbnn » 17 апр 2010, 16:59
А какой(номер линии) нужно?
=DeaD= » 17 апр 2010, 17:00
он выделен в сообщении выше
Добавлено спустя 1 минуту 2 секунды:Вы же маску установили 0x00000010 - это первый бит, т.к. нумерация битов в байте начинается с 0.
kbnn » 17 апр 2010, 17:11
kbnn писал(а):Вот значит что получается:
Если использовать 10-ти битный АЦП и дальномер на PORTF0 то:
запрос S40 02 05 01p
ответ SWAAAP
запрос S40 03 01 S41 12p
ответ SWAASR000000000000000000000000000001B00241P
Число в 17-м и 18-м байте. И ОПЯТЬ присутствует 01 B0
Вот тут, маска же dx01=0x00000001
разве не так?
Добавлено спустя 4 минуты 34 секунды:Я понял!!!
Надо было начинать с 00 канала!!!
=DeaD= » 17 апр 2010, 17:13
Если вы вешаете на АЦП линию PORTF
0 и инициализируетесь командой:
S40 02 05 01p
тогда читать надо тоже линию
00 командой
S40 03
00 S41 02p
Добавлено спустя 19 секунд:Ну вот, я немного не успел
Добавлено спустя 58 секунд:Ну как, заработало?
kbnn » 17 апр 2010, 17:13
Вот что получилось!
запрос S40 02 05 01p
ответ SWAAAP
запрос S40 03
00 S41 02p
ответ SWAASR02A8P
ВСЕ РАБОТАЕТ!!!
ОГРОМНОЕ СПАСИБО.
Теперь осталось все перенести в QT

=DeaD= » 17 апр 2010, 17:16
Ок, отлично! а 01B0 это видимо какой-то мусор цепляется при перелете и зацикливании номера линии.
Вечером попробую уже что-то с QT выложить более-менее рабочее.
kbnn » 17 апр 2010, 17:17
Заранее благодарю.
Alex080969 » 26 май 2010, 10:02
Возможно я просто ненашёл, но есть ли схемка модуля для протеуса? Хочу платку купить для шестинога, а пока в протеусе поюзать
=DeaD= » 26 май 2010, 11:06
Для протеуса нету

Alex080969 » 26 май 2010, 11:31
Я смотрю ты в EAGLE схемку то рисовал... Авторских прав то ненарушу если в протеусе схемку наберу?

=DeaD= » 26 май 2010, 11:34
Нет конечно, набирай. А если еще и выложишь - так все только рады будут
