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

Циклы


daim

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

всем привет!

вот на этой странички http://www.labkit.ru/html/Assembler_for_PIC?id=362

такой кусок кода:

;delay = 500000 machine cycles
Pause       movlw       .85
            movwf       Reg_1
            movlw       .138
            movwf       Reg_2
            movlw       .3
            movwf       Reg_3
wr          decfsz      Reg_1, F
            goto        wr
            decfsz      Reg_2, F
            goto        wr
            decfsz      Reg_3, F
            goto        wr

            return

           end                     ; конец программы

вот тут действительно за 500000 машинных циклов выполняется, кому если не лень проверьте пжлста.

как я не считал только, ну больше у меня получается чем 500000 машинных циклов и все тут

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

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

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

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

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

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

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

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

А сколько кстати получается, почему вы собственно решили что больше? разницы в 10-20 циклов в таких алгоритмах несущественна...

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

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

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>

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

ну вот допусстим последний цикл:

decfsz Reg_3, F

goto wr

Reg_1 будет 0х00

Reg_2 тоже по нолям

первый цикл будет выполнятся 255 раз

второй тоже 255

умножаем их и получаем 65025

умножем его(65025) на количество маш.циклов в первом цикле программы(decfsz- 1 м.ц., goto-2м.ц.(и плевать я хотел пока на то, что decfsz на последней итерации будет хавать 2 м.ц))т.е.

65025*3=195075

теперь умножаем кол-во програмных циклов(во втором програмном цикле(ух, тафтология:)сорри по другому неумею)),где

decfsz Reg_2, F

goto wr

их у нас 255, на кол-во машинных циклов(decfsz- 1 м.ц., goto-2м.ц.)

255*3=765

складываем: 195075+765=195840

и так как Reg_3 у нас равен трем

195840*3=587520.....

и вот тут я походу накосячил...блин пока писал пост, приходит озарение..

умножить то надо на два, епт, вот я алёша:)

ну ка ща перещитаю

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

  • 1 месяц спустя...

а вообще есть калькулятор задержек AVRdelayloop, полезная вещь, если лень считать,, там и количество чиклов пишут и время... так, что рекомендую

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

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

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

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

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

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

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

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

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

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

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

    • @1960sae "Собирал когда то такой конструктор, запустился сразу....". блин. не могу управится с ним. все проверил. нашел пробитый конденсатор, поменял. питание от адаптера сделал 7,3в. регулятор четко 5,05 в держит. на ногах пика питание есть, на всех ногах тоже какая то напруга есть. ниче не греется, транзы холодные. но не работает и все. когда щупами проверял по выводам пика моргнули индикаторы один раз и все. осцилла нет. ума не приложу, интернет рою. пока нифига не смог победить. что смущает: по схеме (я выше здесь выложил) 8 резисторов (на индикаторы идут) по 220 ом, а в наборе они по 1 кОм (я их впаял). 
    • Кто сказал? Откуда такие знания? Опишите механизм появления искаженного звука. Точно не надо.
    • Здравствуйте. Чтобы не открывать новую тему по примитивному вопросу. На фото выше справа вверху стоит ионистор. На этой плате никаких элементов памяти я не вижу, поэтому скорее всего питание с ионистора подается вверх - на плату с МК.   Правильно ли я понимаю, что ионистор нужен для хранения текущего времени, а рабочая программа хранится в eeprom или flash на плате с МК (или в кишках самого МК)? Вопрос связан с тем, что прежде чем чинить эту LOGO, надо знать, сохранилась ли в нем программа. А чтобы узнать, сохранилась ли в нем программа, надо иметь соответствующую приблуду. Приблуду можно сотворить и самому, но если программа все-таки хранится в sram с питанием от ионистора, то никакого смысла делать приблуду нет, как и чинить LOGO. Просьба просветить, кто в курсе месте хранения рабочей программы в siemens logo. LOGO само собой старый: 6ED1052-1MD00-OBA5  
    • Против разумной, никаких. Кашкаровшина к ней не относится.
    • Таки делаю правильно, из за 50 гигов диск не попру никуда.
    • Доступ к файлам проекта, серверной части и график дизайнеру есть?
    • Эта платка напрямую к УСБ подключается, я через Arduino IDE заливал тот код, как в статье. Может правда панели плохие. Ножки не смог к плате припаять, припой вообще не ложился, поэтому проводочки только. Спасибо, а второй конденсатор обычный на 100 нанофарад? диод который уже у меня есть, его можно оставить? А код через арудино также заливать?
×
×
  • Создать...