arduino
धारावाहिक संचार
खोज…
वाक्य - विन्यास
-
Serial.begin(speed)
// दिए गए बॉड दर पर सीरियल पोर्ट खोलता है -
Serial.begin(speed, config)
-
Serial[1-3].begin(speed)
// Arduino मेगा केवल! 1-3 लिखने पर इसका मतलब है कि आप सीरियल पोर्ट चुनते समय नंबर 1 से 3 के बीच चयन कर सकते हैं। -
Serial[1-3].begin(speed, config)
// Arduino मेगा केवल! 1-3 लिखने पर इसका मतलब है कि आप सीरियल पोर्ट चुनते समय नंबर 1 से 3 के बीच चयन कर सकते हैं। -
Serial.peek()
// बफर से हटाए बिना इनपुट के अगले बाइट को पढ़ता है -
Serial.available()
// बफर में बाइट्स की संख्या हो जाती है -
Serial.print(text)
// सीरियल पोर्ट पर टेक्स्ट लिखता है -
Serial.println(text)
//Serial.print()
रूप में एक ही लेकिन एक अनुगामी newline के साथ
पैरामीटर
पैरामीटर | विवरण |
---|---|
गति | सीरियल पोर्ट की दर (आमतौर पर 9600) |
टेक्स्ट | सीरियल पोर्ट पर लिखने का पाठ (कोई भी डेटा प्रकार) |
डेटा बिट्स | एक पैकेट में डेटा बिट्स की संख्या (5 - 8 से), डिफ़ॉल्ट 8 है |
समानता | त्रुटि का पता लगाने के लिए समानता विकल्प: कोई नहीं (डिफ़ॉल्ट), यहां तक कि, विषम |
स्टॉप बिट्स | एक पैकेट में स्टॉप बिट्स की संख्या: एक (डिफ़ॉल्ट), दो |
टिप्पणियों
Arduino Mega में चार सीरियल पोर्ट हैं जिन्हें वहां से चुना जा सकता है। वे निम्नलिखित तरीके से accesed हैं
Serial.begin(9600);
Serial1.begin(38400);
Serial2.begin(19200);
Serial3.begin(4800);
एक Arduino पर सीरियल पोर्ट को अतिरिक्त मापदंडों के साथ सेट किया जा सकता है। कॉन्फ़िगरेशन पैरामीटर डेटा बिट्स, समता और स्टॉप बिट्स सेट करता है। उदाहरण के लिए:
8 डेटा बिट, समता और 1 स्टॉप बिट होगा - SERIAL_8E1
6 डेटा बिट्स, विषम समता और 2 स्टॉप बिट - SERIAL_6O2
7 डेटा बिट्स, कोई समानता नहीं और 1 स्टॉप बिट होगा - SERIAL_7N1
सरल पढ़ो और लिखो
यह उदाहरण सीरियल कनेक्शन में आने वाले इनपुट के लिए सुनता है, फिर उसी कनेक्शन को वापस दोहराता है।
byte incomingBytes;
void setup() {
Serial.begin(9600); // Opens serial port, sets data rate to 9600 bps.
}
void loop() {
// Send data only when you receive data.
if (Serial.available() > 0) {
// Read the incoming bytes.
incomingBytes = Serial.read();
// Echo the data.
Serial.println(incomingBytes);
}
}
सीरियल इनपुट डेटा के लिए बेस 64 फ़िल्टरिंग
String base64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
void setup() {
Serial.begin(9600); // Turn the serial protocol ON
Serial.println("Start Typing");
}
void loop() {
if (Serial.available() > 0) { // Check if data has been sent from the user
char c = Serial.read(); // Gets one byte/Character from serial buffer
int result = base64.indexOf(c); // Base64 filtering
if (result>=0)
Serial.print(c); // Only print Base64 string
}
}
सीरियल पर कमान संभालते हुए
byte incoming;
String inBuffer;
void setup() {
Serial.begin(9600); // or whatever baud rate you would like
}
void loop(){
// setup as non-blocking code
if(Serial.available() > 0) {
incoming = Serial.read();
if(incoming == '\n') { // newline, carriage return, both, or custom character
// handle the incoming command
handle_command();
// Clear the string for the next command
inBuffer = "";
} else{
// add the character to the buffer
inBuffer += incoming;
}
}
// since code is non-blocking, execute something else . . . .
}
void handle_command() {
// expect something like 'pin 3 high'
String command = inBuffer.substring(0, inBuffer.indexOf(' '));
String parameters = inBuffer.substring(inBuffer.indexOf(' ') + 1);
if(command.equalsIgnoreCase('pin')){
// parse the rest of the information
int pin = parameters.substring("0, parameters.indexOf(' ')).toInt();
String state = parameters.substring(parameters.indexOf(' ') + 1);
if(state.equalsIgnoreCase('high')){
digitalWrite(pin, HIGH);
}else if(state.equalsIgnoreCase('low)){
digitalWrite(pin, LOW);
}else{
Serial.println("did not compute");
}
} // add code for more commands
}
पायथन के साथ सीरियल कम्युनिकेशन
यदि आपके पास एक Arduino कंप्यूटर या रास्पबेरी पाई से जुड़ा है, और Arduino से पीसी पर डेटा भेजना चाहते हैं, तो आप निम्नलिखित कार्य कर सकते हैं:
Arduino:
void setup() {
// Opens serial port, sets data rate to 9600 bps:
Serial.begin(9600);
}
void loop() {
// Sends a line over serial:
Serial.println("Hello, Python!");
delay(1000);
}
अजगर:
import serial
ser = serial.Serial('/dev/ttyACM0', 9600) # Start serial communication
while True:
data = ser.readline() # Wait for line from Arduino and read it
print("Received: '{}'".format(data)) # Print the line to the console
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow