Плохо! Прошивка закрыта 7 байтным паролем, Я надеялся, что он открыт. Его даже не стереть! либо перебор, либо в помойку.
На Habr.ru есть статья, как человек перебирал пароль с помощью отладочной платы, используя в расчете время отрицательного ответа от мк, в случае не совпадения пароля.
вы ничего не путаете? Кто-то пытался подобрать 7-мибайтный пароль? вы представляете. сколько это вариантов?
Может 7ми битный?
Может он конечно что-то не договаривает, но например motorola HC08 имеет подобную защиту в виде 8 байтного , так называемого SS пароля. ETL его подбирает, ну максисмум три минуты...
если Вам интересно вот статья https://habr.com/ru/post/469085/
Скажите, пожалуйста, почему не работает процесс сложения в приведенном мной коде, с Вашими поправками. Я компилирую его в среде ардуино. может она не понимает некоторых обособлений?
Вы же наверное, пишите в другой среде.?
Мы с Семеном вам три способа, промежду прочим, дали - все три рабочие.
протестую :) мой тоже рабочий. подтверждение в #106
тов Дискавер просто что-то мутит с начальными данными, потому у него и не работает.
Думаю ардуина не понимает такой крутой подачи...a=(a++) | 0x10
стопор где-то тут.
Товарищи, проверьте у кого есть возможность на ардуино-среде код.
нет тут никакого замута. У меня среда 1.8.15
Думаю ардуина не понимает такой крутой подачи...a=(a++) | 0x10
Лично я избегаю инкремента и декремента в сложных выражениях. Ардуины китайские и никогда не знаешь - слева направо они считают или наоборот.
Говорят, что версии для арабов справа налево...
Лично я избегаю инкремента и декремента в сложных выражениях. Ардуины китайские и никогда не знаешь - слева направо они считают или наоборот. Говорят, что версии для арабов справа налево...
void setup() {
Serial.begin(9600);
uint8_t a = 0;
for (uint8_t c = 0; c < 4; c++) {
a++;
if (c > 1){ a = a | 0x10;}
else { a = a & 0x0f;}
Serial.println(a, HEX);
}
}
void loop() {}
но это еще не все. тут в коде есть еще одна ошибка, предлагаю Девелоперу самому ее найти :)
Я её обнаружил, когда прогнал код через монитор. при переходе от 1F к "0" получаем (1F+01 | 10 =30), но как компактно исправить это я не придумал. Может покажете как?
Еще я изучил метод sadman41 & DetSimen. - с виду куча условий, сдвигов, но если присмотреться, то все четко и понятно. Код в одну строчку!
r = i | ((i & 0x02) == 0x02) << 0x04;
Код проверил, работает вообще без нареканий! Еще раз Спасибо, что потратили время и привели примеры!
P.s. Я Вам не ленивая .опа. Мой код работает! просто он неуклюжий.
Ну надо же...
Плохо! Прошивка закрыта 7 байтным паролем, Я надеялся, что он открыт. Его даже не стереть! либо перебор, либо в помойку.
На Habr.ru есть статья, как человек перебирал пароль с помощью отладочной платы, используя в расчете время отрицательного ответа от мк, в случае не совпадения пароля.
вы ничего не путаете? Кто-то пытался подобрать 7-мибайтный пароль? вы представляете. сколько это вариантов?
Может 7ми битный?
Может он конечно что-то не договаривает, но например motorola HC08 имеет подобную защиту в виде 8 байтного , так называемого SS пароля. ETL его подбирает, ну максисмум три минуты...
если Вам интересно вот статья https://habr.com/ru/post/469085/
Скажите, пожалуйста, почему не работает процесс сложения в приведенном мной коде, с Вашими поправками. Я компилирую его в среде ардуино. может она не понимает некоторых обособлений?
Вы же наверное, пишите в другой среде.?
Нет, речь шла именно о 7-байтном. Идея как раз в том, чтобы подбирать байт за байтом (по одному). Т.е. вариантов всего 256*7=1792.
А разве, в абсолютном понимании, не 2^(7*8)?
upd: Если байт за байтом, то да действительно 256*7=1792.
Скажите, пожалуйста, почему не работает процесс сложения в приведенном мной коде,
в чем выражается, что "процесс сложения не работает"?
Например, если результат работы моего и вашего кода отличается - приведите исходные данные и результат в обоих случаях.
Скажите, пожалуйста, почему не работает процесс сложения в приведенном мной коде,
в чем выражается, что "процесс сложения не работает"?
Например, если результат работы моего и вашего кода отличается - приведите исходные данные и результат в обоих случаях.
Я без претензий к Вам. Просто спрашиваю.
Вот так работал мой старый с поправкой от sadman41: 1A,1B,0C,0D,1E,1F.
С Вашим работает вот так: 10,10,00,00,10,10.
Нет пересчета в младшем ниббле.
проверяю
результат
покажите ваш код целиком
Вот
а как а и с описаны?
приложил полностью.
не вижу разницы со своим кодом.
Конкретно ваш код попробую вечером, на работе у меня ардуины нет.
не вижу разницы со своим кодом.
Конкретно ваш код попробую вечером, на работе у меня ардуины нет.
Даже вот так не работает... Наверное, среда ардуины не понимает такой многозадачности..))
вот такой код загрузите в дуину и выложите результат.
ничего не добавляйте
Вот
судя по выводу, код не точно мой.
Посмотрите. я его подредактировал.
Скопируйте его один в один и запустите
судя по выводу, код не точно мой.
Посмотрите. я его подредактировал.
Скопируйте его один в один и запустите
выборка была взята произвольно из посылки...
код не компилируется. поле loop пустое.
код не компилируется. поле loop пустое.
исправил
выборка была взята произвольно из посылки...
какой, нафик, посылки?!
Поставьте a =0; и не выдумывайте.
Когда это заработает - тогда будете к посылкам применять.
void loop() {}
код не компилируется. поле loop пустое.
исправил
выборка была взята произвольно из посылки...
какой, нафик, посылки?!
Поставьте a =0; и не выдумывайте.
Когда это заработает - тогда будете к посылкам применять.
Тихо...тихо... я имел ввиду что выборка взята не с самого первого символа из порта а произвольно с середины, но в начале все тоже самое.
Код перезалейте, я беру его из 112 сообщения
Код перезалейте, я беру его из 112 сообщения
Дискавер, судя по всему, придется вам подождать, пока я домой приду.
void loop() {}
сделано.
ответ
Код перезалейте, я беру его из 112 сообщения
Дискавер, судя по всему, придется вам подождать, пока я домой приду.
Ради БОГА! Трудитесь на здоровье.! )
Все таки не аппарат ИВЛ собираю...
Мы с Семеном вам три способа, промежду прочим, дали - все три рабочие.
Мы с Семеном вам три способа, промежду прочим, дали - все три рабочие.
протестую :) мой тоже рабочий. подтверждение в #106
тов Дискавер просто что-то мутит с начальными данными, потому у него и не работает.
не надо адманывать, я нерабочий дал.
Мы с Семеном вам три способа, промежду прочим, дали - все три рабочие.
протестую :) мой тоже рабочий. подтверждение в #106
тов Дискавер просто что-то мутит с начальными данными, потому у него и не работает.
Думаю ардуина не понимает такой крутой подачи...a=(a++) | 0x10
стопор где-то тут.
Товарищи, проверьте у кого есть возможность на ардуино-среде код.
нет тут никакого замута. У меня среда 1.8.15
не надо адманывать, я нерабочий дал.
Ну ничего, я ж подправил.
Мы с Семеном вам три способа, промежду прочим, дали - все три рабочие.
Спасибо Вам огромное. Я их проанализирую на будущее, но признаться код b707 выглядит лаконичнее.
Важно понять почему не работает.
Думаю ардуина не понимает такой крутой подачи...a=(a++) | 0x10
Лично я избегаю инкремента и декремента в сложных выражениях. Ардуины китайские и никогда не знаешь - слева направо они считают или наоборот.
Говорят, что версии для арабов справа налево...
Гриша, если это не стеб - там же скобки :)))
Писать надо всё таки по человечески )))
Писать надо всё таки по человечески )))
необязательно. Вот так тоже работает
(Ардуино Уно, ИДЕ1.8.3)
результат
странно, но похоже на постинкремент скобки не всегда действуют. В линуксе действовали. а в ардуине нет
В принципе, логично, так как запись (a++) отдает неким идиотизмом :)
но это еще не все. тут в коде есть еще одна ошибка, предлагаю Девелоперу самому ее найти :)
странно, но похоже на постинкремент скобки не всегда действуют. В линуксе действовали. а в ардуине нет
Я же грю - китайская.
Я же грю - китайская.
не, это похоже мой код китайский.
Я её обнаружил, когда прогнал код через монитор. при переходе от 1F к "0" получаем (1F+01 | 10 =30), но как компактно исправить это я не придумал. Может покажете как?
Еще я изучил метод sadman41 & DetSimen. - с виду куча условий, сдвигов, но если присмотреться, то все четко и понятно. Код в одну строчку!
Код проверил, работает вообще без нареканий! Еще раз Спасибо, что потратили время и привели примеры!
P.s. Я Вам не ленивая .опа. Мой код работает! просто он неуклюжий.