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

Помогите с инкрементом в операторе ветвления


Юстас

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

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

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

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

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

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

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

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

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

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

@COKPOWEHEU я понимаю о чём говорит язык си. Тут готовым ассемблерным блокам, придали коротенькие названия (абревиатуры). Тут не надо строить дом из кирпичей, бери готовые панели и строй небоскрёб)) Очень удобно, но не очень понятно... 

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

Особенности хранения литиевых аккумуляторов и батареек

Потеря емкости аккумулятора напрямую зависит от условий хранения и эксплуатации. При неправильном хранении даже самый лучший литиевый источник тока с превосходными характеристиками может не оправдать ожиданий. Технология, основанная на рекомендациях таких известных производителей литиевых источников тока, как компании FANSO и EVE Energy, поможет организовать правильный процесс хранения батареек и аккумуляторов. Подробнее>>

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

Секреты депассивации литиевых батареек FANSO EVE Energy

Самыми лучшими параметрами по энергоемкости, сроку хранения, температурному диапазону и номинальному напряжению обладают батарейки литий-тионилхлоридной электрохимической системы. Но при длительном хранении происходит процесс пассивации. Разберем в чем плюсы и минусы, как можно ее избежать или уменьшить последствия и как проводить депассивацию батареек на примере продукции и рекомендаций компании FANSO EVE Energy. Подробнее>>

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

А чем примечателен этот контроллер?

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

Цитата

всегда, Си например не умеет делать циклический сдвиг 

Умеет, но только в пределах одного многобайтного числа.

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

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

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

1 минуту назад, Геннадий сказал:

Но почему-то криво и ресурсоемко

решали поставленные задачи, всё прекрасно работает по сей день и уже не один год (кривизна от рук зависит)

Похоже я зря предложил перейти на Си, ушли в другую сторону, похоже спокойнее продолжать писать на ассемблере )))

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

Так ведь человек просил помочь, а не "просветить и направить на путь истинный".

Кривизна зависит не от рук и головы программиста, а от компилятора и библиотек сторонних разработчиков. Тут Вы не при чем.

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

2 минуты назад, IMXO сказал:

не умеет, в Си реализован только логический сдвиг

Как можно сдвигать многобайтные переменные кроме циклического сдвига? lsl+rol+rol / lsr+ror+ror.

3 минуты назад, dm37 сказал:

Похоже я зря предложил перейти на Си, ушли в другую сторону, похоже спокойнее продолжать писать на ассемблере )))

Определенно)

Только что, Геннадий сказал:

Кривизна зависит не от рук и головы программиста, а от компилятора и библиотек сторонних разработчиков. Тут Вы не при чем.

Кривизна зависит ТОЛЬКО от рук и головы. Никто же не заставляет пользоваться кривыми библиотеками.

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

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

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

Чаще так происходит с Ардуинщиками.

1 минуту назад, dm37 сказал:

@Юстас  а как вы относитесь к IAR EW? )))

Вбрасываете новую тему для холивара?)

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

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

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

в догонку, для PIC16F628A использовали IAR EW (сейчас IAR уже не поддерживает PIC16)

1 минуту назад, COKPOWEHEU сказал:

Вбрасываете новую тему для холивара

неа, предлагаю поменять на то, что есть у меня + IAR это поддержка других uC (сейчас все вспомнят keil и такое начнётся...)

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

3 минуты назад, COKPOWEHEU сказал:

Как можно сдвигать многобайтные переменные кроме циклического сдвига? lsl+rol+rol / lsr+ror+ror.

еще раз повторяю в Си нет циклического сдвига , для 8-ми битников максимальная разрядность переменной 32, и создав переменную большей разрядности неважно как объединением, массивом или через указатели,  вы не сможете без танцев с бубном сделать даже логический сдвиг , а в ассемблере это без проблем хоть всю ОЗУ можете сдвинуть...

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

А чем это лучше обычного gcc? Ну то есть я читал какие-то обзоры где сравнивается производительность, и не в пользу gcc. Но это не настолько критично, к тому же gcc самый кроссплатформенный компилятор и поддерживает наибольшее количество микросхем, от тех же avr до arm или x86.

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

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

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

Изучу си только за его кроссплатформенность. Ну и краткость.

С асмом мне сильно помогает Геннадий. Если можно, давайте попробуем на си написать, уж больно интересно))

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

Цитата

для 8-ми битников максимальная разрядность переменной 32

Только что проверил для uint64_t, он честно наспамил 8 ror-ов. Но, похоже, под циклическим сдвигом вы понимаете что-то другое.

@Юстас , давайте все-таки закончим с ассемблерной версией и потом, если захотите, будем переводить ее на Си. А то пока качаетесь между двумя языками, набегут Ардуинщики и Флоукодеры и выбирать станет еще труднее.

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

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

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

@dm37 6 долго ставится, а уж 7 думаю и того дольше) А сколько лет вы уже кодите?

@COKPOWEHEU хотел я ардуино освоить, но не решился, купил отладочную плату на Mega32 и распечатал справочник по ассемблеру)

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

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

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

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

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

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

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

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

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

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

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

  • Сообщения

    • Попытаться отыскать улетевший корпус конденсатора поблизости от места установки платы. Срисовать часть схемы с этим конденсатором, понять, какую функцию он выполняет, при каком напряжении работает и поставить подходящий "по смыслу". Искать в сети фото этой платы, где виден номинал конденсатора или владельцев такой-же, которые могут посмотреть. Не лишним будет оценить возможные причины взрывания конденсатора и способы предотвращения этого в дальнейшем.
    • @DownHouse , насчёт номинала затворного резистора вам уже сказали. Он образует RC-цепочку с ёмкостью затвора транзистора. На высоких частотах ШИМ работать не будет. Кроме того, у транзисторных оптопар есть такой параметр: Как видите, ток коллектора может быть даже меньше входного тока в светодиод. Быстро управлять затвором мощного полевика, у которого ёмкость под 10 нФ, таким маленьким током не получится. Так что и тут ограничение на частоту ШИМ. По закону Ома он считается. Какой ток коллектора сможет выдать транзистор оптопары, такое напряжение на R2 и получится. Естественно с "упором" в напряжение питания. Выше него не прыгнешь. Транзистор оптопары войдёт в насыщение, выходной ток оптопары станет меньше максимального, который может выдать её транзистор, ток будет ограничен значением сопротивления R2. Например, при коэффициенте передачи тока оптопары, равным единице, при напряжении питания 5 В, при токе в светодиод оптопары 10 мА и при сопротивлении резистора R2 500 Ом, напряжение на нём будет 10 мА * 0,5 кОм = 5 В. Но если оптрон посредственный, с коэффициентом передачи тока 0,5, то при тех же условиях, выходной ток коллектора транзистора оптрона будет не больше 5 мА, и напряжение выше 2,5 В на R2 не поднимется. Если пороговое напряжение открывания полевого транзистора выше, то он не откроется. Чтобы схема работала при установке любого экземпляра оптопары, без отбора, схема проектируется исходя из наихудших значений параметров. В вашем случае минимально-допустимое сопротивление R2 будет 1 кОм (10 мА/2 * 1 кОм = 5 В).  
    • Алексей, ну ты-то уже опытный в аудиотехнике волк и понимаешь, что все эти буквенные обозначения на латинице у производящих е-cap-ы контор по факту означают разные потребительские характеристики. А товарищ @Алексей Акулиничев в этом ещё новичок; натрёт в залобье мозолей, с опытом тоже начнёт разбираться в "who из где". 
    • Смотря для чего оптимальный. Если вы КПД блока под 99% вытягиваете, то нужен очень маленький. Но при этом будет сильное недоиспользование габаритной мощности "железа" сердечника. Если задача по-максимуму использовать возможности сердечника - то ограничивается только максимальной температурой сердечника, точкой Кюри...
    • Примерно так. НО! Если у этих динамиков НЧ реально от 40Гц, то кубики пенопласта будут тереться друг об друга , создавая заметные на слух "артефакты", поэтому надо бы запастись тонким поролоном, или плотной тканью прокладывая его/её между ними, или обворачивая их. ЗЫ. Чем дешевле динамик и чем проще кажется реализация на нём более-менее ровно играющей акустической системы,тем  больше возни с ним. Это уже не раз доказанный практикой факт.
×
×
  • Создать...