Перейти к содержанию

Вопросы от начинающих по МК


Рекомендуемые сообщения

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов
  • Создана
  • Последний ответ

Топ авторов темы

3 часа назад, my504 сказал:

Восстановить неизвестно чем созданный код корректно невозможно

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

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

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

1 час назад, ARV сказал:

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

Человек тоже не сможет. Если только код не совсем примитивен. А если он еще и оптимизирован, то вообще никакому восстановлению не подлежит.

 

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

 

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Литиевые аккумуляторы EVE Energy и решения для управления перезаряжаемыми источниками тока (материалы вебинара)

Опубликованы материалы вебинара Компэл, посвященного литиевым аккумуляторам EVE Energy и решениям для управления перезаряжаемыми источниками тока.

На вебинаре мы представили информацию не только по линейкам аккумуляторной продукции EVE, но и по решениям для управления ею, что поможет рассмотреть эти ХИТ в качестве дополнительной альтернативы для уже выпускающихся изделий. Также рассмотрели нюансы работы с производителем и сервисы, предоставляемые Компэл по данной продукции. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

12 часа назад, ARV сказал:

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

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

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

а так ничего сложного :) !

Там получается один файл в моем случае 60 тысяч строчек кода, вот такого (если интересно):

//----- (0040B690) --------------------------------------------------------
signed int __cdecl sub_40B690(int a1)
{
  signed int result; // eax@2
  signed int v2; // eax@3
  _DWORD *v3; // ecx@3
  int v4; // esi@8
  int v5; // ST0C_4@8
  int v6; // ST08_4@8

  if ( a1 )
  {
    v2 = 0;
    v3 = (_DWORD *)(a1 + 12);
    do
    {
      if ( !*v3 )
        break;
      ++v2;
      v3 += 14;
    }
    while ( v2 < 31 );
    if ( v2 == 31 )
    {
      result = -1;
    }
    else
    {
      v4 = a1 + 56 * v2;
      *(_DWORD *)(v4 + 16) = 0x2000000;
      v5 = *(_BYTE *)(v4 + 18);
      v6 = *(_BYTE *)(v4 + 19);
      *(_DWORD *)(v4 + 12) = 5;
      sub_402010((char *)(v4 + 24), aD_D_D_0, v6, v5, 0);
      *(_DWORD *)(v4 + 4) = aJun262012_0;
      *(_DWORD *)(v4 + 8) = a145950;
  ...

 

Можно сделать все! Но чем больше можно, тем больше нельзя!

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Ну я и говорю, IDA уже умеет для винды и пары ходовых компиляторов делать сишный исходники, немного магии поиска-замены и чуть-чуть понимания цели, и можно жить. Но для AVR не умеет вообще... Хотя паттерны узнаваемы весьма.

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

27 минут назад, ARV сказал:

для винды и пары ходовых компиляторов

Только не для компиляторов, а для ассемблеров. Про компилятор которым это что то было скомпилировано и слинковано, оно знать ни чего и не должна в общем то.

Можно сделать все! Но чем больше можно, тем больше нельзя!

Ссылка на комментарий
Поделиться на другие сайты

4 часа назад, ruhi сказал:

Только не для компиляторов, а для ассемблеров

Почитайте про IDA Pro, чтобы не говорить таких странных и не правильных вещей.

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

Только что, ARV сказал:

Почитайте про IDA Pro, чтобы не говорить таких странных и не правильных вещей.

не хочу :), итак башка лопается

Можно сделать все! Но чем больше можно, тем больше нельзя!

Ссылка на комментарий
Поделиться на другие сайты

17 часов назад, ARV сказал:

Ну я и говорю, IDA уже умеет для винды и пары ходовых компиляторов делать сишный исходники, немного магии поиска-замены и чуть-чуть понимания цели, и можно жить. Но для AVR не умеет вообще... Хотя паттерны узнаваемы весьма.

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

Мало того, что нужно написать код, так ведь его еще нужно как то осмысленно совершенствовать. Восстановленный подобными инструментами код ущербен в принципе. В нем можно разобрать 99% смысла, при том, что вся новизна останется в неразобранном 1%. 

Беспонтовый инструмент...

ЗЫ. Могу дать упражнение для примера сказанного мной выше. Есть пара функций обработки сигнала. АСМ без комментариев и осмысленных названий переменных и меток. Предлагается определить алгоритм обработки сигнала реализуемый этими двумя функциями. Причем результат одной нужен при работе другой.

Слабо? :crazy::bye:

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, my504 сказал:

Слабо?

Сколько платите? И в какие сроки ;) ибо только это определяет, слабо или нет.

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

Я реверс-инжинирингом ПО занимался пару раз, и некоторое время следил, как этим занимаются другие. Полноценный реверс алгоритма по коду не делается, приходится и тесты всякие делать, и в "песочнице" запускать и сравнивать... Дело непростое, но выполнимое.

Что касается смысла, то я вполне согласен с вами: заниматься восстановлением исходника на ЯВУ занятие бессмысленное и бесперспективное. Однако, если за это платят... почему нет?

В реальном реверсе нет нужды не только в получении полного исходника на ЯВУ, но и в понимании точного алгоритма. Как правило, всегда интересует тот самый 1%, и то, скорее всего, лишь в плане того, как его обойти или выдрать и применить в своём коде. В основном приходится искать команду JNZ с целью заменить её на JZ :) Ну или 10...110 таких команд.

Изменено пользователем ARV

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

8 часов назад, ARV сказал:

Сколько платите? И в какие сроки

:lol:

Это МОЙ код. Это УПРАЖНЕНИЕ. Ребус. За него не платят. 

Точнее, если и платят, то составителю ребуса.  :crazy:

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

38 минут назад, my504 сказал:

Ребус. За него не платят. 

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

:) а приз решившему ребус?

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Ссылка на комментарий
Поделиться на другие сайты

21 минуту назад, Дмитрий Мамедиев сказал:

 только два входа для отслеживания сигнала int0 и int1. Мне нужно три, есть альтернатива?

Есть!

image001.png.ad4e97b6ada3a25bf5cd6aff7a412a43.png

Никогда не спорьте с дураками. Они опустят Вас до своего уровня и победят за счет опыта.

 

 

Ссылка на комментарий
Поделиться на другие сайты

36 минут назад, Дмитрий Мамедиев сказал:

Мне нужно три, есть альтернатива?

вход таймера можно использовать - его тоже можно сконфигурировать на отлов фронтов, но придется исхитриться, хотя может получиться даже лучше чем на простых INT-ах,

зависит от специфики задачи.

Compare там есть?

Изменено пользователем ruhi

Можно сделать все! Но чем больше можно, тем больше нельзя!

Ссылка на комментарий
Поделиться на другие сайты

48 минут назад, Дмитрий Мамедиев сказал:

Мне нужно три, есть альтернатива?

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

WhatsApp Image 2019-05-20 at 15.46.31.jpeg

Ссылка на комментарий
Поделиться на другие сайты

Доброго времени. Хочу найти ресурс где можно подробно почитать про компиляцию и линковку проекта для stm32f103 в линуксе. В гугле много инфы на счет самого мейка и с ним более менее понятно, а вот процесс компиляция под конкретный контроллер мне найти не удалось. Хотелось бы узнать на зависимости файлов CMSIS и весь алгоритм. Хочу научится компилировать проект из консоли, а в идеале прикрутить все необходимое к нужному мне текстовому редактору. Рассматривал готовые мейкфайлы, но написаны они достаточно сложно для моего познания в синтаксисе мейка. Пока планирую написать хотя бы элементарный мейк.

Изменено пользователем Mars36
Ссылка на комментарий
Поделиться на другие сайты

10 часов назад, Дмитрий Мамедиев сказал:

два входа для отслеживания сигнала int0 и int1. Мне нужно

Любой порт так же поддерживает прерывания по перепаду уровня, для некоторых целей их вполне можно использовать. Но есть ньюансы. Прерывание по порту - одно на все выводы, но раз тебе нужно просто третье то не имеет значения. Просто разрешить прерывание только по одному выводу порта, и его изменение будет дёргать обработчик. И второй ньюанс - в отличие от int0/1 это прерывание синхронное и стробируется частотой ядра, короткие импульсы короче двух периодов тактовой частоты можно упустить... Фронт и спад не различает - одинаково реагирует на оба. Не работает в режиме глубокого сна - этим прерыванием вывести контроллер с глубокого сна нельзя.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

6 часов назад, Alexeyslav сказал:

Любой порт так же поддерживает прерывания по перепаду уровня

где ты увидел это в АТМега8?

Мудрость приходит вместе с импотенцией...

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

Ссылка на комментарий
Поделиться на другие сайты

В 20.05.2019 в 21:32, Mars36 сказал:

Хочу найти ресурс где можно подробно почитать про компиляцию и линковку проекта для stm32f103 в линуксе.

Вот для начала. http://we.easyelectronics.ru/STM32/ispolzovanie-gcc-dlya-stm32f100.html

Нужно будет в makefile поменять серию устройства.

В 20.05.2019 в 21:32, Mars36 сказал:

проекта для stm32f103

Тут еще важны буквы, от них зависит память устройства и линия. Для классического f103C8T6 это medium density если не ошибаюсь.

Если описать алгоритм вкратце: нужно скомпилировать main (юзерский код) и startup (настройка памяти, прерываний и всего прочего, эта штука компилируется из ассемблерного файла, предоставляемого производителем, только надо найти в нужном формате), у меня это Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/gcc_ride7/startup_stm32f10x_ml.s. Для всей серии stm32f1x испольщуется один заголовочный файл #include <stm32f10x.h> , выбор конкретного камня задается дефайном DEVCLASS (лучше всего в makefile через флаг -D ), например -D DEVCLASS =  STM32F10X_MD. Но дополнительно надо еще указать путь к инклюдам на конкретные камни, например Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/

Мало того, при линковке надо еще указать распределение памяти и еще какие-то параметры. Это делается указанием линкеру файла настроек через флаг -T, например -T ld/stm32f10xC8.ld

Из того что вспомнил, вроде все. Можно бы еще упомянуть прошивку, но это уже будет зависеть от программатора. Я пробовал с stm32flash (uart bootloader) и самодельным st-link2 (прошитым через тот же stm32flash, естественно) через openocd.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

#define dirX PINB7
#define dirY PINB6
#define dirZ PIND4
#define stepX PIND1
#define stepY PIND0
#define stepZ PIND6

int massz[4]={(PORTC|=(1<<PINC5)),(PORTC|=(1<<PINC4)),(PORTC|=(1<<PINC3)),(PORTC|=(1<<PINC2))};

ISR(INT0_vect)
{
	//unsigned int i=0;
	if (PIND&(1<<dirZ))
	{
		if (PIND&(1<<stepZ))
		{
			massz[2];
		}	
		//i--;
	}
	else 
	{
		if (PIND&(1<<stepZ))
		{
			massz[0];
		}
		//i++;
		
	}
}
int main(void)
{
	INTinit();//вызываем функцию инициализации прерывания
	sei();//устанавливаем бит глобального разрешения прерываний
	port_ini();
}

что я делаю не так? настройки INT0 не привожу

 

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • Занятное чтиво, считай "мультиметр своими руками". Не ну а что, были же советские конструкции на кр572пв2) Прецизионные резисторы и В1-12 где-то валяются... Осталось выкрутиться с коммутацией) Чешется иногда.
    • Похоже так, не кто и не подскажет, что это за микруха... 
    • Я извиняю кто тут флудил ! ??  были удаленны другие коменты! , я не поливал не кого грязью, а если вы так считаете напишите жалобу на меня и пусть модератор мне предъявит за нарушение/ за оскорбления и флуд . И касаемо "вчера сделал" после комента пользователя fessit вспомнил и проверил и все получилось (с ножной напутал тут диод нужен) и также коменты colorad, и Aviator88 всем спасибо. Все работает как надо чего тут выкладывать мне всего-то обычный диод и всё. А что касаемо ваших и подобных коментов это и есть флуд. Устроили охоту на инакомыслящих мол  посмел такой сякой задать вопрос  на техническом форуме о переделки платы зарядки акумов  в светодиодный драйвер какой ужас !!   Поражаюсь блин с таких придираться к словам, и при этом не зная как переделать сразу начинают парировать ошибками автора в тексте запятые, и случайно перепутанные Амперы с мА (Хотя понятно о чем идет речь, но и за это уцепились ) это любимый метод когда по делу толком  нечего сказать, а за изварат и нестандартный подход подколоть что бы ну даже не хочу писать.... А все выпадки мол эта платка не для этого.... ну что тут сказать не надо ограничивать себя мол что подумают или оно якобы не будет работать,название не то... сделал проверил работает! замечательно! да и плевать! зачем покупать, ждать если уже есть под рукой то что тебе нужно!!! и искусственно загонять себя в рамки блин отказываться использовать тпешку только потому что указанно применение для зарядки лития  инакомыслие, богохульство, бред, итд ну дело ваше я не заставляю насильно переделывать. Странно что на тех форуме это вызывает такие вопросы где казалось бы нормально: починить переделать что-то итд. Странные представление что изврат/бред, а что нет учитывая что все, и до переделки всё работало почти отлично.... с каких пор бред не понятно учитывая что все подходит, да в целом нечего дурного нет в этой дорабодке только польза !! И что-то тут нет подобных высказываний 2е стандарты или инквизиция проворонила  
    • На этой схеме не хватает резисторов, немного открывающих силовые транзисторы. Без них начальный самозапуск  не будет происходить. Поищи их на плате БП.  Они где-то в районе сотни кОм между базой и коллектором.  
    • Может у нас разные были, либо палёный, не будем спорить. У каждого свой вкус.    Ещё слышал, но не слушал, что на TPA3255 хорошие. Присматривал такой как-то. Вы знакомы с таким?
    • Вы самим вообще нормальный??? Под полтинник жалоб!!!!!! Вы чего? Вы говна поели? До утра оставлю сообщение, в надежде на ответ. Но по опыту - никто так и не отпишется...
    • @Vic73 типовая китайская для лент ? биполярники и второй трансформатор ? 
  • Похожий контент

×
×
  • Создать...