Easyelectronics.ru • Просмотр темы - Алгоритм билдер (описания, без программ)

Easyelectronics.ru

Электроника для всех
Текущее время: 16 авг 2018, 01:08

Часовой пояс: UTC + 5 часов


Правила форума


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


    • JLCPCB - Прототипы 10 PCBs всего за 2$ (100*100mm, 2-layer)
    • Как мы делаем платы, смотрите на YouTube
    • Крупнейшая китайская фабрика прототипов. 300000+ заказчиков и 10000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин комплектующих.

Начать новую тему Ответить на тему  [ Сообщений: 1181 ]  На страницу Пред.  1 ... 41, 42, 43, 44, 45, 46, 47, 48  След.
Автор Сообщение
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 17:41 
Старожил

Зарегистрирован: 22 мар 2010, 22:54
Сообщения: 3996
Mikesoft писал(а):
циклы - это один из трех "кубиков", из которых состоит любой алгоритм. ... (при условии, что алгоритм имеет хотя бы один цикл).

:)))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 17:50 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2481
Откуда: Санкт-Петербург
Тогда уж X-комбинатор - X ≡ λx.((xS)K)
Попробуйте через стрелку Пирса любой из комбинаторов выразить...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 18:30 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2014, 13:20
Сообщения: 325
Откуда: правая юрта тундры
..


Последний раз редактировалось PodnimatelPingvinov 10 июл 2015, 17:39, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 18:36 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2014, 13:20
Сообщения: 325
Откуда: правая юрта тундры
..


Последний раз редактировалось PodnimatelPingvinov 10 июл 2015, 17:39, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 19:05 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2481
Откуда: Санкт-Петербург
АБ тут вообще ни при чём: на самом деле всё крутится вокруг вас. Подразнить евангелиста - это ж святое. То же самое было бы, если бы вы упорно доказывали бы, например, преимущества каких-нибудь экзотических носков перед всеми остальными.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 19:43 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
aamonster писал(а):
Так что это один из трёх кубиков императивного программирования ;-).

ну ебстебственно, речь про императивное :-)
только пынгвыну другие парадигмы принципиально незнакомы, поэтому и квалификатор и не упоминается...
aamonster писал(а):
. И вообще, три кубика - это комбинаторы S, K, I
ну какое тут нахрен лямбда-исчисление? ему стрелочки нужны. причем как настоящей бляндинке - "красивые стрелочки"
//Mt писал(а):
aamonster писал(а):
это комбинаторы S, K, I

Вот ещё! Стрелка пирса - наше всё!
А как же штрих Шеффера? :-))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 20:09 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2481
Откуда: Санкт-Петербург
Mikesoft, у S три аргумента, у K два, у I один. Полная свобода рисования стрелочек!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 28 янв 2015, 20:19 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
aamonster писал(а):
Mikesoft, у S три аргумента, у K два, у I один. Полная свобода рисования стрелочек!

Хосспадя! да не пугай ты пынгвына словами "комбинатор", "аргумент"... Не поймет-с... сбежит ишшо. а кто ж нас веселить-то будет?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 29 янв 2015, 00:14 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2014, 13:20
Сообщения: 325
Откуда: правая юрта тундры
..


Последний раз редактировалось PodnimatelPingvinov 11 июл 2015, 11:44, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 14 фев 2015, 18:48 
Старожил

Зарегистрирован: 02 июл 2010, 23:41
Сообщения: 399
aamonster писал(а):
Душить - никакой необходимости: как только "молодой-бестолковый" посмотрит список вакансий - он не обнаружит в нём АБ-программистов ;-). Итого, другие языки всё равно придётся учить, а когда найдёт работу - ещё и VCS пользоваться. В общем, всё поймёт сам.
Так что троллить - только ради удовольствия!

По вопросу трудоустройства АБ-шника.
Поскольку речь идет об устройстве на работу, то исключаем случаи начинающих, любителей, школьников, хобби и т.д.
Кто такой профессиональный АБ-шник?
Первый случай - это профессиональный программист, АБ изучил для расширения своих возможностей. Для программиста изучить АБ – грубо говоря, плевое дело. Основа – ассемблер, другая мнемоника. А вот расширение возможностей существенное. Появляется возможность быстро разрабатывать и отлаживать скоростные проекты и т.д.
Чтобы не быть голословным, приведу пример отсюда с форума.
Читаю в разделе AVR («Отладка в сложном проекте»), как мучается человек с отладкой программы, неделю не может найти явную ошибку. Кошмар! А какие варианты решения отладки предлагают! Пару регистров 74НС595! Детский самострой.
Я уже как-то в шутку писал, жалко СИ-шников, так мучаются с отладкой.
АБ-шник с дебаггером решит проблему за час, в самом худшем случае, за несколько часов. Пара часов и неделя - явный выигрыш программиста, владеющего АБ.

Второй случай – электронщик. Изучить АБ несложно, но позволяет в большинстве случаев без проблем разрабатывать электронные узлы.
Электронщик, не знающий СИ, конечно, не пойдет работать программистом. Согласен, что это некоторое ограничение при выборе работы. Но, если уж очень потребуется, можно изучить СИ.
Электронщик пойдет на вакансию электронщика. На мой взгляд, при разработке электронных изделий электронщик гораздо предпочтительнее программиста.
Опять же, чтобы не быть голословным, приведу пример отсюда с форума.
Читаю, кажется, в разделе AVR, как человек делал управление грузовым лифтом кнопками.
С точки зрения электронщика – полный финиш! Прицепить к МК, к такому тонкому и деликатному созданию, грязные силовые цепи. С самого начала ясно, что из-за сбоев не будет работать. Там человек уперся в то, с чего электронщик начал бы работу – с вопроса обеспечения защиты от помех. Есть известные методы, при правильном применении которых там, скорее всего, сразу бы все заработало.
Я бы, конечно, начал разработку такого проекта даже не с защиты от помех, а с вопроса тестирования помехозащищенности. Я лифтами не занимался. Может быть, там есть какие-нибудь методы, нормы, ГОСТы, нормали и т.д. на проверку защиты от помех.
Вопрос ведь серьезный. На одном этаже коляску с дитем в лифт затягивают, на другом подцепился сварщик – заварить водопровод или лоджию, вполне реальная ситуация.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 14 фев 2015, 19:24 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2481
Откуда: Санкт-Петербург
Alexandr_1, прочитайте ещё раз тред про отладку в сложном проекте... Там аб-шник не только не отладит за час - даже не начнёт отладку: аб ведь не умеет симулировать gsm-модем, да ещё в рантайме? ;-)
Да и повторить у себя баг автор не мог.
(на самом деле ситуация "дебагером не подобраться" довольно обыденная - настолько, что есть сектанты, верящие в бесполезность дебагера).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 15 фев 2015, 01:32 
Старожил

Зарегистрирован: 22 мар 2010, 22:54
Сообщения: 3996
Alexandr_1, не пропадай надолго! продолжай нас радовать постами! :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 16 фев 2015, 13:00 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
Alexandr_1 писал(а):
По вопросу трудоустройства АБ-шника.
Поскольку речь идет об устройстве на работу, то исключаем случаи начинающих, любителей, школьников, хобби и т.д.
Кто такой профессиональный АБ-шник?
Первый случай - это профессиональный программист, АБ изучил для расширения своих возможностей. Для программиста изучить АБ – грубо говоря, плевое дело. Основа – ассемблер, другая мнемоника. А вот расширение возможностей существенное. Появляется возможность быстро разрабатывать и отлаживать скоростные проекты и т.д.

профессиональный программист не будет пользоваться дебиллером. Естественно, изучить дебиллер - "плевое дело", но цель изучения будет только одна: перевести с дебиллерного говнокода, написанного начинающими либо дебилами, на нормальный язык. Либо на классический ассемблер (что даст возможности использовать штатные аппноты, тонны готового кода, проверенные инструменты), и дает возможность быстро выполнять критический код/экономить память, либо на си - что тоже дает те же возможности, понижает скорость исполнения, но повышает скорость и надежность разработки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 16 фев 2015, 13:17 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
Alexandr_1 писал(а):
Второй случай – электронщик. Изучить АБ несложно, но позволяет в большинстве случаев без проблем разрабатывать электронные узлы.
Электронщик, не знающий СИ, конечно, не пойдет работать программистом. Согласен, что это некоторое ограничение при выборе работы. Но, если уж очень потребуется, можно изучить СИ.

Собственно, о чем и речь. Си - достаточно известный, устоявшияся язык. Описанный в тоннах книг, и сотнях курсов. В том числе десятков видеокурсов современного дистанционного образования. Если электронщик где-то учился, то си он наверняка знает (или знает фортран, или бейсик, или PL/1, или Паскаль - от которых до сей гораздо ближе, чем до дебиллера).
Т.е. по факту си электронщик уже практически знает, остается вопрос практики.
Цитата:
Электронщик пойдет на вакансию электронщика. На мой взгляд, при разработке электронных изделий электронщик гораздо предпочтительнее программиста.

Эмбеддинг - штука тонкая. И чтобы правильно распределить задачи между железом и софтом - нужно знать и одно, и другое. Например, недавно попадался пример "трехпрограммного радиоприемника". (нашел: [url]https://akpc806a.wordpress.com/2013/08/02/%D1%86%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%BE%D0%B9-%D1%82%D1%80%D0%B5%D1%85%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D0%B9-%D1%80%D0%B0%D0%B4%D0%B8%D0%BE%D0%BF%D1%80%D0%B8%D0%B5%D0%BC/] тут[/url]) Электронщик решит класссическими фильтрами. а программист вполне справится "голым процессором". Причем оба решения вполне имеют право на жизнь. И у каждого - свои недостатки и свои преимущества.
Кстати, на дебиллере писать цифровую фильтрацию - "замонаетесь"..

Цитата:
Опять же, чтобы не быть голословным, приведу пример отсюда с форума.
Читаю, кажется, в разделе AVR, как человек делал управление грузовым лифтом кнопками.
С точки зрения электронщика – полный финиш! Прицепить к МК, к такому тонкому и деликатному созданию, грязные силовые цепи. С самого начала ясно, что из-за сбоев не будет работать. Там человек уперся в то, с чего электронщик начал бы работу – с вопроса обеспечения защиты от помех. Есть известные методы, при правильном применении которых там, скорее всего, сразу бы все заработало.
Я бы, конечно, начал разработку такого проекта даже не с защиты от помех, а с вопроса тестирования помехозащищенности. Я лифтами не занимался. Может быть, там есть какие-нибудь методы, нормы, ГОСТы, нормали и т.д. на проверку защиты от помех.

так кто же вы? если не программист (программист не полез бы на дебиллер), не электронщик (про стандарты защиты от помех не слушали). Не руководитель, ибо тогда понимали бы необходимость соответсвия инструментов станндарту, необходимость совместной разработки,и необходимость формального тестирования, необъходимость документирования и самодокументирования....
Кто же вы тогда?


Последний раз редактировалось Mikesoft 17 фев 2015, 11:39, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 16 фев 2015, 14:02 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
aamonster писал(а):
Alexandr_1, прочитайте ещё раз тред про отладку в сложном проекте... Там аб-шник не только не отладит за час - даже не начнёт отладку: аб ведь не умеет симулировать gsm-модем, да ещё в рантайме? ;-)
Да и повторить у себя баг автор не мог.
(на самом деле ситуация "дебагером не подобраться" довольно обыденная - настолько, что есть сектанты, верящие в бесполезность дебагера).

не только не отладит - он подобное на дебиллере и не напишет.
Забить 60к по сути ассеммблерным кодом - это нужно либо усиленно говнокодить, либо писать вдесятером (а средств коллективной разработки у дебиллера нет), либо писать года полтора - но тогда этот проект станет неактуальным.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 22 фев 2015, 15:48 
Старожил

Зарегистрирован: 02 июл 2010, 23:41
Сообщения: 399
aamonster писал(а):
Alexandr_1, прочитайте ещё раз тред про отладку в сложном проекте... Там аб-шник не только не отладит за час - даже не начнёт отладку: аб ведь не умеет симулировать gsm-модем, да ещё в рантайме? ;-)
Да и повторить у себя баг автор не мог.
(на самом деле ситуация "дебагером не подобраться" довольно обыденная - настолько, что есть сектанты, верящие в бесполезность дебагера).

Насчет того, что АБ-шник не начнет отладку – это вы хватили. Вы, похоже, не знаете, как АБ-шник отлаживает. Скажу про свой опыт.
Симулятор использую только для отладки участков программ, не взаимодействующих с внешними устройствами (скажем умножение, вычисление какой-нибудь функции и т.д.).
При работе с внешними устройствами использую нормальный дебаггер, позволяющий легко отлаживать при реальной работе.
А то, что предлагают СИ-шники в том разделе про отладку в реале, мне представляется «детским самостроем».
Регистры 74НС595 со светодиодами. Эти регистры я использовал, когда только начинал осваивать МК и ничего не знал. Сразу выплыли проблемы.
Во-первых, маленький объем информации (у меня было 2 регистра, следовательно, 2 байта).
Во-вторых, принятые байты затираются последующими байтами.
В-третьих, нет защиты от перепадов при работе МК (спящий режим и т.д.). В общем, туфта это.
Использование UART и SPI – тоже плохо, они заняты основной программой.
Пользуюсь таким дебаггером. Через два свободных вывода МК программно выбрасывается в дебаггер нужные байты. В дебаггере стоит свой МК, который принимает
байты и посылает их в компьютер.
Преимущество: объем встраиваемой программы очень невелик (около 20 команд), каждый выброс одного байта – всего несколько ассемблерных команд.
Плюс скорость выброса байта, защита от нескольких перепадов на выводах МК.
Простое дешевое устройство, но решает проблемы отладки.

В описываемом случае автор повторить дефект не смог, но ведь у испытателей были регулярные сбои.
Я бы в описываемом случае в программе сделал выбросы требуемых байтов в каждой ветке и отдал устройство вместе с дебаггером испытателям. Объема свободной памяти (300…400) достаточно для работы дебаггера.
Зависла программа у испытателей, пришел, посмотрел выброшенные байты и получил информацию, куда прыгнула программа и почему. Ну час, два для решения проблемы.
Там высказывалась версия об аппаратном сбое. В некоторых случаях дебаггер плюс АБ позволяет решать и эту проблему.
Кстати, у меня недавно был аналогичный случай. Пожаловались в цехе, в новой партии стали иногда зависать изделия. Изделия непростые, стоят 4 МК.
Как обычно в таких случаях, сделал выбросы байтов (числа 1, 2, 3 и т.д.) по ходу выполнения программы.
Смотрю выброшенные байты, идут числа 3, 4, 5 и все, числа 6 нет.
Смотрю программу – после точки 5 программа обязательно должна была дойти до точки 6. В этом плане АБ очень удобен, путь выполнения программы банален.
Ясно, аппаратный сбой, не стал даже выяснять, куда прыгнула программа. Внимательно посмотрел печатную плату – оказалось, заказали изготовление платы в другую организацию, а те из-за какой-то несогласованности залили контакты на печатной плате под крепящими винтами защитным лаком. А монтажники были новые и не знали, что там нужен был контакт. Конденсаторы, сбрасывающие помеху на корпус, повисли в воздухе, и пошли сбои.
Дефект выявил, наверно, за час. А СИ-шник, похоже, мучился бы не один день.
При работе с цехом мне нельзя неделями маяться с такими дефектами, нажалуются начальству, а оно сделает соответствующие выводы.

Mikesoft писал(а):
Эмбеддинг - штука тонкая. И чтобы правильно распределить задачи между железом и софтом - нужно знать и одно, и другое. Например, недавно попадался пример "трехпрограммного радиоприемника". (нашел: [url]https://akpc806a.wordpress.com/2013/08/02/%D1%86%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%BE%D0%B9-%D1%82%D1%80%D0%B5%D1%85%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D0%B9-%D1%80%D0%B0%D0%B4%D0%B8%D0%BE%D0%BF%D1%80%D0%B8%D0%B5%D0%BC/] тут[/url]) Электронщик решит класссическими фильтрами. а программист вполне справится "голым процессором". Причем оба решения вполне имеют право на жизнь. И у каждого - свои недостатки и свои преимущества.
Кстати, на дебиллере писать цифровую фильтрацию - "замонаетесь"..

Кроме распределения функций между программой и железом у электронщика есть основная важная функция – грамотное проектирование «железа», недопущение «детских» решений и т.д.
В том случае с грузовым лифтом, на мой взгляд, в ту организацию надо либо принять на работу профессионального электронщика (знает или не знает СИ - несущественно), либо обращаться в контору, в которой есть профессиональный электронщик для контроля, либо не заниматься проектированием электронных узлов, представляющих угрозу здоровью и жизни людей.
Mikesoft писал(а):
так кто же вы? если не программист (программист не полез бы на дебиллер), не электронщик (про стандарты защиты от помех не слушали). Не руководитель, ибо тогда понимали бы необходимость соответсвия инструментов станндарту, необходимость совместной разработки,и необходимость формального тестирования, необъходимость документирования и самодокументирования....
Кто же вы тогда?

По образованию – не программист и не электронщик.
А что, электронщик должен знать вопросы защиты от помех для случая лифтов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 22 фев 2015, 21:24 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2012, 00:31
Сообщения: 1797
Откуда: Новокузнецк
2Alexandr_1, если честно, у вас не дебаг, а ананизм какой то. Обычно делается нормальный логер, который пишет все штатные и нештатные ситуации. Отловом этих ситуаций занимаются специальные модули программы, который присасываются к своим модулям и мониторят их.
Сбор статистики происходит в автоматическом или полуавтоматическом режиме (в зависимости от наличия связи). Парсинг и проверка логов в автоматическом режиме. О том, что устройство виснет в определенном месте я узнаю еще раньше, чем кто-то заметит и поймет закономерность, что из новой партии устройства глючат. К тому же устройства должны проходить тестирование на стенде после сборки, и такие косяки выявляться до установки на объект. Это я к тому, что еще в самом начале срача я спрашивал у пингвина, как он тестирует свое ПО и производит контроль качества. Ответ был "никак". Вы видимо тоже этого не делаете. А может потому, что АБ не позволяет это делать легко? Может быть он неудобен? Может быть нет нужных инструментов?
Цитата:
Изделия непростые, стоят 4 МК.

Обычно это значит, что вы не правильно выбрали аппаратную платформу.
Цитата:
Объема свободной памяти (300…400) достаточно для работы дебаггера.

А если нужно за неделю статистику собрать?

_________________
elisey.su


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 23 фев 2015, 00:04 
Старожил

Зарегистрирован: 22 мар 2010, 22:54
Сообщения: 3996
Alexandr_1, не забывай нас, пиши чаще! :))) всегда интересно читать, как фантастика:)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 10:47 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
Alexandr_1 писал(а):
Пожаловались в цехе, в новой партии стали иногда зависать изделия. Изделия непростые, стоят 4 МК.
Как обычно в таких случаях, сделал выбросы байтов (числа 1, 2, 3 и т.д.) по ходу выполнения программы.
Смотрю выброшенные байты, идут числа 3, 4, 5 и все, числа 6 нет.
Смотрю программу – после точки 5 программа обязательно должна была дойти до точки 6. В этом плане АБ очень удобен, путь выполнения программы банален.
Ясно, аппаратный сбой, не стал даже выяснять, куда прыгнула программа. Внимательно посмотрел печатную плату – оказалось, заказали изготовление платы в другую организацию, а те из-за какой-то несогласованности залили контакты на печатной плате под крепящими винтами защитным лаком. А монтажники были новые и не знали, что там нужен был контакт. Конденсаторы, сбрасывающие помеху на корпус, повисли в воздухе, и пошли сбои.
Дефект выявил, наверно, за час. А СИ-шник, похоже, мучился бы не один день.
При работе с цехом мне нельзя неделями маяться с такими дефектами, нажалуются начальству, а оно сделает соответствующие выводы.

Т.е. у вас там все дебилы? Нет ни документации, ни тестирования - ни на железо, ни на программы????


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 11:43 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:48
Сообщения: 3740
Откуда: Звенигород
Mikesoft писал(а):
Естественно, изучить дебиллер - "плевое дело", но цель изучения будет только одна: перевести с дебиллерного говнокода, написанного начинающими либо дебилами, на нормальный язык.

Что полезного или умного есть на этом дебиллере, что бы это потребовалось переводить на другие языки?
Сколько времени у пынгвина просили выложить хоть какие-то примеры созданных на нем программ и до сих пор тишина.

_________________
От Парижа до Находки с водкой лучше, чем без водки!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 12:14 
Старожил

Зарегистрирован: 20 мар 2010, 17:31
Сообщения: 1394
Откуда: Челябинск
PRC писал(а):
Mikesoft писал(а):
Естественно, изучить дебиллер - "плевое дело", но цель изучения будет только одна: перевести с дебиллерного говнокода, написанного начинающими либо дебилами, на нормальный язык.

Что полезного или умного есть на этом дебиллере, что бы это потребовалось переводить на другие языки?
Сколько времени у пынгвина просили выложить хоть какие-то примеры созданных на нем программ и до сих пор тишина.

Полезного и умного - ничего нет. Но может понадобиться восстановить работоспособность поделок, сделанных на дебиллере. Или портировать на новое железо, например.
не всегда писать "с нуля" эффективнее. Хотя в случае дебиллерщеков - скорее всего лучше начинать с перепостановки задачи.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 21:14 
Старожил

Зарегистрирован: 22 июн 2010, 21:53
Сообщения: 976
Откуда: Brussels
Alexandr_1 писал(а):
Там высказывалась версия об аппаратном сбое. В некоторых случаях дебаггер плюс АБ позволяет решать и эту проблему.
Кстати, у меня недавно был аналогичный случай. Пожаловались в цехе, в новой партии стали иногда зависать изделия. Изделия непростые, стоят 4 МК.
Как обычно в таких случаях, сделал выбросы байтов (числа 1, 2, 3 и т.д.) по ходу выполнения программы.
Смотрю выброшенные байты, идут числа 3, 4, 5 и все, числа 6 нет.
Смотрю программу – после точки 5 программа обязательно должна была дойти до точки 6. В этом плане АБ очень удобен, путь выполнения программы банален.
Ясно, аппаратный сбой, не стал даже выяснять, куда прыгнула программа. Внимательно посмотрел печатную плату – оказалось, заказали изготовление платы в другую организацию, а те из-за какой-то несогласованности залили контакты на печатной плате под крепящими винтами защитным лаком. А монтажники были новые и не знали, что там нужен был контакт. Конденсаторы, сбрасывающие помеху на корпус, повисли в воздухе, и пошли сбои.

Вы извините, но это за гранью добра и зла.
В таком варианте отлаживать вообще ничего не нужно - в крешдампе должен остаться стектрейс где сразу (в 95% случаев :) будет видна точка отказа.

А еще есть стандарты iec 61508 и iso 26262 (iso наверняка отображается в какой-нить гост) требования по функциональной безопасности и требования к STL в частности. Именно STL должен закрывать такие вопросы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 21:52 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2481
Откуда: Санкт-Петербург
offtopic: //Mt, а как вообще в embedded-индустрии делаются такие привычные мне на большом компе плюшки, как стектрейсы и т.п.? Я понимаю, как это всё делать руками (но надо хранилище для всего этого, кучу assert-подобных макросов для "падений" и специальный макрос в начале каждой функции), знаю, как это делается на большом компе (но, опять же, падения обеспечиваются exceptions, а stack trace собирается за счёт того, что компилируется со стек-фреймами, чего, подозреваю, на мелких контроллерах стараются избежать для оптимизации), знаю про возможности типа __cyg_profile_func_enter/__cyg_profile_func_exit, но как это малой кровью (минимум дополнительного кода + минимум runtime-расходов) получить, скажем, на atmega - не представляю.
Или вы просто сразу закладываете проц потолще и памяти побольше (плюс какой-то nvram для логов), исходя из того, что экономия на упрощении разработки/отладки всё равно перекроет эти расходы?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 24 фев 2015, 22:16 
Старожил

Зарегистрирован: 22 июн 2010, 21:53
Сообщения: 976
Откуда: Brussels
aamonster писал(а):
offtopic: //Mt, а как вообще в embedded-индустрии делаются такие привычные мне на большом компе плюшки, как стектрейсы и т.п.? Я понимаю, как это всё делать руками (но надо хранилище для всего этого, кучу assert-подобных макросов для "падений" и специальный макрос в начале каждой функции), знаю, как это делается на большом компе (но, опять же, падения обеспечиваются exceptions, а stack trace собирается за счёт того, что компилируется со стек-фреймами, чего, подозреваю, на мелких контроллерах стараются избежать для оптимизации), знаю про возможности типа __cyg_profile_func_enter/__cyg_profile_func_exit, но как это малой кровью (минимум дополнительного кода + минимум runtime-расходов) получить, скажем, на atmega - не представляю.
Или вы просто сразу закладываете проц потолще и памяти побольше (плюс какой-то nvram для логов), исходя из того, что экономия на упрощении разработки/отладки всё равно перекроет эти расходы?

Скорее последнее.

Есть и другие методы, но тут уже нужно спрашивать правильных профессионалов. Лично я не разработчик, но имею некоторое отношение к обеспечению безопасности (в том числе и всмысле правильного дизайна и кода) продуктов. К тому же наши продукты никак не назовешь мелкими. Хотя экономят всё-равно на всем.

Про мелкие контроллеры хорошо бы поймать кого-то из автомобильной индустрии, но врядли они сюда забредут.
с удовольствием почитал бы хороший материал про STL.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Алгоритм билдер (описания, без программ)
СообщениеДобавлено: 01 мар 2015, 19:40 
Старожил

Зарегистрирован: 02 июл 2010, 23:41
Сообщения: 399
elisey писал(а):
если честно, у вас не дебаг, а ананизм какой то. Обычно делается нормальный логер, который пишет все штатные и нештатные ситуации. Отловом этих ситуаций занимаются специальные модули программы, который присасываются к своим модулям и мониторят их.
Сбор статистики происходит в автоматическом или полуавтоматическом режиме (в зависимости от наличия связи). Парсинг и проверка логов в автоматическом режиме. О том, что устройство виснет в определенном месте я узнаю еще раньше, чем кто-то заметит и поймет закономерность, что из новой партии устройства глючат. К тому же устройства должны проходить тестирование на стенде после сборки, и такие косяки выявляться до установки на объект. Это я к тому, что еще в самом начале срача я спрашивал у пингвина, как он тестирует свое ПО и производит контроль качества. Ответ был "никак". Вы видимо тоже этого не делаете. А может потому, что АБ не позволяет это делать легко? Может быть он неудобен? Может быть нет нужных инструментов?


Дебаггер - очень удобная вещь, с его применением отладка резко упростилась, в пределах часа, максимум два при явном дефекте. А тратить неделю для поиска, в общем, явного дефекта, это, похоже, специфика программирования МК на СИ.
Насколько я представляю, логер занимает место, а МК маленькие. Кроме того, часто МК заняты скоростным управлением каких-либо устройств, поэтому МК не может надолго отвлекаться. У меня нередки ситуации, когда в нужном месте нет времени даже на выброс одного байта в дебаггер. В таких случаях нужный байт выбрасываю в регистр, а затем, когда у МК появляется окно, он выбрасывает байт (или массив байтов) в дебаггер.

Насчет тестирования – вначале проверяю сам, затем проверяют испытатели, затем опытная эксплуатация. За это время должны отловиться все ошибки.
В АБ вроде как нет особых инструментов тестирования. Наверно, неплохо бы внедрить, но только с учетом специфики МК.

elisey писал(а):
…Изделия непростые, стоят 4 МК….
Обычно это значит, что вы не правильно выбрали аппаратную платформу.

Обоснуйте.
У меня в аппарате несколько независимых систем, выполненных в виде отдельных блоков. Каждый блок – непростой узел. Я поставил в каждом блоке по МК и связал их по SPI.
Думаю, в моей ситуации переход к применению нескольких МК – отличное решение.
1 Резко упростилась написанием программ. Каждый МК занят своей задачей.
2 Резко упростилась доработка и модернизация аппарата.
3 Резко упростилась ремонт – для быстрой диагностики можно легко заменить подозреваемый в дефекте блок.

elisey писал(а):
Цитата:
Объема свободной памяти (300…400) достаточно для работы дебаггера.

А если нужно за неделю статистику собрать?

Дебаггер является промежуточным звеном между отлаживаемым МК и компьютером. Он на большой скорости получает байты от отлаживаемого МК себе в буфер, а затем отправляет их в компьютер, буфер при этом освобождается. Так что накопление байтов происходит в компьютере.
А в отлаживаемом МК есть только ассемблерные команды для выброса байта – это мизер. Для выброса каждого байта – несколько команд.
Но для сбора недельной статистики я пока дебаггер не использовал.

Mikesoft писал(а):
Т.е. у вас там все дебилы? Нет ни документации, ни тестирования - ни на железо, ни на программы????

Неправильно пишите, все есть. Монтажницы собирали по документации, дефект выявился при тестировании.

//Mt писал(а):
Вы извините, но это за гранью добра и зла.
В таком варианте отлаживать вообще ничего не нужно - в крешдампе должен остаться стектрейс где сразу (в 95% случаев :) будет видна точка отказа.
А еще есть стандарты iec 61508 и iso 26262 (iso наверняка отображается в какой-нить гост) требования по функциональной безопасности и требования к STL в частности. Именно STL должен закрывать такие вопросы.

Подойдет ли предложенный вами метод в моей ситуации?
Маленький периферийный МК, память небольшая, постоянно «молотится» с электронным узлом, отвлекаться некогда. Есть небольшие временные окна, когда МК отвлекается для связи с центральным МК.
Во время окна сделал выброс байтов для дебаггера, нашел ошибку. Выбросить несколько байтов – на это еще есть время. А больше затраты времени приведут к нарушению работы электронного блока, что может привести к его поломке. Такое бывало, а это крайне нежелательно, т.к. блок дорогой. Так что экспериментировать с отладкой бывает непросто и опасно.
Да и что даст точка отказа? При аппаратном сбое программа может сбиться в любой точке.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1181 ]  На страницу Пред.  1 ... 41, 42, 43, 44, 45, 46, 47, 48  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB