मैं पाई और Arduino के बीच i2c संचार का परीक्षण कर रहा हूं।
डॉक्टर कहते हैं:
write_i2c_block_data(addr,cmd,vals) Block Write transaction. int addr,char cmd,long[] None
मेरा यह परीक्षण है:
पाई पर:
import smbus
bus = smbus.SMBus(0)
bus.write_i2c_block_data(address, 48, [49, 50, 51] )
Arduino पर:
void receiveData(int byteCount){
Serial.print("byte count=");
Serial.println(byteCount);
while(Wire.available()) {
number = Wire.read();
Serial.print((char)number);
}
}
Arduino पर मुझे यह आउटपुट दिखाई देता है:
byte count=4
0123
मेरा सवाल है: cmd
पैरामीटर का उपयोग क्या है ? मैं Arduino पर कोई भेद नहीं देखता, जो बाइट का प्रतिनिधित्व करता है।
मुझे लगता है कि मैं इससे एक फिट फिट के रूप में निपट सकता हूं। शायद मैं कमांड के रूप में पहले 2 बाइट्स का उपयोग करना चाहता हूं।
इस पृष्ठ की विधि के बारे में अधिक जानकारी नहीं है: http://wiki.erazor-zone.de/wiki:linux:python:smbus:doc
vals
, cmd
अनिवार्य है।
cmd
पैरामीटर क्या है ... मुझे यह जानने का एक उचित काम करना था कि आपका क्या मतलब है। हालांकि मुझे इसका जवाब नहीं मिला ... यह केवल विशिष्ट चिप्स जैसे कि GPIO विस्तारक या कुछ और के द्वारा इस्तेमाल किया जा सकता है ...