реклама на сайте
подробности

 
 
> tcp_check_send выдает нулевое значение, Стек Keil 4.72
smk
сообщение Jul 27 2014, 11:40
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Функция
Код
tcp_check_send (my_socket)
стала возвращать нулевое значение. Из-за этого не происходит передачи. Раньше все работало хорошо. Внесенные изменения коснулись лишь сохранения значений во внешнюю EEPROM. Хочу спросить как можно узнать что повлияло и что вообще может повлиять. Спасибо.


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Jul 28 2014, 15:39
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



а что tcp_get_state возвращает? Может коннект по какой-то причине закрылся?
Go to the top of the page
 
+Quote Post
smk
сообщение Jul 28 2014, 18:47
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Цитата(Golikov A. @ Jul 28 2014, 18:39) *
а что tcp_get_state возвращает? Может коннект по какой-то причине закрылся?

Пробовал вот так переписывать, но результат тот же:
Код
void send_data (void)
{
  unsigned char remip[4] = {192,168,0,1};

    switch (tcp_get_state (my_socket))
    {
            case TCP_STATE_FREE:
            case TCP_STATE_CLOSED:
                /* Connection idle, send Connect Request. */
                tcp_connect (my_socket, remip, PortNumber, 0);
                break;
            case TCP_STATE_CONNECT:
                /* We are connected, send command to remote peer. */
                if (tcp_check_send (my_socket))
                    {
                        maxlen = tcp_max_dsize (my_socket);
                        if(maxlen > 255) maxlen = 255;
                        sendbuf = tcp_get_buf (maxlen);
                        memcpy (sendbuf, my_tx_buff, maxlen);
                        tcp_send (my_socket, sendbuf, maxlen);
                    }
                break;
        }
}


Попадает на ту же функцию и опять передачи нет.


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- smk   tcp_check_send выдает нулевое значение   Jul 27 2014, 11:40
- - smk   Попробовал прежние рабочие проекты. Там тоже не ра...   Jul 27 2014, 18:31
- - Golikov A.   провод сетевой отвалился... Поменялся хаб и перест...   Jul 27 2014, 19:07
|- - smk   Цитата(Golikov A. @ Jul 27 2014, 22:07) п...   Jul 28 2014, 06:05
- - Golikov A.   Данные что шлете на стороне компьютера вычитываете...   Jul 28 2014, 06:45
|- - smk   Цитата(Golikov A. @ Jul 28 2014, 09:45) Д...   Jul 28 2014, 08:01
- - Golikov A.   чудеса... а дебуг что говорит? Если включить его н...   Jul 28 2014, 19:50
|- - smk   Цитата(Golikov A. @ Jul 28 2014, 22:50) ч...   Jul 29 2014, 06:07
- - Golikov A.   простите, с LwIP перепутал, у него есть дебугер вс...   Jul 29 2014, 07:52
|- - smk   Цитата(Golikov A. @ Jul 29 2014, 10:52) п...   Jul 29 2014, 09:36
- - Golikov A.   Ну по описанию эта функция вернет 0, если 1. Нет с...   Jul 29 2014, 12:00
|- - smk   Цитата(Golikov A. @ Jul 29 2014, 15:00) о...   Jul 29 2014, 17:17
- - Golikov A.   ОООО! а разве можно в TCP калбеке что-то слать...   Jul 29 2014, 19:13
- - smk   По приходу пакета я отправлял тестовый пакет, а пр...   Jul 29 2014, 19:23
- - Golikov A.   Да... чудно это все... Могу предположить только ч...   Jul 29 2014, 20:12
|- - smk   Цитата(Golikov A. @ Jul 29 2014, 23:12) Д...   Jul 30 2014, 06:50
- - Golikov A.   ну как бы это в net_config.c указывается...   Jul 30 2014, 06:57


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 01:11
Рейтинг@Mail.ru


Страница сгенерированна за 0.01397 секунд с 7
ELECTRONIX ©2004-2016