Ich implementiere SIM900-Schnittstelle in RPi mit Python-Sprache. Es gibt jedoch ein Problem beim Senden einer Zeichenfolge in der Funktion port.write().Zeichenfolge schreiben in Python seriellen Port auf Raspberrypi
Hier ist mein Code:
# This line has to write on serial port
port.write(b'AT+SAPBR=3,1,"APN","TATA.DOCOMO.INTERNET"\r\n')
Die obige Linie gut funktioniert ...
Jetzt ist meine Anforderung der String TATA.DOCOMO.INTERNET
, die von der Kommandozeile lesen hat, und ich brauche diese Zeichenfolge anhängen mit b'AT+SAPBR=3,1,"APN","xxxx"\r\n'
.
Aber wenn ich versuche, den APN-Namen in die Variable zu lesen und nach dem Anhängen funktioniert nicht, sind die Codezeilen
# AP ="TATA.DOCOMO.INTERNET"-string read from serial input
AP = gsm.read()
t1 = "AT+SAPBR=3,1,"
t2 = '"APN",'
t3 = AP
t4 = '\r\n'
t = t1 + t2 + t3 + t4
Der Ausgang der es in Python ist wie folgt:
AT+SAPBR=3,1,"APN","TATA.DOCOMO.INTERNET"\r\n'
es sieht aus wie die Linie, die ich brauche, aber wenn ich in gsm.write (t) schreiben es einen Fehler gibt, habe ich sogar mit
gsm.write(byte(t))
gsm.write(t.encode())
0 versucht
Aber es funktioniert immer noch nicht.
Sie würden auf jeden Fall liefern müssen, welche Fehler Sie sehen ... und was „nicht“ bedeutet ... möchten Sie vielleicht auch 'print (repr (t))', um die tatsächliche Darstellung zu sehen –
enthält AP die Anführungszeichen? andernfalls müssen Sie sie hinzufügen ... – jsphpl
AP ist string, wenn ich doppelte Anführungszeichen t3 = "AP" speichere nur AP nicht Inhalt von AP !!! – cvk