f& Texas iNSiraJMENTS | ///. Интерфейс с внешними устройствами | |||
ADD | #06h, SP | |||
POP | R9 | ; читать код ошибки | ||
CMP | #00h, R9 | |||
JZ | skp3 | ; повтор при неудаче | ||
MOV. В | block, R5 | ; копировать символ | ||
MOV. В | alcd(R5), | LCD1+6 | ||
; отобразить | символ | |||
MOV. В | block+1, | R5; копировать символ | ||
MOV. В | alcd(R5), | LCD1+5 | ||
; отобразить | символ | |||
MOV. В | block+2, | R5; копировать символ | ||
MOV. В | alcd(R5), | LCD1+4 | ||
; отобразить | символ | |||
MOV. В | block+3, | R5; копировать символ | ||
MOV. В | alcd(R5), | LCD1+3 | ||
; отобразить | символ | |||
CALL | #delay | ; вызов подпрограммы | ||
; задержки | ||||
skp4 | ; чтение ёмкости | [ батареи | ||
CALL | #show clr | |||
PUSH | #00h | место для кода ошибки | ||
PUSH | #000Bh | поместить адрес в стек | ||
PUSH | #0018h | поместить в стек | ||
команду чтения ёмкости | ||||
батареи | ||||
PUSH | #00h | зарезервировать байт | ||
для данных | ||||
PUSH | #00h | зарезервировать байт | ||
для данных | ||||
CALL | #rwp | |||
POP | RIO | поместить данные в R1C | ||
POP | Rll | поместить данные в R11 | ||
ADD | #04h, SP | освободить место | ||
команды и адреса | ||||
POP | R9 | читать код ошибки | ||
CMP | #00h, R9 | |||
JZ | skp4 | повтор при неудаче | ||
RLA | Rll | |||
RLA | Rll | |||
RLA | Rll | |||
RLA | Rll | |||
RLA | Rll | |||
RLA | Rll | |||
00/ | RLA | Rll |
Глава 6.
Реализация шины SMBus на базе микроконтроллера MSP430
RLA | R11 | ||
XOR | R10, | Rll | |
MOV | Rll, | R12 | |
CALL | #display ; | вызов подпрограммы | |
; | отображения | ||
XOR. В | #40h | . LCD1+3 |
децимальную точку MOV.B alcd+'A', LCD1+1 MOV.B alcd+'H', LCD1+0 CALL #delay ; вызов подпрограммы ; задержки ;запись предупреждения ; об оставшейся ёмкости (RemainingCapacityAlarm) |
добавить
skp5
clr
CALL PUSH PUSH PUSH PUSH |
#show_ #00h " #000Bh #001h
R8
PUSH R7
CALL | #wwp | |
POP | Rll | |
POP | RIO | |
ADD | #04h, | SP |
POP | R9 | |
CMP | #00h, | R9 |
JZ | skp5 | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
RLA | Rll | |
XOR | RIO, | Rll |
MOV | Rll, | R12 |
CALL | #display | |
MOV.B | alcd+'S' , |
кода ошибки адрес в стек в стек |
место для поместить поместить команду
зарезервировать байт для данных зарезервировать байт для данных
поместить данные в R11 поместить данные в R1C освободить место команды и адреса читать код ошибки
повтор при неудаче
; вызов подпрограммы ; отображения LCD1+6
Библиотека Компэла
f& Texas