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

 
 
4 страниц V  « < 2 3 4  
Closed TopicStart new topic
> Помогите разобраться с PRINTF, Большой обьем выводимой информации - 5К
Димон Безпарольн...
сообщение Feb 18 2018, 14:54
Сообщение #46


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Хоть тут мне и приписали что я обвиняю в чем - то авторов MBED TLS (вероятно тоже "по делу"), хочу отдать должное - ребята грамотные, постарались на славу. Благодаря debug информации, проверкам конфигурации такая сложная библиотека не так уж трудно отлаживается. Респект.

Что касается самого DBUG, то сколько тут местные "помощники" ни надрывались, ничего нового не придумали - не можешь ждать, делай буфер шире. Как промежуточное решение - задержка перед критическим во времени местом выполнения, чтобы войти в этот кусок кода с чистым буфером. Тогда буфер можно сделать меньше. Это вкратце.

Сообщение отредактировал Димон Безпарольный - Feb 18 2018, 14:59
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 18 2018, 15:23
Сообщение #47


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Димон Безпарольный @ Feb 18 2018, 17:54) *
то сколько тут местные "помощники" ни надрывались, ничего нового не придумали - не можешь ждать, делай буфер шире.

Ровно так же никто из профи не сможет ничего придумать, чтобы по вашему желанию "2х2=5".
Грамотное решение - попросить вторую сторону не присылать данные, к обработке которых вы не готовы.
TCP позволяет это делать, причем очень гибко и грамотно. Если вы не хотите разобраться как это сделать, то да - увеличивайте буфер,
но не надо в код вставлять задержки, даже если сейчас это работает. И точно не нужно хамить людям, которые считают такой подход
дурным тоном программирования.
Go to the top of the page
 
+Quote Post
Эдди
сообщение Feb 18 2018, 15:32
Сообщение #48


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Цитата(Димон Безпарольный @ Feb 18 2018, 17:54) *
Хоть тут мне и приписали что я обвиняю в чем - то авторов MBED TLS (вероятно тоже "по делу"), хочу отдать должное - ребята грамотные, постарались на славу.

Да ладно!
То-то чрез одно место оно работает…
Хотя, надо еще уточнить, по чьей вине: то ли вы, товарищ, неправильно документацию читаете, то ли авторы этой библиотеки...
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 18 2018, 15:59
Сообщение #49


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Цитата(adnega @ Feb 18 2018, 18:23) *
Ровно так же никто из профи не сможет ничего придумать, чтобы по вашему желанию "2х2=5".
Грамотное решение - попросить вторую сторону не присылать данные, к обработке которых вы не готовы.
TCP позволяет это делать, причем очень гибко и грамотно. Если вы не хотите разобраться как это сделать, то да - увеличивайте буфер,
но не надо в код вставлять задержки, даже если сейчас это работает. И точно не нужно хамить людям, которые считают такой подход
дурным тоном программирования.



Никто и не собирался изначально хамить. Хамство и переход на личности начался с 29 поста. Я лишь вежливо просил не гадить в этой теме. Но "помошник" так и не понял о чем его просят.

Что касается 2х2 =5, люди предлагают иногда нестандартные решения. На это и надеялся. Но нарвался на хама . знал бы - не начинал бы сюда писать.

На стадии handshake сервер ждать не будет. Так обьяснили инженеры IBM. Связано с загрузкой серверов. Да и я не представляю сейчас как это сделать через M95 в котором TCP реализован внутри.



Цитата(Эдди @ Feb 18 2018, 18:32) *
Да ладно!
То-то чрез одно место оно работает…
Хотя, надо еще уточнить, по чьей вине: то ли вы, товарищ, неправильно документацию читаете, то ли авторы этой библиотеки...

Ну Вам конечно виднее. Вы же код писали - не я. Работает нормально. Третий час - без сбоев.

Сообщение отредактировал Димон Безпарольный - Feb 18 2018, 16:03
Go to the top of the page
 
+Quote Post
Эдди
сообщение Feb 18 2018, 16:07
Сообщение #50


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Это оно без сбоев работает, пока не понадобилось еще что-то добавить. А там опять та же песня пойдет?
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Feb 18 2018, 16:10
Сообщение #51


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Цитата(Димон Безпарольный @ Feb 18 2018, 22:59) *
На стадии handshake сервер ждать не будет. Так обьяснили инженеры IBM. Связано с загрузкой серверов. Да и я не представляю сейчас как это сделать через M95 в котором TCP реализован внутри.

Завтра у них немного изменится размер hadshake, сертификатов, или задержка в одном месте появится, а в другом исчезнет и у вас внезапно всё перестанет работать. Или вдруг сервер сменится....
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 18 2018, 16:43
Сообщение #52


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Цитата(HardEgor @ Feb 18 2018, 19:10) *
Завтра у них немного изменится размер hadshake, сертификатов, или задержка в одном месте появится, а в другом исчезнет и у вас внезапно всё перестанет работать. Или вдруг сервер сменится....

Вы наверно стандарт не читали. Весь мир работает с серверами MQTT IBM. В России кучу железа понаделали. Откуда столько страхов?
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 18 2018, 16:59
Сообщение #53


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Димон Безпарольный @ Feb 18 2018, 18:59) *
Да и я не представляю сейчас как это сделать через M95 в котором TCP реализован внутри.

Почитать Инструкцию
Цитата
When the data transfer should be suspended, the CTS line is set inactive until the transfer from the receiving buffer has
completed. When the receiving buffer is ok to receive more data, CTS goes active once again.
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 18 2018, 17:04
Сообщение #54


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Я уже писал, что аппаратная реализация не предусматривает пару RTS - CTS. К тому же в модулях ESP - 05 эти сигналы наружу не выведены. В изделии два радиомодуля.



Сообщение отредактировал Димон Безпарольный - Feb 18 2018, 17:14
Go to the top of the page
 
+Quote Post
adnega
сообщение Feb 18 2018, 17:32
Сообщение #55


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Димон Безпарольный @ Feb 18 2018, 20:04) *
Я уже писал, что аппаратная реализация не предусматривает пару RTS - CTS. К тому же в модулях ESP - 05 эти сигналы наружу не выведены. В изделии два радиомодуля.

Вам же для отладки нужно. Киньте проводком. Когда все отладите - отключите debug-вывод портянок и уберете провод.
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Feb 18 2018, 17:32
Сообщение #56


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Цитата(Димон Безпарольный @ Feb 18 2018, 23:43) *
Вы наверно стандарт не читали. Весь мир работает с серверами MQTT IBM. В России кучу железа понаделали. Откуда столько страхов?

А мне и не надо читать. Если в программе требуется подбор задержек - значит программа неправильно построена. И эта неправильность внезапно вылезет в самый неподходящий момент. Вы же сами писали:
Цитата(Димон Безпарольный)
На стадии handshake сервер ждать не будет. Так обьяснили инженеры IBM. Связано с загрузкой серверов.

А завтра у инженеров IBM что-нибудь еще возникнет и они еще чего-нибудь поменяют....
Вот в этом и состоит разница между между профессиональным и дилетантским(читай начинающего) подходом, профессионал во-первых руководствуется правилами и стандартами при разработке, во-вторых он видит и понимает "подводные камни" которые могут возникнуть или точно проявятся и смотрит в перспективу. А дилетант говорит - у меня всё работает отлично, остальное меня не волнует.
У меня студенты на практику приходят, типичные дилетанты, я им это сразу говорю sm.gif и они делятся на две группы - одних ничего не интересует, главное чтобы заработало, они начинают подбирать в программах задержки, в схемах резисторы и конденсаторы, а другие пытаются разобраться и потом осознанно применяют.

Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 19 2018, 01:51
Сообщение #57


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Стандарт как раз такое допскает. Задержка нужна была на стадии отладки как временное решение. Ее уже нет, как и вывода массива DBUG информации. Стандарт на TLS допускает такую работу сервера. Дилетант как раз и говорит:

Цитата
А мне и не надо читать.


и не разобравшись в сути делает вывод:
Цитата
Если в программе требуется подбор задержек


Ничего подбирать не требовалось. Читайте выше. Не делайте глупых выводов раз Вы кого - то там учите.

Цитата(adnega @ Feb 18 2018, 20:32) *
Вам же для отладки нужно. Киньте проводком. Когда все отладите - отключите debug-вывод портянок и уберете провод.

Так уже. DEBUG отключен. Библиотека TLS работает AS - IS, без изменения кода библиотеки.

Сообщение отредактировал Димон Безпарольный - Feb 19 2018, 01:48
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 26 2018, 16:34
Сообщение #58


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Может кому пригодится - когда начал дорабатывать вывод в порт заметил что контроллер виснет на строке

Код
while(PC_TxHead != PC_TxTail)


если переменные объявлять без volatile. Получается так:



Если объявлять:

Код
volatile uint8_t  PC_TxHead=0;
volatile uint8_t  PC_TxTail=0;


То получается совсем другая картина:





Оптимизация Level 3.

Сообщение отредактировал Димон Безпарольный - Feb 26 2018, 16:35
Go to the top of the page
 
+Quote Post
x893
сообщение Feb 26 2018, 22:20
Сообщение #59


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Это уже всем ёжикам известно.
Но за заботу огромное спасибо.
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Feb 27 2018, 05:33
Сообщение #60


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Какие же все таки люди злые.
Go to the top of the page
 
+Quote Post

4 страниц V  « < 2 3 4
Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th April 2024 - 01:12
Рейтинг@Mail.ru


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