@ru_electronics

Страница 307 из 718
Dmitry
08.06.2017
19:10:11
Как исключить (или подтвердить) недостаток памяти? И я не выделяю память динамически.

Serg
08.06.2017
19:34:32
в динамическом выделении памяти нет ничего криминального

только если это делать одноразово

Google
Serg
08.06.2017
19:37:18
иногда очень помогает

Кто как учитывает электронные компоненты? Что в наличии, купил - надо раскидать по наличию, отправил на монтаж - надо списать и т.д.

Petr
08.06.2017
19:47:46
на we.ee был былинный тред

поищи

777Andrej
08.06.2017
19:47:56
в голове :)

Konstantin
08.06.2017
19:47:57
Serg
08.06.2017
19:53:10
я не сравнивал скорость

мне некритично

Ivan
08.06.2017
20:25:58
Кто как учитывает электронные компоненты? Что в наличии, купил - надо раскидать по наличию, отправил на монтаж - надо списать и т.д.
Кстати ради интереса однажды поискал на радиокоте, нашлось несколько тем, в которых начинали разрабатывать программки. Даже на qt писали. Но конечно сейчас актуально не десктопном версия, а хотя бы веб-интерфейс, чтобы ещё и с мобилы было удобно смотреть.

Petr
08.06.2017
20:26:55
да есть такое

идите ищите тред на we.easyelectronics

Serg
08.06.2017
21:03:52
видел, все какой-то примитив

а если еще и с веб интерфейсом - вообще жопа

Google
Dmitry
09.06.2017
00:09:13


Alexander
09.06.2017
00:18:03
Неинициализированная переменная где-то или срыв стека? (Бесконечная рекурсия?)

Dmitry
09.06.2017
00:25:53
на неинициализированную оно бы ругалось варнингом. рекурсии нет. возможно, срыв стека — это всё случается где-то в части кода, где много вложенных вызовов. но при этом оно может пару раз нормально отработать, а потом вот так упасть. увеличил в два раза размер стека в задаче (до 256) — та же фигня. xPortGetFreeHeapSize() стабильно показывает ~400 байт

Danil
09.06.2017
06:16:27
а что за РТОС у тебя? вроде есть во freeRTOS инструменты для контроля таких вещей встроенные и есть мануал , как отловить такие глюки. По всем симптомам похоже на переполнение стека. Может ещё переполнение буферов быть - например ты объявил буфер на 32 байта а по инкременту указателя залил 33 и блольше. Случается редко, но случается

и вообще printf оооочень жрущая стек штука

попробуй заметь на неформатированный тупой вывод и посмотри чтл будет

Serg
09.06.2017
06:40:57
и вообще printf оооочень жрущая стек штука
а сколько жрет? альтернативы удобной нет, везде использую snprintf для формирования строк

kaktys
09.06.2017
06:51:10
при использовании формата - может рекурсивно

ОлегЪ
09.06.2017
06:53:08
и вообще printf оооочень жрущая стек штука
в avr оказалось, что sprintf жрет меньше флэша, чем эта же обработка строки стандартными строковыми функциями

Danil
09.06.2017
06:55:16
реализации sprintf и printf бывают разные. Есть специально оптимизированные под МК - на ee было несколько хороших постов на эту тему

можно для теста заменить форматированный вывод на тупой принт и проверить работу кода

ОлегЪ
09.06.2017
06:56:20
я использовал то, что было в codevision avr, могу скинуть асемблерный исходник, если интересно, он вроде там был

ОлегЪ
09.06.2017
06:57:39
извиняюсь, не скину, он там бинарником

Danil
09.06.2017
06:58:12
я не против printf и sprintf - это проверено временем, удобно и стандартно. Но в условиях МК могут быть проблемы с ресурсами - такты и память

ОлегЪ
09.06.2017
07:01:40
с использованием строковых функций Build: 263 22113 line(s) compiled No errors 1 warning(s) Bit variables area: 0x2 to 0x2 Bit variables size: 1 byte(s) Data Stack area: 0x100 to 0x2FF Data Stack size: 512 byte(s) Estimated Data Stack usage: 81 byte(s) RAM Global variables area: 0x300 to 0x36D RAM Global variables size: 110 byte(s) Hardware Stack area: 0x36E to 0x8FF Hardware Stack size: 1426 byte(s) Heap size: 0 byte(s) EEPROM usage: 0 byte(s), 0,0% of EEPROM Program size: 2989 words (5978 bytes), 18,2% of FLASH с использованием sprintf Build: 264 22113 line(s) compiled No errors 2 warning(s) Bit variables area: 0x2 to 0x2 Bit variables size: 1 byte(s) Data Stack area: 0x100 to 0x2FF Data Stack size: 512 byte(s) Estimated Data Stack usage: 81 byte(s) RAM Global variables area: 0x300 to 0x369 RAM Global variables size: 106 byte(s) Hardware Stack area: 0x36A to 0x8FF Hardware Stack size: 1430 byte(s) Heap size: 0 byte(s) EEPROM usage: 0 byte(s), 0,0% of EEPROM Program size: 2948 words (5896 bytes), 18,0% of FLASH

4 байта разницы, если я правильно понял

вот это sprintf(str, "%d,%d,%d", temp_ds18b20, temp_dht22, hum_dht22); против этого itoa(temp_ds18b20, uart_str); // преобразуем температуру ds18b20 в строку strcat(uart_str, ","); // ставим запятую itoa(temp_dht22, str); // преобразуем температуру dht22 в строку strcat(uart_str, str); // дописываем в конец строки strcat(uart_str, ","); // ставим запятую itoa(hum_dht22, str); // преобразуем влажность dht22 в строку strcat(uart_str, str); // дописываем в конец строки

а сколько жрет? альтернативы удобной нет, везде использую snprintf для формирования строк
был еще xprintf, реализация специально для мк, но я лично не проверял как оно, на гихабе вроде есть

Serg
09.06.2017
07:22:40
кстати, для безопасной работы со строками рекомендую https://www.sudo.ws/todd/papers/strlcpy.html

Google
Serg
09.06.2017
07:25:09
просто sprintf, strcat, strcpy запретил бы в embed, нет контроля размера буфера

https://ru.wikipedia.org/wiki/Strlcpy

Dmitry
09.06.2017
08:09:36
а что за РТОС у тебя? вроде есть во freeRTOS инструменты для контроля таких вещей встроенные и есть мануал , как отловить такие глюки. По всем симптомам похоже на переполнение стека. Может ещё переполнение буферов быть - например ты объявил буфер на 32 байта а по инкременту указателя залил 33 и блольше. Случается редко, но случается
да, фриртос мне кажется, что это не переполнение. ведь при оном стек переполнился бы во время первого прогона программы. А тут «рандомно». На третий-четвёртый раз исполнения одной и той же ветки вызовов. есть ли мануалы по отлову такого? скорее тут какая-то порча стека. strcat'ом, например. а как быстро настигает «расплата» за порчу стека? уже на следующем переключении задач?

Danil
09.06.2017
08:23:18
да вроде может и сразу падать, а может и в другой раз. Зависит от того, что портится. Если я правильно помню то у каждой задачи свой стек и область памяти под переменные, т.к. каждая задача не работает как единственная в системе и все переключение контекста это работа ОС. Может поднасрать и соседней задаче тоже

Dmitry
09.06.2017
08:29:36


Rizvan
09.06.2017
22:08:38
А что это за терминал?

Dmitry
09.06.2017
22:13:20
Realterm (это я в поисках нормального терминала пробую)

Roman
10.06.2017
17:05:24
Привет, подскажите по феритам, можно ли заказать нужный размер феритового кольца по индивидуальным размерам или можно ли складывать два феритовых кольца, одно над другим?

Eugene
10.06.2017
17:07:56
возьми третье колечко, сотри его в порошок разведи с клеем и склей два оставшихся

а если просто так типа приложить друг к другу хз, врятли будет что хорошего

Антон
10.06.2017
17:09:24
Ребят

Просьба есть

У кого спуджер есть железный, самый популярный - какая длина у него, можете померять?

777Andrej
10.06.2017
17:12:14
kaisi-i8



Антон
10.06.2017
17:14:59
kaisi-i8
Только вопрос - это "стандартная" длина? Самая популярная?

777Andrej
10.06.2017
17:17:37
Только вопрос - это "стандартная" длина? Самая популярная?
Если честно, интересует вопрос, а какое значение имеет длина? Давайте модель, посмотрим.

Roman
10.06.2017
17:18:06
Google
Антон
10.06.2017
17:19:33
Если честно, интересует вопрос, а какое значение имеет длина? Давайте модель, посмотрим.
Да тут так совпало, что появилась возможность сделать кожаный пенал для инструментов (ну блажь у меня такая, "мажор", ага). Но их самих под рукой нету. Самый длинный из них был спуджер, вот и надо узнать размер, чтобы дать высоту пенала для работы

Danil
11.06.2017
09:04:27
Dmitry
11.06.2017
10:18:13
а SIM800c можно использовать только как BT модуль, не используя GSM?

Serg
11.06.2017
10:39:21
а почему нет, только какой смысл?

есть же подешевле варианты, или нет?

Dmitry
11.06.2017
10:40:20
ну оно 300р стоит. в наличии, с поддержкой, с поддержанием наличия, от нормального производителя

Serg
11.06.2017
10:50:05
где оно 300 руб стоит?

Dmitry
11.06.2017
10:50:22
в мт системах

Serg
11.06.2017
10:51:52
аа, ну да, так и стоит

а hc-05 сколько стоит?

на али - 3 бакса

в два раза дешевле

Dmitry
11.06.2017
10:53:54
без поддержки, наличия на локальных складах и таможней, которая съест эту разницу

угу. но иногда глючит. особенно последняя версия

Serg
11.06.2017
10:54:33
тогда может лучше взять чип?

Dmitry
11.06.2017
10:56:21
сходу компетенций не хватит. но после SIM800 можно и чип.

kaktys
11.06.2017
11:02:32
Новости по моим cp2104 - купил другие, с платками сразу, передул на свои и все завелось, т.е. есть уже и ср2104 поддельные

Petr
11.06.2017
11:04:47
ну 2102 уже были

kaktys
11.06.2017
11:10:41
А 2104 пока нет

Google
Dmitry
11.06.2017
11:33:21
ну 2102 уже были
Ага, мне попадались

kaktys
11.06.2017
11:38:34
Вот теперь 2104

Rodion
11.06.2017
14:00:42
Привет всем! ??

Вопрос немного по электротехнике и больше по охране труда

Есть измеренные силы тока *прикосновения*, при которых возникают болевые ощущения, неотпускание и фибриляция. Но расчёты в основном встречаю на тему трёхфазного включения, и в итоге ничего не могу из этого подчерпнуть. ? А как преобразовать постоянную силу тока на контроллере в силу тока прикосновения, чтобы понять какой величины ток будет нести опасность?

Кстати, подскажите, пожалуйста, канал Telegram по электротехнике (или охране труда); всё-таки мой вопрос больше к ним относится

Danil
11.06.2017
16:43:04
Есть измеренные силы тока *прикосновения*, при которых возникают болевые ощущения, неотпускание и фибриляция. Но расчёты в основном встречаю на тему трёхфазного включения, и в итоге ничего не могу из этого подчерпнуть. ? А как преобразовать постоянную силу тока на контроллере в силу тока прикосновения, чтобы понять какой величины ток будет нести опасность?
на переменке вроде нет тока неотпускания. фибриляция как правило от 0,1 А. и пофигу на 3х фазку. постоянка, да отличается именно тем, что нельзя отпустить провод ибо мышцы клинит. и токи опасные там ниже и ожоги от постоянки жестче т. к. проникает глубже в ткани

про контроллер вообще не понятно что ты имел в виду

Sanchez
11.06.2017
19:55:18
Кстати, подскажите, пожалуйста, канал Telegram по электротехнике (или охране труда); всё-таки мой вопрос больше к ним относится
были тут пара параллельных чятика по автоматике, контроллерам и вот этому всему. Перидически пост со списком чятов репостили, но он чот совсем уплыл. Гуглить по тегам асутп и прочим кипиа.

ОлегЪ
11.06.2017
19:57:08
#ссылка С молчаливого позволения админов накидаю свой обновленный список инженерных чатов: @ru_arduino https://t.me/ru_arduino @ru_electronics https://t.me/ru_electronics @proembedded https://t.me/proembedded @ru_raspberry https://t.me/ru_raspberry @pro_esp8266 https://t.me/pro_esp8266 @ru_iot https://t.me/ru_iot @telecatethysis https://t.me/telecatethysis @ru_ASUTP https://t.me/ru_ASUTP @ru_CAD https://t.me/ru_CAD

Страница 307 из 718