#!/usr/bin/env python # author: Powen Ko import serial import time import RPi.GPIO as GPIO def readlineCR(port): rv = "" while True: ch = port.read() rv += ch if ch=='\r' or ch=='': return rv GPIO.setmode(GPIO.BCM) GPIO.setup(4,GPIO.OUT) port = serial.Serial("/dev/ttyAMA0", baudrate=9600, timeout=3.0) while True: rcv = readlineCR(port) print(rcv) port.write(rcv) str1=rcv.find("h") if str1 > 0 : GPIO.output(4,1) str1=rcv.find("l") if str1 > 0 : GPIO.output(4,0) time.sleep(0.1) wget httpss://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2 tar jxf ./Python-3.3.2.tar.bz2 cd ./Python-3.3.2 ./configure --prefix=/opt/python3.3.2 make && sudo make install python3.2 setup.py install sudo apt-get install python-serial#!/usr/bin/env python # author: Powen Ko import serial import time def readlineCR(port): rv = "" while True: ch = port.read() rv += ch if ch=='\r' or ch=='': return rv port = serial.Serial("/dev/ttyAMA0", baudrate=115200, timeout=3.0) while True: port.write("\r\nHi! I am Raspberry") rcv = readlineCR(port) port.write("\r\nYou sent:" + repr(rcv)) time.sleep(1)import time import RPi.GPIO as GPIO array1=[1,1,1,2,2,2] array2=[10,20,30,10,20,100] array3=[0.5,0.5,1.1,0.2,0.3,0.4] GPIO.setup(GPIO.BCM) GPIO.setup(4,GPIO.OUT) p1=GPIO.PWM(4,100) p1.start(0) GPIO.setup(17,GPIO.OUT) p2=GPIO.PWM(17,100) p2.start(0) GPIO.setup(27,GPIO.OUT) p3=GPIO.PWM(27,100) p3.start(0) while Ture: <%%KEEPWHITESPACE%%> try: <%%KEEPWHITESPACE%%> x=0 <%%KEEPWHITESPACE%%> for b in array1: <%%KEEPWHITESPACE%%> a=array2[x] <%%KEEPWHITESPACE%%> c=array3[x] <%%KEEPWHITESPACE%%> x=x+1 <%%KEEPWHITESPACE%%> dc= int((a*19/180)+5 <%%KEEPWHITESPACE%%> if b==1: <%%KEEPWHITESPACE%%> p1.ChangeDutyCycle(dc) <%%KEEPWHITESPACE%%> elif b==2: <%%KEEPWHITESPACE%%> p2.ChangeDutyCycle(dc) <%%KEEPWHITESPACE%%> elif b==3: <%%KEEPWHITESPACE%%> p3.ChangeDutyCycle(dc) <%%KEEPWHITESPACE%%> time.sleep(c) <%%KEEPWHITESPACE%%> except ValueError: <%%KEEPWHITESPACE%%> print("Not an interger valye")