прочитать шину smbus
- Войдите на сайт для отправки комментариев
Добрый день форумчане, нашел на ютубе ролик, как подключить к arduino датчик температуры LM75A протокол I2C (https://www.youtube.com/watch?v=GJX0BRUagCg&list=PLA567CE235D39FA84&index=7), подключил, все работает выводит данные в терминал, теперь хочу подключить arduino к ноутбучному аккумулятору и выводить данные температуры с него , но там протокол smbus, вроде тоже , но не совсем, подскажите как это сделать живого примера с работой протокола smbus не нашел.
скетч по выводу температуры с LM75A по I2C выглядит так:
//Program by Jeremy Blum
//www.jeremyblum.com
//Reads Temp in Celcius and Shows it on Computer
//Include Wire I2C Library
#include <Wire.h>
int temp_address = 72;
void setup()
{
//Create Serial Object (9600 Baud)
Serial.begin(9600);
//Create a Wire Object
Wire.begin();
}
void loop()
{
//Send Request
Wire.beginTransmission(temp_address); //Start talking
Wire.write(0); //Ask for Register zero
Wire.endTransmission(); //Complete Transmission
Wire.requestFrom(temp_address, 3); //Request 1 Byte
while(Wire.available() == 0); //wait for response
int c = Wire.read(); // Get the temp
//do some math...
int f = round(c*9.0/5.0 +32.0);
Serial.print(c);
Serial.print("C,");
Serial.print(f);
Serial.println("F.");
delay(500);
}
Согласно описания ноутбучного микроконтроллера bq2084, чтобы считать температуру на него нужно подать в формате smbus команду 0x08, толкните в нужном направлении как это сделать.
Спасибо всем, кто не ответил, это дало возможность пошевелить мозгами и разобраться самому.
Тоже думаю на тему ардуино и smbus. Если не сложно подтолкните.
Подключился напрямую к i2c между микрухами. 29312 отзывается. 2084 нет.