Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Часть 3. Программы и схемы
ВГГ1 BTFSC PORTA.SDA BSF I2CDEV.DI
NOP NOP
BCF PORTA.SCL RETLW 0 ; Читать данные с SDA ; DI= 1 (если считана 1) ; Защитная задержка
; SCL=0
NOP
; возврат SCL в О |
BCF PORTA,SCL RETLW О
•*************************************************************.
; Получение 8-битных данных из устройства I2C в PIC ;
; Входных данных нет ;
; Выходные данные: принятый байт в переменной RXBUF -************* *****+**************************************„**,„,
BITOUT
MOVLW В'ОООООООО' MOVWF PORTA BTFSS I2CDEVJJO GOTO ВЕТО BSF PORTA.SDA MOVLW 2 BTFSC PORTA.SDA GOTO CLKI BTFSS FLAG,ERR1 MOVWF ERCODE BSF FLAG.ERR1 GOTO CLKI
PORTA.SDA
ВГТ0 BCF NOP NOP NOP NOP NOP
CLKI BSF PORTA.SCL MOVLW 1 BTFSC PORTA.SCL GOTO ВГГ2 BTFSS FLAG.ERR1 MOVWF ERCODE BSF FLAG.ERR1
BIT2 NOP NOP ; SDA, SCL на вывод
; В СООТВЕТСТВИИ СО СХЕМОЙ
;DO=0?
; если да, перейти на BIT0 ;SDA=1
; предполагаемый код ошибки 2 ; проверка на наличие ошибки 2 ; если ошибки нет, уйти на CLK1 ; первая ли ошибка обнаружена? ; сохраняем код ошибки ; устанавливаем флаг наличия ошибки
;SDA=0
; защитная задержка
;SCL=1
; предполагаемый код ошибки 1 ; SCL удерживается в О? ; если нет, перейти на ВГТ2
; если да,
; сохранить код ошибки
; установить флаг наличия ошибки
; защитная задержка
; количество принимаемых битов ; очистка буфера приема
BSF RXBUF ,0 DECFSZ COUNT, F GOTO RXLP BSF I2CDEV,DO CALL BITOUT |
; сдвиг данных в буфере из бита переноса ; пропустить, если CARRY=1 ; очистка нулевого бита RXBUF ; пропустить, если CARRY=0 ; установить в 1 нулевой бит RXBUF CALL BITIN ; прочитать бит из устройства BTFSC I2CDEV.DI ; если входной бит =1, установить ; в 1 нулевой бит RXBUF ; все биты получены? ; нет, продолжить ; установить бит протокола ASK=1 ; для прекращения дальнейшего обмена ; данными
RETLW 0
^* ********************* *******************+******,,,, у*»,,,,», »„,,,,,,,,,,.
; Получение 8-битных данных, в случае, если ASK=0
; количество принимаемых битов ; очистка буфера приема |
; Полученный байт данных помещается в переменную RXBUF .*************************************************************.
RXO MOVLW .8
MOVWF COUNT CLRF RXBUF
RXLPO
RLF RXBUF, F SKPC
BCF RXBUF.O SKPNC
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.