SMBus (англ. System Management Bus) — последовательный протокол обмена данными для устройств питания. Основан на шине I²C, но использует более низкое сигнальное напряжение (3,3 В), предложен Intel в 1995 году. Используется, например, для получения информации о состоянии аккумуляторной батареи ноутбука (оставшаяся ёмкость аккумуляторной батареи, температура, количество использованных циклов разряда, и т. д.). С версии SMBus 2.0 (2000 год) используется не только для настройки батареи, но и для иных внутренних устройств компьютера.
SMBus является двухпроводным интерфейсом, по которому простые устройства могут обмениваться информацией с остальной системой. Сообщения идут к устройствам и от них, вместо прохождения по отдельным управляющим линиям.
python-smbus — этот модуль Python обеспечивает доступ к SMBus через интерфейс I2C /dev на хостах Linux. Ядро хоста должно иметь поддержку I2C, поддержку интерфейса устройства I2C и драйвер адаптера шины.
Установка и обновление Python
Python 2 и Python 3 поставляются предварительно установленными в операционных системах Raspbian, но чтобы установить Python в другой ОС Linux или обновить его, просто выполните одну из следующих команд в командной строке:
Установка или обновление Python 3.
sudo apt-get install python3
Установка или обновление Python 2.
sudo apt-get install python
Открытие Python REPL
Чтобы получить доступ к Python REPL (где вы можете вводить команды Python точно так же, как в командной строке), введите python
или python3
в зависимости от того, какую версию вы хотите использовать:
Введите Ctrl-D, чтобы выйти из REPL.
Установка I2C Tools
I2C Tools — это пакет с полезными консольными инструментами для I2C. После установки нам будут доступны несколько полезных утилит: i2cdetect
, i2cdump
, i2cget
, i2cset
.
sudo apt-get install i2c-tools
i2cdetect
— это пользовательская программа, которая сканирует шину I2C на наличие устройств.
Отображать список доступных в системе шин I²C:
i2cdetect -l
Отображать таблицу обнаруженных устройств на указанной шине:
i2cdetect -y 0
Установка SMBus
sudo apt-get install python-smbus
Описание методов (функций)
SMBus функции
write_quick()
Быстрая транзакция.
write_quick(addr)
Параметры
int addr
— I2C адрес устройства.
Возвращает
long
— Отрицательный errno
или ноль в случае успеха.
read_byte()
Чтение байта.
read_byte(addr)
Параметры
int addr
— I2C адрес устройства.
Возвращает
long
— Отрицательный errno
или байт данных в случае успеха.
write_byte()
Запись байта.
write_byte(addr,val)
Параметры
int addr
— I2C адрес устройства.
char val
— Байт данных.
Возвращает
long
— Отрицательный errno
или ноль в случае успеха.
read_byte_data()
Чтение байта данных.
read_byte_data(addr,cmd)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
Возвращает
long
— Отрицательный errno
или байт данных в случае успеха.
write_byte_data()
Запись байта данных.
write_byte_data(addr,cmd,val)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
char val
— Байт данных.
Возвращает
long
— Отрицательный errno
или ноль в случае успеха.
read_word_data()
Чтение двух байт данных.
read_word_data(addr,cmd)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
Возвращает
long
— Отрицательный errno
или два байта данных в случае успеха.
process_call()
Process Call (вызов процесса) .
process_call(addr,cmd,val)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
int val
— Два байта данных.
Возвращает
long
— Отрицательное значение errno
или 16-разрядное беззнаковое «слово», полученное от устройства.
read_block_data()
Чтение массива данных.
read_block_data(addr,cmd)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
Возвращает
long[]
— Отрицательный errno
или массив данных в случае успеха.
write_block_data()
Запись массива данных.
write_block_data(addr,cmd,vals)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
long[] vals
— Массив данных.
block_process_call()
Block Process Call.
block_process_call(addr,cmd,vals)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
long[] vals
— Массив данных.
Возвращает
long[]
— Массив данных.
I2C функции
read_i2c_block_data()
Чтение массива данных.
read_i2c_block_data(addr,cmd,length)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
int length
— Желаемая длина блока.
Возвращает
long[]
— Массив данных в случае успеха.
write_i2c_block_data()
Запись массива данных.
write_i2c_block_data(addr,cmd,vals)
Параметры
int addr
— I2C адрес устройства.
char cmd
— Адрес регистра (команда).
long[] vals
— Массив данных.
Примеры программ
Пример 1: чтение байта
Открыть шину I2C «0» и прочитать один байт от адреса 0x39, со смещением 0x0C (адрес регистра).
import smbus bus = smbus.SMBus(0) data = bus.read_byte_data(0x39, 0x0C) print(data) bus.close()
Пример 2: чтение массива данных
Открыть шину I2C «0» и прочитать 4 байта от адреса 0x39, со смещением 0x0C (адрес регистра). Вы можете прочитать до 32 байтов за раз.
import smbus bus = smbus.SMBus(0) data = bus.read_i2c_block_data(0x39, 0x0C, 4) print(data) bus.close()
Пример 3: запись байта
Открыть шину I2C «0» и записать один байт по адресу 0x39, со смещением 0x0C (адрес регистра).
import smbus bus = smbus.SMBus(0) data = 45 bus.write_byte_data(0x39, 0x0C, data) bus.close()
Пример 4: запись массива
Открыть шину I2C «0» и записать масив байтов по адресу 0x39, со смещением 0x0C (адрес регистра). Вы можете записать до 32 байтов за раз.
import smbus bus = smbus.SMBus(0) data = [1, 2, 3, 4, 5, 6, 7, 8] bus.write_i2c_block_data(0x39, 0x0C, data) bus.close()
Материалы
How to Write and Run a Python Program on the Raspberry Pi
I2C Tools — Linux i2c Wiki
Using I2C with SM-Bus and Raspbian Linux on the Raspberry Pi
wiki:linux:python:sm-bus:doc [wiki.erazor-zone.de]
smbus2 Documentation
smbus2 · PyPI
i2cdetect(8) — i2c-tools — Debian unstable — Debian Manpages
SMBus — Википедия
Untuk memulai, Anda cukup memilih taruhan dan memutar gulungan. Tidak hanya itu, game ini juga menawarkan opsi untuk membeli putaran gratis, memungkinkan Anda langsung masuk ke mode free spins tanpa harus menunggu simbol scatter muncul. Oleh karena itu, jika Anda ingin segera merasakan sensasi putaran gratis di situs BAMBUHOKI88, opsi ini bisa menjadi pilihan yang tepat.
Ontdek een spannende wereld vol entertainment en kansen. Als je op zoek bent naar
een plek waar je volop kunt genieten van unieke ervaringen,
dan is dit de ideale bestemming voor jou. Met een gebruiksvriendelijke interface
en toegang vanaf elk apparaat, heb je alles binnen handbereik om te ontspannen en plezier te
hebben.
Je vindt hier een breed scala aan mogelijkheden, van klassieke spellen tot
moderne innovaties. Dankzij het veilige en betrouwbare platform kun je zorgeloos
genieten en je volledig richten op het plezier.
Wacht niet langer en maak deel uit van deze unieke ervaring.
De mogelijkheden wachten op jou!
my web-site — kody bonusowe betonred
металлические значки на рюкзак http://metallicheskie-znachki-zakaz.ru
красивые металлические значки металлические значки на заказ
маркетплейс аккаунтов заработок на аккаунтах
продажа аккаунтов профиль с подписчиками
продать аккаунт гарантия при продаже аккаунтов
покупка аккаунтов маркетплейс аккаунтов
Online Account Store Profitable Account Sales
Account Buying Platform Online Account Store
Account exchange Account marketplace
Verified Accounts for Sale Buy accounts
Account Catalog Accounts for Sale
Account Trading Buy Account
Marketplace for Ready-Made Accounts Account Selling Platform
buy account https://cheapaccountsmarket.com
account exchange service profitable account sales
buy pre-made account buy and sell accounts
account market https://accountsmarketbest.com
verified accounts for sale account exchange
accounts market buy and sell accounts
Experience intimacy like never before with a realistic sex doll—crafted from premium silicone, detailed with lifelike features, and fully customizable to your desires. Whether for pleasure, companionship, or artistic exploration, these dolls offer unmatched realism and satisfaction. Discover the future of adult comfort and connection today!
account exchange service account catalog
buy accounts sell pre-made account
sell pre-made account gaming account marketplace
Современный и удобный сайт ntym.ru на котором легко найти нужную информацию, товары или услуги. Простая навигация, понятный интерфейс и актуальное содержание подойдут как для новых пользователей, так и для постоянной аудитории. Работает быстро, доступен круглосуточно.
account selling service account trading service
database of accounts for sale buy and sell accounts
secure account sales account market
account market account store
account trading platform account store
account selling service secure account sales
sell account account market
курсовик на заказ https://kursoviehelp.ru/
account trading service website for selling accounts
account buying service guaranteed accounts
gaming account marketplace https://sale-social-accounts.org/
курсовая работа заказать курсовые работы срочно
accounts market ready-made accounts for sale
account catalog account catalog
Нужен номер для ТГ? Предлагаем купить номер для тг дешево для одноразовой или постоянной активации. Регистрация аккаунта без SIM-карты, в любом регионе. Удобно, надёжно, без привязки к оператору.
sell accounts https://accounts-offer.org
secure account sales https://accounts-marketplace.xyz
account selling platform account marketplace
Вам требуется лечение? стоматологические туры в китай лечение хронических заболеваний, восстановление после операций, укрепление иммунитета. Включено всё — от клиники до трансфера и проживания.
account exchange accounts market
account trading platform buy accounts
ноутбук acer цена лучший ноутбук цена качество
магазин бытовой электроники магазины электроники в москве
какой смартфон купить в 2025 купить смартфон самсунг
accounts marketplace https://buy-accounts-shop.pro
buy pre-made account https://buy-accounts.live
buy and sell accounts https://accounts-marketplace.online
marketplace for ready-made accounts https://social-accounts-marketplace.live/
купить новый ноутбук купить ноутбук леново
купить смартфон huawei купить смартфон huawei
account store accounts market
магазин аккаунтов https://akkaunty-na-prodazhu.pro
площадка для продажи аккаунтов https://akkaunt-magazin.online/
магазин аккаунтов akkaunty-market.live
Francisk Skorina https://www.gsu.by Gomel State University. One of the leading academic and scientific-research centers of the Belarus. There are 12 Faculties at the University, 2 scientific and research institutes. Higher education in 35 specialities of the 1st degree of education and 22 specialities.
ежевика высокого качества декоративные лилии для сада
продать аккаунт akkaunty-optom.live
купить аккаунт https://online-akkaunty-magazin.xyz
продать аккаунт https://akkaunty-dlya-prodazhi.pro/
Create vivid images with Promptchan AI — a powerful neural network for generating art based on text description. Support for SFW and NSFW modes, style customization, quick creation of visual content.
Недвижимость в Болгарии у моря https://byalahome.ru квартиры, дома, апартаменты в курортных городах. Продажа от застройщиков и собственников. Юридическое сопровождение, помощь в оформлении ВНЖ, консультации по инвестициям.
Срочный выкуп квартир https://proday-kvarti.ru за сутки — решим ваш жилищный или финансовый вопрос быстро. Гарантия законности сделки, юридическое сопровождение, помощь на всех этапах. Оценка — бесплатно, оформление — за наш счёт. Обращайтесь — мы всегда на связи и готовы выкупить квартиру.
Портал о недвижимости https://akadem-ekb.ru всё, что нужно знать о продаже, покупке и аренде жилья. Актуальные объявления, обзоры новостроек, советы экспертов, юридическая информация, ипотека, инвестиции. Помогаем выбрать квартиру или дом в любом городе.
биржа аккаунтов маркетплейсов аккаунтов
букет роз цена букет из лилий
цветы на дом спб цветы питер
buy ad account facebook https://buy-adsaccounts.work