import serial
import time
nums1=['B','C','E','F','H','I','K','L','N','O','Q','R']
nums2=['A','D','G','J','M','P']
ser = serial.Serial("/dev/ttyAMA0",9600,8,'N',1,timeout = 0.5) #树莓派
print("serial start ...")
print("CTRL + c is end!")
#ser.write(bytes('$A010#','utf-8'))
def bedate(num , angle):
if angle >=100:
date = '$'+num+str(angle)+'#' #$A100#
elif angle ==0:
date = '$'+num+'00'+str(angle)+'#' #$A000#
else:
date = '$'+num+'0'+str(angle)+'#' #$A010#
date = bytes(date,'utf-8')
return date
def change(x,y):
n = x
angle = y
ser.write(bedate(n,angle))
def init():
for num1 in nums1:
change(num1,60)
for num2 in nums2:
change(num2,90)
'''
change('A',90)
change('B',40)
change('C',40)
change('D',90)
change('E',40)
change('F',40)
change('G',90)
change('H',40)
change('I',40)
change('J',90)
change('K',40)
change('L',40)
change('M',90)
change('N',40)
change('O',40)
change('P',90)
change('Q',40)
change('R',40)
'''
def go():
change('B',30)
change('H',30)
change('N',30)
time.sleep(0.1)
change('A',120)
change('G',120)
change('M',60)
time.sleep(0.1)
change('B',60)
change('H',60)
change('N',60)
time.sleep(0.1)
change('E',30)
change('K',30)
change('Q',30)
time.sleep(0.1)
change('A',90)
change('G',90)
change('M',90)
time.sleep(0.1)
change('D',120)
change('J',60)
change('P',60)
time.sleep(0.1)
change('E',60)
change('K',60)
change('Q',60)
time.sleep(0.1)
change('D',90)
change('J',90)
change('P',90)
time.sleep(0.1)
'''
change('D',90)
change('E',60)
change('F',60)
change('J',90)
change('K',60)
change('L',60)
change('P',90)
change('Q',60)
change('R',60)
'''
def left():
change('B',30)
change('H',30)
change('N',30)
time.sleep(0.1)
change('A',60)
change('G',60)
change('M',60)
time.sleep(0.1)
change('B',60)
change('H',60)
change('N',60)
time.sleep(0.1)
change('E',30)
change('K',30)
change('Q',30)
time.sleep(0.1)
change('A',90)
change('G',90)
change('M',90)
time.sleep(0.1)
change('D',60)
change('J',60)
change('P',60)
time.sleep(0.1)
change('E',60)
change('K',60)
change('Q',60)
time.sleep(0.1)
change('D',90)
change('J',90)
change('P',90)
time.sleep(0.1)
try:
while True:
key=input('in:')
if key==' ':
init()
elif key=='w':
go()
elif key=='a':
left()
except KeyboardInterrupt:
if ser != None:
ser.close()
try是什么
最新发布