Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: проблемы с некоторыми процедурами
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
жорик56
Здраствуйте. pic16f628.
у меня установлен mplab в него интегрирован HI-TECH, но когда вставляю асмовский текст, то выдает ошибку на все процедуры у которых есть возможность сохранять либо в аккумулятор, либо в переменную из которой бралось значение, например RLF f,d сдвиг, если d = 1 то сохраняется в f, если d=0 то результат сохраняется в f. Т.е, если записать RLF f,0, то компилятор выдает ошибку. если кто знает подскажите, плисссс. help.gif
DL36
Цитата(жорик56 @ May 15 2008, 23:02) *
Здраствуйте. pic16f628.
у меня установлен mplab в него интегрирован HI-TECH, но когда вставляю асмовский текст, то выдает ошибку на все процедуры у которых есть возможность сохранять либо в аккумулятор, либо в переменную из которой бралось значение, например RLF f,d сдвиг, если d = 1 то сохраняется в f, если d=0 то результат сохраняется в f. Т.е, если записать RLF f,0, то компилятор выдает ошибку. если кто знает подскажите, плисссс. help.gif

Голова болит, с телепатией проблема с утра.

Может помог бы, приведенный фрагмент кода.

От асмовских вставок у компилятора крышу сносит, лучше применить асмовский модуль
Anty
Цитата(жорик56 @ May 15 2008, 23:02) *
Здраствуйте. pic16f628.
у меня установлен mplab в него интегрирован HI-TECH, но когда вставляю асмовский текст, то выдает ошибку на все процедуры у которых есть возможность сохранять либо в аккумулятор, либо в переменную из которой бралось значение, например RLF f,d сдвиг, если d = 1 то сохраняется в f, если d=0 то результат сохраняется в f. Т.е, если записать RLF f,0, то компилятор выдает ошибку. если кто знает подскажите, плисссс. help.gif



Здравствуйте.
Если d=0, то сохраняется в w. <-- у вас описка.
Как я заметил, асмовские вставки лучше не использовать, а если уже и приходится, то лучше писать там что-нибудь по-проще. А то бывает компилятор бесится от всяких больших и мудрых вставок. А вообще зачем вставлять такие встаки, напишите просто присвоение на С, а компилятор сам все сделает. Просто исключите данные команды из вставок.
А вообще, приведите фрагмент своей программы, может че и увидется, а так только общие советы: не пишите вообще куда сохранять, т.е. после команды пишите регстр и все. Там по умолчанию сохраняет в регстр (d=1). Ну а если нужно использовать w, то посмотрите help или в корне установленного MPLAB'а или компилятора должна быть папка с примерами, залезте и посмотрите, как там это делают.
asmon
Попробуйте написать:

rlf _RX_BUFF, F

или

rlf _RX_BUFF, W

где RX_BUFF - это имя вашей глобальной переменной, оно не должно быть "f" - думаю ругается поэтому.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.