В ассемблере для микроконтроллера изменить задержку

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

Всем привет.Контроллер PIC16F628A, для него есть программа на ассемблере написанная в MPLAB X IDE 5.30.Я совершенно не знаю ассемблер,но нашел что за паузу отвечает эта часть

Pause clrwdt
clrf P1
clrf P2
movlw 0x01
movwf P3
bcf CONFIGLED,0
return

Сейчас задержка 1с,а как ее сделать меньше,например 0.5с?
Полный код во вложении.
Вложения
Rspeed1.asm
(11.32 КБ) 279 скачиваний
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Вот 0.5сек. прошивай.
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

otest, Спасибо за НЕХ,но задумка была не просто все изменить на пол секунды,а добавить в данный код свой кусок кода с меньшей задержкой.Увеличить задержку на целые секунды я могу,а вот как быть с дробными не знаю...
Друг Кота
Аватара пользователя
Сообщения: 15749
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Смотри раздел " Pause" - там счетные интервалы размещены.
Только придется добавлять начальные значения в соответствующих счетчивках, а не "256по256по256" запускать.
:wink:
Да и аффтар "постарался" - задал имена счетчиков как частоиспользуемые имена портов (Рn) вместо более приятного cnt или чего иного.
8)
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

BOB51, Я вижу только

movlw 0x01

это 1 секунда,а все остальное для меня темный лес.
Вы не могли бы показать кодом,что нужно сделать.
Реклама
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Сообщение otest »

Это не секунда , а просто еденица.
Твой вопрос ...как ее сделать меньше,например 0.5с?...
Задай правильно вопрос , получиш правильный ответ.
Что значит как быть с дробными?
В моей прошивке задержка 583.136000 мсек.
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

otest, Ну да,ты прав.Как сделать задержку меньше 1? Просто в моем коде эта 1 реально примерно 1секунда.
Мудрый кот
Аватара пользователя
Сообщения: 1833
Зарегистрирован: Вс окт 04, 2009 13:23:12
Откуда: н. новгород

Сообщение anatol378 »

Смени значения - самое грубое P3. Значения указаны в шестнадцатеричном формате.
P1 equ 0x20
P2 equ 0x21
P3 equ 0x22
Лучше умному тупить, чем тупому умничать
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

anatol378, А на что их сменить?
Друг Кота
Аватара пользователя
Сообщения: 15749
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

А это уж самому разбираться надо.
Подсказок достаточно дали.
Или обращаться к автору программки/сообществу :
"измените программку под мои хотелки и вот эту схемку!"
8)
Мудрый кот
Сообщения: 1874
Зарегистрирован: Чт авг 10, 2017 20:57:51

Сообщение diplodok »

Тим70 писал(а):А на что их сменить?
Delay Code Generator
Родился
Сообщения: 6
Зарегистрирован: Вс янв 19, 2020 10:16:19

Сообщение Тим70 »

Ясно.
Ответить

Вернуться в «PIC»