Дмитрий Вас Опубликовано 25 марта, 2021 Поделиться Опубликовано 25 марта, 2021 а чем мой вариант хуже? раньше работал по крайней мере 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
IMXO Опубликовано 25 марта, 2021 Поделиться Опубликовано 25 марта, 2021 гланды тоже можно через анус вырывать , чем хуже обычного варианта. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Дмитрий Вас Опубликовано 25 марта, 2021 Поделиться Опубликовано 25 марта, 2021 Да нормальный код. Вот подумал может скобки лишние? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторовОбязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Электронщик Опубликовано 25 марта, 2021 Поделиться Опубликовано 25 марта, 2021 (изменено) 4 часа назад, Дмитрий Вас сказал: не пойму почему переменная speed не меняется попробуйте переменную speed назначить как volatile short speed; , скорее всего в этом проблема Изменено 25 марта, 2021 пользователем Электронщик 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
optima Опубликовано 25 марта, 2021 Поделиться Опубликовано 25 марта, 2021 4 часа назад, Дмитрий Вас сказал: if (next_state == 192) (speed)++; if (next_state == 192) { speed++; } разницу замечаете? 0 Сергей. Ссылка на комментарий Поделиться на другие сайты Поделиться
Литиевые аккумуляторы EVE Energy и решения для управления перезаряжаемыми источниками тока (материалы вебинара)Опубликованы материалы вебинара Компэл, посвященного литиевым аккумуляторам EVE Energy и решениям для управления перезаряжаемыми источниками тока.На вебинаре мы представили информацию не только по линейкам аккумуляторной продукции EVE, но и по решениям для управления ею, что поможет рассмотреть эти ХИТ в качестве дополнительной альтернативы для уже выпускающихся изделий. Также рассмотрели нюансы работы с производителем и сервисы, предоставляемые Компэл по данной продукции. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Дмитрий Вас Опубликовано 26 марта, 2021 Поделиться Опубликовано 26 марта, 2021 @optima да но если в теле if одна строка , то можно фигурные скобки не ставить. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Литиевые батарейки и аккумуляторы от мирового лидера EVE в КомпэлКомпания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
optima Опубликовано 26 марта, 2021 Поделиться Опубликовано 26 марта, 2021 1 час назад, Дмитрий Вас сказал: фигурные скобки не ставить Можно, а вдруг вам завтра понадобится еще что то добавить в тело! А на кой там круглые скобки нужны? 0 Сергей. Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Вас Опубликовано 26 марта, 2021 Поделиться Опубликовано 26 марта, 2021 все нормально с энкодером, просто непропай был. теперь другой вопрос. эта переменная отображается вместо с минусом буква.дисплей по типу лсд 1602 короче не -200 к примеру а п200 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
optima Опубликовано 27 марта, 2021 Поделиться Опубликовано 27 марта, 2021 Что накодил то и получил! Другого не дано) 0 Сергей. Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Вас Опубликовано 27 марта, 2021 Поделиться Опубликовано 27 марта, 2021 Аааа понял. Ну да логично 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ruhi Опубликовано 27 марта, 2021 Поделиться Опубликовано 27 марта, 2021 (изменено) 25.03.2021 в 20:57, Дмитрий Вас сказал: volatile unsigned int next_state, prev_state; это должно быть перед while! 25.03.2021 в 19:45, Электронщик сказал: МК и рассчитывает контрольную сумму у себя, потом сравниваем А в МК вы тоже можете менять загрузчик? тогда не понятно в чем проблема, две программы должны соответствовать друг другу только одна передает данные, а вторая принимает, соответствие должно быть по анализу этих передаваемых/принимаемых данных. Передавайте длину в байтах и читайте это кол-во байтов из принятых данных не зависимо от того сколько пришло "лишних" байтов в блоке если надо передавать блоками. Изменено 27 марта, 2021 пользователем ruhi очепятка 0 Можно сделать все! Но чем больше можно, тем больше нельзя! Ссылка на комментарий Поделиться на другие сайты Поделиться
Электронщик Опубликовано 27 марта, 2021 Поделиться Опубликовано 27 марта, 2021 8 часов назад, ruhi сказал: А в МК вы тоже можете менять загрузчик? тогда не понятно в чем проблема, две программы должны соответствовать друг другу только одна передает данные, а вторая принимает, соответствие должно быть по анализу этих передаваемых/принимаемых данных. Уже все сделал, открываю бинарник в проге на компе, получаю количество байт, считаем сколько раз отправить посылку по 256 байт(передаем это количество на МК), отправляем по 256 байт, и высчитываем количество последней посылки, и для нее отдельно все считаем. Все четко работает 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 7 июня, 2021 Поделиться Опубликовано 7 июня, 2021 unsigned char button_long,button_shot; int speed; if (button_shot && speed==0)//первое короткое { start(speed ); } if (button_shot)//любое другое короткое { revers(speed ); } if (button_long)//длинное { stop(speed ); } int stop (int s) { for(;s >=0;s --) for(;s <=0;s ++) return s ; } int start (int s) { for(;s <=400;s ++) return s ; } int revers (int s) { int s_new; if(s>0) { s_new = ~s + 1; for(;s >= s_new ; s--) } if(s<0) { s_new = ~s + 1; for (;s<=s_new; s++) } return s; } Есть такой набросок. Вопрос, все ли здесь на ваш профессиональный взгляд работоспособно. И второй вопрос. Цикл for будет выполнен мгновенно, а нужно его замедлить и с задаваемой скоростью. Все что на ум приходит это через таймер. Что то типа этого: for(;s<=s_nem;) { if(flag_timer2) {flag_timer=0; s++;} } 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 7 июня, 2021 Поделиться Опубликовано 7 июня, 2021 Встречный вопрос. А на ваш взгляд, всё работоспособно ? И работает ли оно так, как задумано ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 На мой взгляд все логично написано , но в работе не проверял. Отладку ещё не освоил. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 Думаю, для начала Вам стоит проверить работоспособность кода, на задуманный алгоритм. Если пойдёт что-то не так, то уже подключите отладку. Ну а потом уже можно и вопросы задавать, если они появятся Иначе каков смысл в написании кода, не проверяя его работоспособности ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 8 часов назад, Alex сказал: Думаю, для начала Вам стоит проверить работоспособность кода, на задуманный алгоритм. Как это сделать? И как думаете таймер в цикле for будет работать? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 А ещё такой вопрос. Вот такая библиотека, выходит работать не будет на Винде? Я правильно понял? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Yurkin2015 Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 (изменено) 16 minutes ago, Дмитрий Мамедиев said: таймер в цикле for будет работать? Таймер будет работать, нет проблем. Вам бы после изучения оператора цикла for(;;) неплохо бы прочитать про оператор while() Тут другая проблема в Вашем коде. Например, если в самом начале speed = 0; // присвоили 0 start(speed); speed = ? // по-прежнему speed равна 0 потому, что ваши функции не изменяют значения переменной speed. Изменено 8 июня, 2021 пользователем Yurkin2015 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 4 минуты назад, Yurkin2015 сказал: speed = 0; // присвоили 0 start(speed); speed = ? // по-прежнему speed равна 0 потому, что ваши функции не изменяют значения переменной speed. Почему? Разве int start (int s) { for(;s <=400;s ++) return s ; } Не увеличит? 10 минут назад, Yurkin2015 сказал: Вам бы после изучения оператора цикла for(;;) неплохо бы прочитать про оператор while() А чем плох for? speed объявлена как глобальная переменная. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Yurkin2015 Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 (изменено) 10 minutes ago, Дмитрий Мамедиев said: Почему? Разве В функции start(int s) будет увеличиваться новая переменная s, но после окончания увеличения эта переменная s так и останется внутри функции неиспользованная. Более того, при компиляции: оптимизатор увидит такое неиспользованное дело и просто выкинет этот кусок кода из программы. Изменено 8 июня, 2021 пользователем Yurkin2015 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 Вы наверное имеете ввиду что функции int start (int s) нужно писать до int main (void) а внутри использовать start(speed)? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 4 часа назад, Дмитрий Мамедиев сказал: Как это сделать? Что сделать ? Проверить код ? Вы шутите ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Дмитрий Мамедиев Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 Нет серьезно, может вы имеете ввиду какой-то особый способ мне неизвестный. Я ведь начинающий... 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 8 июня, 2021 Поделиться Опубликовано 8 июня, 2021 2 часа назад, Дмитрий Мамедиев сказал: Вы наверное имеете ввиду что функции int start (int s) нужно писать до int main (void) а внутри использовать start(speed)? Дмитрий, Вам не кажется, что Вы свой изначальный вопрос плавно переводите на тему "обучение азам языка СИ" ? Только что, Дмитрий Мамедиев сказал: Нет серьезно, может вы имеете ввиду какой-то особый способ мне неизвестный. Я ведь начинающий... Ну, когда я, например, пишу код для какого-то железа, я на нём его и проверяю. Других вариантов я не вижу... 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.