[an error occurred while processing this directive]
|
jb port.pin, label ;Переход, если нога в "1"
jnb port.pin, label ;Переход, если нога в "0"
mov port.pin,c ;Считывание ноги в бит переноса (например, прием с программного SPI):
SCLK equ p3.3 ;От балды
MISO equ p3.4
mov r2,#8 ;Заряжаем счетчик бит
spi_loop:
clr SCLK ;Даем отрицательный строб SCLK
setb SCLK ;
mov c,MISO ;Читаем ногу в перенос
rlc a ;Вдвигаем перенос в аккумулятор - это будет MSB
djnz r2,spi_loop ;Повторяем 8 раз
;Теперь в аккумуляторе байт, принятый по SPI - дешево и сердито ;))
mov c,bit1 ;Читаем бит (ногу) в перенос
anl c,bit2 ;Лог. "И" с другим битом
orl c,/bit3 ;и лог. "ИЛИ" с инверсным третьим битом. AVR, аууу! ;))
E-mail: info@telesys.ru