![]() |
Вложений: 1
небольшое видео
|
Вложений: 1
Костя, посмотри проектик под дельфи - управление 4 светодиодами есть, а вот как считать с девайса число integer - например 1023 (верхний результат АЦП)?
На сколько я понял прошивка может передать только uchar (до 256) Если найдешь способ считывать большие числа скажу огромное спасибо! |
ты распоковал и запустил екзешник? или прмо их архива запускал?
необходимо положить в одну папку с длл, и запустить. |
передаеться пакеты по 1 байту(8 бит). значит передавай два пакета подрят, на контроллере сохраняй их в временный буфер, а потом читай весь буфер длиной, которую сам задашь.
|
Цитата:
Распаковал конечно! А подскажи тогда как ADCW - результат АЦП с типом integer по байтам передать? и собрать их вместе? А то я пока тупо делю результат на 8 и получаю char, соответственно в 8 раз падает точность |
исходники делфы не смотрел.
создай массив uchar, засовывай в него принятые данные, потом анализируй. |
Цитата:
Байт1=ПОЛУЧИТЬ1БАЙТ(1023) Байт2=ПОЛУЧИТЬ2БАЙТ(1023) |
старшую часть легче всего получить разделив целочисленно двухбайтовое на 256 (0x100), а младшую, соответственно, остаток от деления (mod).
Зы собирать еще проще: старшая*256+младшая ЗЫЫ ничего что я вклинился:whistle:? |
int a;
uchar a1, b1; a1 = (uchar)(a/256); b1 = a-(a1*256); как то так, примерно. |
попробуй. у меня на ноуте, тестовом сервере, вмваре работает.
|
Часовой пояс GMT +4, время: 02:28. |
Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot