0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 21
|
|
1 | |
Регистр F17.10.2013, 12:52. Показов 6577. Ответов 4
Метки нет (Все метки)
Не знаток в PIC. Разбираю чужой код.
ymsf Temp, F ymsf Temp, W Инструкция ymsf Temp, W -судя по описанию содержимое регистра Temp будет увеличено на 1, и результат будет помещен в Temp если содержимое W не 0; либо в W если оно 0. Правильно? Инструкция ymsf Temp, F -судя по описанию содержимое регистра Temp будет увеличено на 1, и результат будет помещен в Temp если содержимое F не 0; либо в F если оно 0. Правильно? А что за регистр F ? - Обнаружил в файле P16F628.INC следующие строки ; Register Defymitions W EQU H0000 F EQU H0001 ;----- Register Files------------------------------------------------------ INDF EQU H0000 TMR0 EQU H0001 PCL EQU H0002 Почему адреса одинаковые? и про регистр F что -то в мануалах ничего не нашёл. А есть еще инструкция addwf Temp,f -- это что за f ? причем если на большую F навести указатель мыши, то вылазит адрес и содержимое, то на маленькой f ничего не вылазит. А все правильно, компилит без ошибок.
0
|
17.10.2013, 12:52 | |
Ответы с готовыми решениями:
4
(MCS-51) Внести в регистр А двоично-десятичное число XX, в регистр R5 — XX Занести в регистр А двоично-десятичное число 0Х, в регистр R2 Х0 Не работает регистр Как занести в регистр число? |
OtixPM
|
17.10.2013, 13:06
#2
|
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 21
|
|
17.10.2013, 13:29 | 3 |
Спасибо за ответ и время, вами потраченное, а мой сэкономленное.
А насчет addwf Temp,f не подскажете? ну правда f нигде не описано. Исходники это от измерителя LCFG с http://forum.cqham.ru/. Я хочу изменить программу и сделать из этого прибора емкостной измеритель уровня воды с аналоговым выходом .
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 21
|
|
17.10.2013, 13:39 | 4 |
Маленькое замечание
я понял, что W EQU H0000 -это просто указание компилятору для текстовой замены. Только среда MPLAB v7.0 так не считает== если на большую F навести указатель мыши, то вылазит адрес и содержимое, что и сбивает с толку.
0
|
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
|
|
17.10.2013, 14:45 | 5 |
Мля , ну почитать описание команд в даташите не судьба совсем.
W и F это модификаторы команд , определяющие приемник результата команды . В описание команд значится как d (Destination) А не регистры или адреса . В примере с Код
addwf Temp,f В случае Код
addwf Temp,w И я вас умоляю не читайте корабельниковский бред или опусы с лабкит. Сие только для слаборазвитых дегенератов. EQU это аналог #define, т.е определение символьных констант . А символьная константа может определять все что угодно . И если для старья типа MPLAB 7 это прокатывало , то в новых будете иметь проблемы с дебагом.
0
|
17.10.2013, 14:45 | |
17.10.2013, 14:45 | |
Помогаю со студенческими работами здесь
5
PIC, SPI и сдвиговый регистр. Сдвиговый регистр без микроконтроллера MSC51. Перекинуть значение в регистр Внести в регистр R2 двоично-десятичное число 0X Что такое регистр F в PIC-овском Assembler? ПЛИС длинный сдвиговый регистр с параллельной загрузкой VHDL Не пойму почему регистр INDICATOR не накапливает значения через incf Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |