Я пытаюсь написать программу, которая будет арифметически сдвигать биты в определенную переменную. Программа предназначена для Raspberry Pi и будет использовать функциональность SCLCK встроенных последовательных периферийных интерфейсов для управления скоростью отправляемых битов, а также будет контролировать чтение битов. Другими словами, программа будет внутри al oop, которая будет запускаться один раз для каждого тактового цикла.
Используемый нами аналого-цифровой преобразователь будет отправлять биты в стиле MSB в соответствии со следующим: 8 битов, бит разрыва, 8 битов, бит разрыва, 8 битов, всего 24 бита данные отправляются.
Затем программа будет работать с oop с той же скоростью, чтобы считывать бит с точным тактовым циклом, и затем будет принимать значение вывода GPIO, которое мы вводим, истинное или ложное, на тактовый цикл, и это будет продолжаться в бесконечном l oop каждые 27 (24, + 3 перерывов) тактовых циклов. Цель состоит в том, чтобы получить 24-разрядное значение с плавающей запятой для выхода микрофона, подключенного к аналого-цифровому преобразователю, который будет подавать переменное напряжение на вход, что, в свою очередь, даст результирующее 24-разрядное значение с плавающей запятой. Поскольку Raspberry Pi будет поддерживать только последовательный интерфейс, я могу получать только один бит за раз, и мне нужно будет собрать их вместе, чтобы получить номер, который мне нужен.
Я спрашиваю, является ли или не существует метода, доступного на языке python, для выполнения арифметического c перехода к переменной, чтобы я мог отправлять биты, полученные с вывода GPIO. Я знаю, что это можно сделать при сборке, но мне понадобится вся информация об адресах контактов GPIO для Raspberry Pi. Это также включает в себя обширную сеть для конкретного приложения c.
Любые идеи о том, как я могу выполнить sh это?
if GPIO.input(25): #If it is true
#Arithmetic Logic Shift Left a one
else:
#Arithmetic Logic Shift Left a zero –