forked from espruino/Espruino
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathespruino_command.py
More file actions
executable file
·48 lines (42 loc) · 1.42 KB
/
espruino_command.py
File metadata and controls
executable file
·48 lines (42 loc) · 1.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/python
# This file is part of Espruino, a JavaScript interpreter for Microcontrollers
#
# Copyright (C) 2013 Gordon Williams <gw@pur3.co.uk>
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# ----------------------------------------------------------------------------------------
# Simple example code for sending a command to Espruino
# ----------------------------------------------------------------------------------------
import time
import serial
import sys
import json
def espruino_cmd(command):
ser = serial.Serial(
port='/dev/espruino', # or /dev/ttyAMA0 for serial on the Raspberry Pi
baudrate=9600,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
xonxoff=0, rtscts=0, dsrdtr=0,
)
ser.isOpen()
ser.write(command+"\n")
endtime = time.time()+0.2 # wait 0.2 sec
result = ""
while time.time() < endtime:
while ser.inWaiting() > 0:
result=result+ser.read(1)
ser.close()
return result
# Read 1 analog
#print espruino_cmd("print(analogRead(A1))").strip()
# Read 3 analogs into an array
#print espruino_cmd("print([analogRead(A1),analogRead(A2),analogRead(A3)])").strip().split(',')
if len(sys.argv)!=2:
print("USAGE: espruino_command.py "+'"'+"print('hello')"+'"')
exit(1)
print(espruino_cmd(sys.argv[1]).strip())