Demon Опубликовано 21 апреля, 2015 Поделиться Опубликовано 21 апреля, 2015 (изменено) День добрый всем. Подскажите начинающему: Есть Wifi модуль ESP8266 через который необходимо наладить связь между микроконтроллером и мобильными приложениями (Андроид, IOS) Стоит 7ая студия, пытаюсь использовать TIDTCPClient. На модуле запускается сервер. В приложении клиент подключается к открытому модулем сокету Отправка данных от приложения к модулю идет нормально Как принимать байты от модуля на стороне клиента??? TClientSocket работает замечательно и принимает и отправляет. Бьюсь несколько дней... толкового ответа никто не дает... заранее огромное спасибо Почему при получении клиентом байта от сервера значения свойств Socket.InputBufferIsEmpty и Socket.InputBuffer.Size не изменяется хотя байты он принимает. Но если сделать хотя бы один раз процедуру Socket.ReadByte тогда эти свойства изменяются и количество принятых байт показывается правильно и тогда можно в нужный момент остановиться при получении байт. Но почему свойства буфера не меняются сразу??? Изменено 22 апреля, 2015 пользователем Demon Цитата Ссылка на комментарий
0 konstantin_27 Опубликовано 8 июня, 2015 Поделиться Опубликовано 8 июня, 2015 Вы с проблемой справились? У меня точно такой же вопрос) с сокетами работает нормально а вот с TCPClient-ом не работает Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 8 июня, 2015 Поделиться Опубликовано 8 июня, 2015 В скором времени сам собираюсь изучать ESP8266, но пока руки не доходят. Скажите, а чем не устраивают сокеты в работе? Отсутствием кроссплатформенности? Цитата Ссылка на комментарий
0 konstantin_27 Опубликовано 9 июня, 2015 Поделиться Опубликовано 9 июня, 2015 В скором времени сам собираюсь изучать ESP8266, но пока руки не доходят. Скажите, а чем не устраивают сокеты в работе? Отсутствием кроссплатформенности? Да! Сокетов нет как допустим при создании обычной формы в папке internet. Вы не подскажите альтернативу?? Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 9 июня, 2015 Поделиться Опубликовано 9 июня, 2015 Увы, не подскажу. Я как первый раз приложение на андроиде написал на пятой версии студии, так и забросил. Пишу только под винду. Хотя, если не ошибаюсь, Indy поддерживают и TCP и UDP и все это вроде как должно работать на ведре. Но вот КАК работать, это вопрос. Если у Вас получится, поделитесь результатами? А то интересно же) Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 21 июня, 2015 Поделиться Опубликовано 21 июня, 2015 Ну вот, вчера наконец руки и дошли, наладил связь между виндой и ESP8266-07 через IdHTTP клиент и сервер. Сложностей особых не было. Сам контроллер прошивал через Arduino IDE. Пока коды корявые, но в скором времени планирую все подрихтовать и выложить здесь или на русском форуме по ESP. Цитата Ссылка на комментарий
0 Demon Опубликовано 25 июня, 2015 Автор Поделиться Опубликовано 25 июня, 2015 Извиняюсь за долгое отсутствие да я тоже разобрался... странновато работает... асинхронный прием... пока баловался с родной АТ прошивкой все работает. Вячеслав, прошивку для есп чтоб был чистый мост не подскажете? Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 25 июня, 2015 Поделиться Опубликовано 25 июня, 2015 Асинхронный прием в чем проявляется? У меня пока тоже есть недоработанные моменты, надеюсь на этих выходных разобраться. Цитата Ссылка на комментарий
0 Demon Опубликовано 26 июня, 2015 Автор Поделиться Опубликовано 26 июня, 2015 я делал чтение данных в отдельном потоке и все получилось... сделал тестовую программку по обмену данными с ЕСП, на телефон встала, все работает. сделал тестовую прошивку для АВРки приема и отправки данных используя АТ прошивку тоже работает, только дешифровка строковых ответов это нечто.... все тоже получилось но занимает много места в процессоре. нужен чистый мост вайфай/232. вроде у АТ прошивки начиная с 23 версии есть режим моста. надо проверить на выходных... Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 26 июня, 2015 Поделиться Опубликовано 26 июня, 2015 А, вот оно что. Для ваших задач мощностей самого ESP недостаточно? Просто я раньше как раз занимался тем же направлением, налаживал связь между контроллерами через nrf24l01. С выходом esp забыл как страшный сон. Цитата Ссылка на комментарий
0 Demon Опубликовано 27 июня, 2015 Автор Поделиться Опубликовано 27 июня, 2015 Аналогично нужен чистый мост, в программирование ЕСП пока не лазил... Цитата Ссылка на комментарий
0 Вячеслав Опубликовано 8 сентября, 2015 Поделиться Опубликовано 8 сентября, 2015 Отписался по данной теме на форуме по ESP8266, выложил исходники. Цитата Ссылка на комментарий
Вопрос
Demon
День добрый всем. Подскажите начинающему:
Есть Wifi модуль ESP8266 через который необходимо наладить связь между микроконтроллером и мобильными приложениями (Андроид, IOS)
Стоит 7ая студия, пытаюсь использовать TIDTCPClient.
На модуле запускается сервер.
В приложении клиент подключается к открытому модулем сокету
Отправка данных от приложения к модулю идет нормально
Как принимать байты от модуля на стороне клиента???
TClientSocket работает замечательно и принимает и отправляет.
Бьюсь несколько дней... толкового ответа никто не дает... заранее огромное спасибо
Почему при получении клиентом байта от сервера значения свойств Socket.InputBufferIsEmpty и Socket.InputBuffer.Size не изменяется
хотя байты он принимает.
Но если сделать хотя бы один раз процедуру Socket.ReadByte тогда эти свойства изменяются и количество принятых байт показывается правильно
и тогда можно в нужный момент остановиться при получении байт.
Но почему свойства буфера не меняются сразу???
Изменено пользователем DemonСсылка на комментарий
11 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.