
Помогите решить проблему, у меня ошибка с I2C, ошибка File "main.py", line 29
data1=bus.read_byte_data(0x01,0x06) #чтение монет, сколько загрузили ^ IndentationError: expected an indented block вот код: import smbus import time rez=1 bus = smbus.SMBus(1) n=1 koin5=4 bus.write_byte_data(0x01,0x00,koin5) bus.write_byte_data(0x01,0x01,2) bus.write_byte_data(0x01,0x02,5) #отпраква, сколько монет выдать bus.write_byte_data(0x01,0x03,3) bus.write_byte_data(0x01,0x04,rez) #0-выдаем 1-режим приема bus.read_byte_data(0x01,0x05) #хранение статуса выдачи while rez==1: #data2=bus.read_byte_data(0x01,0x07) #data3=bus.read_byte_data(0x01,0x08) #data4=bus.read_byte_data(0x01,0x09) #print (data2) #print (data3) #print (data4) data1=bus.read_byte_data(0x01,0x06) #чтение монет, сколько загрузили if n==1: if data1==1: print (data1) n=0 if n==0: if data1==0: print (data1) n=1 rez=0 bus.close()

Ответы на вопрос

Ответ:
Необходимо поставить табы после цикла while и конструкции if.
Также надо изучить конструкцию if elif else



Я попробую помочь вам решить вашу проблему с I2C. Похоже, что у вас есть ошибка отступа в строке 43 вашего кода. Это означает, что вы не соблюдали правила форматирования Python, которые требуют, чтобы каждое новое заявление в блоке было смещено на четыре пробела от текущего уровня отступа. Вы можете исправить это, добавив нужное количество пробелов перед строкой 43. Например, так:
```python import smbus import time rez=1 bus = smbus.SMBus(1) n=1 koin5=4 bus.write_byte_data(0x01,0x00,koin5) bus.write_byte_data(0x01,0x01,2) bus.write_byte_data(0x01,0x02,5) #отпраква, сколько монет выдать bus.write_byte_data(0x01,0x03,3) bus.write_byte_data(0x01,0x04,rez) #0-выдаем 1-режим приема bus.read_byte_data(0x01,0x05) #хранение статуса выдачи while rez==1: #data2=bus.read_byte_data(0x01,0x07) #data3=bus.read_byte_data(0x01,0x08) #data4=bus.read_byte_data(0x01,0x09) #print (data2) #print (data3) #print (data4) data1=bus.read_byte_data(0x01,0x06) #чтение монет, сколько загрузили if n==1: if data1==1: print (data1) n=0 if n==0: if data1==0: print (data1) n=1 rez=0 bus.close() ```
Если вы хотите узнать больше о том, как избежать ошибок отступа в Python, вы можете посмотреть этот ресурс. Также вы можете найти полезную информацию о том, как работать с I2C на Raspberry Pi в этих источниках. Надеюсь, это поможет вам. Спасибо за использование Bing.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili