def setup_servo(): wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18,2) # hardware pwm only works on GPIO port 18 wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(375) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(18,0)
def __init__(self, name, pwm_port, backward_port, forward_port): self.name = name self.pwm_port = pwm_port self.backward_port = backward_port self.forward_port = forward_port self.backward_value = 0 self.forward_value = 0 # initialize Raspberry Pi ports for output wiringpi2.pinMode(self.pwm_port, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pinMode(self.backward_port, wiringpi2.GPIO.OUTPUT) wiringpi2.pinMode(self.forward_port, wiringpi2.GPIO.OUTPUT) # experimentally found values (use test_pwm.py): # frequency = 19200 (not hearable) # divisor = 2 # range = 500 # dead zone <= 53% self.mapping_u = [0, 1, 100] self.mapping_pwm = [0, 20, 100] wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS); # 480 Hz self.divisor = 40 self.pwm_range = 1000 wiringpi2.pwmSetRange(self.pwm_range) wiringpi2.pwmSetClock(self.divisor) # pwmFrequency in Hz = 19.2 MHz / pwmClock / pwmRange self.logger = logging.getLogger(__name__)
def set_pwm(self): wiringpi.wiringPiSetupGpio() wiringpi.pinMode(self.gpio_pin, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(self.clock) wiringpi.pwmSetRange(self.range) wiringpi.pwmWrite(self.gpio_pin, 0)
def main(): print "Starting PWM" wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(18,0) wiringpi.pinMode(13,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(13,0) dtMin, dtMax = 60, 120 dt = 72 while True: try: print dt wiringpi.pwmWrite(18,dt) wiringpi.pwmWrite(13,dt) dt += 10 if dt > dtMax: dt = dtMin time.sleep(1) except: wiringpi.pwmWrite(18,0) wiringpi.pwmWrite(13,0) print "Exiting." break
def setup_servo(): wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18, 2) # hardware pwm only works on GPIO port 18 wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(375) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(18, 0)
def __init__(self): Pi_rev = wiringpi2.piBoardRev() #@TODO: use this? self.GPIOS = { 'internal_buzzer': 11, 'latch': 7, 'unlock_LED': 15, 'deny_LED': 13, 'buzzer': 12, 'doorStatus1': 19, 'doorStatus2': 21, } #set up I/O pins wiringpi2.wiringPiSetupPhys() wiringpi2.pinMode(self.GPIOS['unlock_LED'], 1) wiringpi2.pinMode(self.GPIOS['deny_LED'], 1) wiringpi2.pinMode(self.GPIOS['latch'], 1) wiringpi2.pinMode(self.GPIOS['internal_buzzer'], 1) wiringpi2.pinMode(self.GPIOS['doorStatus1'], 0) wiringpi2.pinMode(self.GPIOS['doorStatus2'], 0) GPIO.setup(9, GPIO.IN) GPIO.setup(10, GPIO.IN) #GPIO.add_event_detect(9, GPIO.FALLING, callback=self.arm_security, bouncetime=300) #Set up Hardware PWM - Only works on GPIO 18 (Phys 12) wiringpi2.pwmSetMode(0) # set PWM to markspace mode wiringpi2.pinMode(self.GPIOS['buzzer'], 2) # set pin to PWM mode wiringpi2.pwmSetClock(750) # set HW PWM clock division (frequency) wiringpi2.pwmWrite(self.GPIOS['buzzer'], 0) proc = subprocess.Popen(['nfc-list'], stderr=subprocess.PIPE) result = proc.stderr.read() self.PN532 = False if 'Timeout' in result else True if not self.PN532: self.nfc = NFC.MFRC522()
def __init__(self, PIN_IN1_L=5, PIN_IN2_L=6, PIN_IN1_R=7, PIN_IN2_R=8, PIN_VREF_L=12, PIN_VREF_R=13): self.PIN_IN1_L = PIN_IN1_L self.PIN_IN1_R = PIN_IN1_R self.PIN_IN2_L = PIN_IN2_L self.PIN_IN2_R = PIN_IN2_R self.PIN_VREF_L = PIN_VREF_L self.PIN_VREF_R = PIN_VREF_R GPIO.setmode(GPIO.BCM) GPIO.setup(self.PIN_IN1_L, GPIO.OUT) GPIO.setup(self.PIN_IN2_L, GPIO.OUT) GPIO.setup(self.PIN_IN1_R, GPIO.OUT) GPIO.setup(self.PIN_IN2_R, GPIO.OUT) wp.wiringPiSetupGpio() wp.pinMode(self.PIN_VREF_L, wp.GPIO.PWM_OUTPUT) wp.pinMode(self.PIN_VREF_R, wp.GPIO.PWM_OUTPUT) wp.pwmSetMode(wp.PWM_MODE_MS) wp.pwmSetRange(Drive.MaxdutyRange) wp.pwmSetClock(400) #適当
def __init__(self): wiringpi.wiringPiSetupGpio() wiringpi.pinMode(SERVO_PIN,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(375) angle = 90 dutyCycle = int(angle/180.0*(0.14*1024)) + 6 wiringpi.pwmWrite(SERVO_PIN,dutyCycle)
def __init__(self, freq = 100.0): self.freq = freq output_pins.append(12) wp.pinMode(12, PWM) wp.pwmSetRange(4000) #range can go up to 4096, 4000 is good because it's large and a multiple of 100 clock = 19.2e6 / (4000.0 * freq) #set the divisor so the frequency comes out right wp.pwmSetClock(int(clock)) #this function needs an int wp.pwmSetMode(0) # necessary or else it's in a weird mode where nothing works wp.pwmWrite(12, 0) # stop for safety
def __init__(self): wiringpi2.wiringPiSetupGpio() self.SPEAKER = 18 self.MODE_PWM = 2 wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmWrite(self.SPEAKER, 0)
def __init__(self, base0 = 27, base90 = 73): wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(18, 0) self.base0 = base0 self.base90 = base90 self.setAngle(90)
def __init__(self,in1,in2,in3): self.in1 = in1 self.in2 = in2 self.in3 = in3 GPIO.setmode(GPIO.BCM) GPIO.setup(self.in1,GPIO.OUT) GPIO.setup(self.in2,GPIO.OUT) wiringpi.wiringPiSetupGpio() wiringpi.pinMode(self.in3, wiringpi.GPIO.PWM_OUTPUT) wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) wiringpi.pwmSetClock(375) wiringpi.pwmWrite(self.in3,0)
def softPwm(): print "SoftPwm Mode" wiringpi2.wiringPiSetup() wiringpi2.pinMode(PIN_TO_PWM,SET_PWM) wiringpi2.pwmSetMode(PWM_MODE_MS) #wiringpi2.softPwmCreate(PIN_TO_PWM,0,100) # Setup PWM using Pin, Initial Value and Range parameters #wiringpi2.softServoSettup() #softServoWrite() wiringpi2.pwmWrite(PIN_TO_PWM, 900) wiringpi2.delay(150) print "PWM is in NEUTRAL"
def init(): GPIO.setmode(GPIO.BCM) wiringpi.wiringPiSetupGpio() wiringpi.pinMode(LEFT_MOTOR_PWM, 2) wiringpi.pinMode(RIGHT_MOTOR_PWM, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(CLK_DIVISOR) wiringpi.pwmSetRange(MAX_SPEED) wiringpi.pwmWrite(LEFT_MOTOR_PWM, 0) wiringpi.pwmWrite(RIGHT_MOTOR_PWM, 0) GPIO.setup(LEFT_MOTOR_A, GPIO.OUT) GPIO.setup(LEFT_MOTOR_B, GPIO.OUT) GPIO.setup(RIGHT_MOTOR_A, GPIO.OUT) GPIO.setup(RIGHT_MOTOR_B, GPIO.OUT)
def __init__(self, pin): self.dtMin, self.dtMax, self.dtMed = 35, 120, 65 self.dt = self.dtMed self.pin = pin self.direction = '' wiringpi.wiringPiSetupGpio() wiringpi.pinMode(self.pin, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) try: wiringpi.pwmWrite(self.pin, 40) except Exception as e: print str(e)
def setupIO(): # Initialisation des entrées sorties sur le GrovePi # grovepi.pinMode(relay_pin,"OUTPUT") grovepi.pinMode(RGB_pin,"OUTPUT") grovepi.pinMode(PIR_pin, "INPUT") grovepi.chainableRgbLed_init(RGB_pin,8) # On génère un PWM hardware de fréquence 50Hz # # La largeur de l'impulsion est entre 0,8 et 2ms # wiringPi.wiringPiSetupGpio() wiringPi.pinMode(PWM_GPIO, 2) wiringPi.pwmSetMode(0) wiringPi.pwmSetClock(384) wiringPi.pwmSetRange(1024) wiringPi.pwmWrite(PWM_GPIO,75)
def listener(): rospy.init_node('listener', anonymous=True) rospy.Subscriber("chatter", String, callback) wiringpi.wiringPiSetupGpio() wiringpi.pinMode(pin,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(pin,0) wiringpi.pinMode(pin_dir[0],1) wiringpi.pinMode(pin_dir[1],1) # spin() simply keeps python from exiting until this node is stopped rospy.spin()
def io_init(): global io_initialized if io_initialized: return wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(12, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pinMode(13, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetRange(MAX_SPEED) wiringpi2.pwmSetClock(2) wiringpi2.pinMode(5, wiringpi2.GPIO.OUTPUT) wiringpi2.pinMode(6, wiringpi2.GPIO.OUTPUT) io_initialized = True
def __init__(self): self.pin_step = 1 # GPIO1, BCM pin 18 (labeled on pi plate 18) self.pin_dir = 6 # GPIO6, BCM pin 25 (labeled on pi plate 25) # the base clock is 19.2MHz and this is a divider self.pwm_base = 19.2 * 1000000 self.pwm_divider = 16 # 1.2 MHz wiringpi2.pinMode(self.pin_dir, wiringpi2.GPIO.OUTPUT) wiringpi2.pinMode(self.pin_step, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pwmSetMode( wiringpi2.GPIO.PWM_MODE_MS ) # mark/space i.e. run of 1s followed by run of 0s self.target = 0 self.current = 0 self.last_accum = time.time() self.volume = 0
def __init__(self): wiringpi2.wiringPiSetupGpio() self.SPEAKER = 18 self.MODE_PWM = 2 self.divisor = (19.2*(10**3))/440 wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) screen = curses.initscr() curses.start_color() self.window = curses.newwin(10, 80, 5, 5) curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK) curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_BLACK)
def __init__(self): wiringpi2.wiringPiSetupGpio() self.SPEAKER = 18 self.MODE_PWM = 2 self.divisor = (19.2 * (10**3)) / 440 wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) screen = curses.initscr() curses.start_color() self.window = curses.newwin(10, 80, 5, 5) curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK) curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_BLACK)
def io_init(): global io_initialized if io_initialized: return wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(MODE, wiringpi2.GPIO.OUTPUT) wiringpi2.digitalWrite(MODE, LOW) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetRange(PWM_RANGE_HIGH) wiringpi2.pwmSetClock(2) wiringpi2.pinMode(AIN1, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pinMode(BIN1, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pinMode(AIN2, wiringpi2.GPIO.OUTPUT) wiringpi2.pinMode(BIN2, wiringpi2.GPIO.OUTPUT) wiringpi2.softPwmCreate(AIN2, PWM_RANGE_LOW, PWM_RANGE_HIGH) wiringpi2.softPwmCreate(BIN2, PWM_RANGE_LOW, PWM_RANGE_HIGH) io_initialized = True
def dimming(): if not setupOK(): setupBoard() wpi.pinMode(1,wpi.GPIO.PWM_OUTPUT) wpi.pwmSetMode(wpi.GPIO.PWM_MODE_BAL) delta = 2 pwm = 1 count = 0 while count < 4: wpi.pwmWrite(1, pwm) pwm = pwm+delta if (pwm > 1024): pwm = 1024 delta = -2 count +=1 if (pwm < 1): pwm = 1 delta = 2 time.sleep(0.005) wpi.pinMode(1, wpi.GPIO.OUTPUT)
def Init(): global on wiringpi.wiringPiSetupGpio() wiringpi.pinMode(13, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pinMode(18, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) SetSP(1, 0.0) SetSP(2, 0.0) on = True procComms.PrintLog('Initialized servo control.')
def __init__(self, node_name="servo_control"): rospy.init_node(node_name) sub = rospy.Subscriber("deg_control", Int16, self.callback) signal.signal(signal.SIGINT, self.exit_handler) self.gp_out = 18 wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(self.gp_out, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetClock(375) self.RIGHT = 56 self.CENTER = 76 self.LEFT = 96 self.current_deg = self.CENTER wiringpi2.pwmWrite(self.gp_out, self.current_deg) wiringpi2.delay(500)
def __init__(self, node_name="telemouse_avoidance"): rospy.init_node(node_name) sub = rospy.Subscriber("disconfort", Int16, self.callback) pygame.mixer.init() self.hit_sound = pygame.mixer.Sound("n_418d125.wav") signal.signal(signal.SIGINT, self.exit_handler) self.gp_out = 18 wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(self.gp_out, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetClock(375) self.RIGHT = 56 self.CENTER = 76 self.LEFT = 96 self.rest_counter = 0
def main(): # use BCM GPIO numbers wp.wiringPiSetupPhys() # enable PWM0 wp.pinMode(12,2) # switch from default mode to mark:space mode wp.pwmSetMode(PWM_MODE_MS) wp.pwmSetClock(200) wp.pwmWrite(12, 0) while True: try: wp.pwmWrite(12, 2) time.sleep(3) # turn then wait wp.pwmWrite(12,128) time.sleep(3) # turn then wait wp.pwmWrite(12, 256) time.sleep(3)
def startup_event(self, db, cfg): # config pwm wiringpi2.pinMode(self.PWM_PIN, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetRange(self.PWM_RANGE) # 19.2 / 32 = 600KHz - Also starts the PWM wiringpi2.pwmSetClock(self.PWM_CLK_DIV) self.logd("Finding minimum fan speed...") if not self._find_minspeed(): return False self.logd("Minimum fan speed: {}%".format(self._minspeed)) self.set_highest_profile() # self.set_profile(40) if not self.add_requests( [["cpu_temp_profile", dict(profile="int")], ["cpu_fan_user", dict(speed="int")], ["cpu_fan_auto", dict()]]): return False return True
def softPwm(): print "SoftPwm Mode" wiringpi2.wiringPiSetup() wiringpi2.pinMode(PIN_TO_PWM,SET_PWM) wiringpi2.pwmSetMode(PWM_MODE_MS) #wiringpi2.softPwmCreate(PIN_TO_PWM,0,100) # Setup PWM using Pin, Initial Value and Range parameters #wiringpi2.softServoSettup() #softServoWrite() while True: for i in range(900, 1000): wiringpi2.pwmWrite(PIN_TO_PWM, i) wiringpi2.delay(150) print "Write to PWM: ", i for k in reversed(range(800, 1000)): wiringpi2.pwmWrite(PIN_TO_PWM, k) wiringpi2.delay(150) print "Write to PWM: ", k for i in range(800, 900): wiringpi2.pwmWrite(PIN_TO_PWM, i) wiringpi2.delay(150) print "Write to PWM: ", i
def unlock(): print "Unlock Key" param = sys.argv setdegree = int(90) print setdegree wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(servopin,2) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) wiringpi2.pwmSetClock(375) wiringpi2.pwmWrite(servopin,133) for i in range(133,73-1,1): print i wiringpi2.pwmWrite(servopin, i) wiringpi2.delay(500) wiringpi2.pwmWrite(servopin,26) wiringpi2.delay(500) wiringpi2.pwmWrite(servopin,74)
# GNU General Public License for more details. # # http://www.gnu.org/licenses/gpl.html # import wiringpi2 wiringpi2.wiringPiSetupGpio() # O PWM via hardware funciona somente na GPIO 18 # (Existe outra posibilidade usando o pino 12 do P1) SPEAKER = 18 MODE_PWM = 2 wiringpi2.pinMode(SPEAKER, MODE_PWM) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) # Os tons/notas são criados ao pulsar ao alto-falante usando PWM # para criar frequências. Cada nota tem uma frequência criada pela # variação do período de vibração (period of vibration), medido em µs. # Temos que calcular a largura do pulso (pulse-width) para ser metade # do período. Basicamente temos que pulsar o alto-falante em HIGH até # a largura do pulso (pulse-width) e então LOW, da mesma forma. Esses # pulsos vão criar uma vibração equivalente a frequência desejada. # Então temos, na ordem: # 1) Frequência # freq = A3 = Lá na 3ª oitava # freq = 440hz
#!/usr/bin/python import wiringpi2 as gpio import time #init the GPIO #prepare PWM pins gpio.wiringPiSetupGpio() gpio.pinMode(12, gpio.GPIO.PWM_OUTPUT) gpio.pinMode(13, gpio.GPIO.PWM_OUTPUT) #prepare PWM channels gpio.pwmSetMode(gpio.GPIO.PWM_MODE_MS) gpio.pwmSetRange(480) gpio.pwmSetClock(2) #prepare direction pins gpio.pinMode(5, gpio.GPIO.OUTPUT) gpio.pinMode(6, gpio.GPIO.OUTPUT) #movements def straight_fw(speed): gpio.digitalWrite(5, 1) gpio.digitalWrite(6, 1) gpio.pwmWrite(12, speed) gpio.pwmWrite(13, speed) def straight_bw(speed): gpio.digitalWrite(5, 0) gpio.digitalWrite(6, 0) gpio.pwmWrite(12, speed) gpio.pwmWrite(13, speed)
import wiringpi2 as wiringpi import time wiringpi.pwmSetMode(0) # PWM_MODE_MS = 0 wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18, 2) # pwm only works on GPIO port 18 wiringpi.pwmSetClock(6) # this parameters correspond to 25kHz wiringpi.pwmSetRange(128) wiringpi.pwmWrite(18, 0) # minimum RPM time.sleep(1) wiringpi.pwmWrite(18, 128) # maximum RPM time.sleep(1) wiringpi.pwmWrite(18, 0)
def setPwmMode(self, pwmMode): self.pwmMode = pwmMode wiringpi.pwmSetMode(pwmMode)
def end(self): wiringpi2.pinMode(self.SPEAKER, 0) wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_BAL)
midiOutput = pygame.midi.Output(port) midiOutput.set_instrument(instrument) def getServoDutyForWebIOPi(val): val_min = 0.0 val_max = 1.0 servo_min = 48 servo_max = 90 duty = int((servo_max-servo_min)*(val-val_min)/(val_max-val_min) + servo_min) return duty wiringpi.wiringPiSetupGpio() # GPIO名で番号指定 wiringpi.pinMode(CAMERA_SERVO, wiringpi.GPIO.PWM_OUTPUT) wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) # 周波数固定 wiringpi.pwmSetClock(375) # 50 Hz wiringpi.pwmWrite(CAMERA_SERVO, getServoDutyForWebIOPi(0.5)) # デバッグ出力を有効に webiopi.setDebug() # GPIOライブラリの取得 GPIO = webiopi.GPIO # WebIOPiの起動時に呼ばれる関数 def setup(): webiopi.debug("Script with macros - Setup") # GPIOのセットアップ GPIO.setFunction(PWM1, GPIO.PWM)
import wiringpi2 pin_step = 1 # GPIO1, BCM pin 18 (labeled on pi plate 18) pin_dir = 6 # GPIO6, BCM pin 25 (labeled on pi plate 25) pin_statusled = 3 # GPI3, BCM pin 22 wiringpi2.wiringPiSetup() wiringpi2.pinMode(pin_dir, wiringpi2.GPIO.OUTPUT) wiringpi2.pinMode(pin_step, wiringpi2.GPIO.PWM_OUTPUT) wiringpi2.pinMode(pin_statusled, wiringpi2.GPIO.OUTPUT) i2c = wiringpi2.I2C() wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) # mark/space i.e. run of 1s followed by run of 0s # the base clock is 19.2MHz and this is a divider pwm_base = 19.2*1000000 pwm_divider = 16 # 1.2 MHz wiringpi2.pwmSetClock(pwm_divider) # the range is 0-1024 which is another divider. so with a 1.2MHz clock we can go as low as 1172Hz def set_motor(hz, direction): wiringpi2.digitalWrite(pin_dir, direction) if hz == 0: wiringpi2.pwmWrite(pin_step, 0) return # if hz is 2000 (60 RPM) we want # x = 1200000/2000 = 600 r = int((pwm_base/pwm_divider)/hz)
import wiringpi2 as GPIO import time r = 200; div = 100; outPin = 1; GPIO.wiringPiSetup() GPIO.pinMode(outPin,2) GPIO.pwmSetMode(0) GPIO.pwmSetClock(div) GPIO.pwmSetRange(r) for duty in range(r,0,-1): GPIO.pwmWrite(1,duty) if not duty%20: print str(int(float(duty)/float(r)*100)) + "%" time.sleep(0.01) for duty in range(0,r+1): GPIO.pwmWrite(1,duty) if not duty%20: print str(int(float(duty)/float(r)*100)) + "%" time.sleep(0.01)
lookspeed = 100 pan = 72 tilt = 72 minPan = 28 maxPan = 120 minTilt = 25 maxTilt = 105 tiltPin = 18 panPin = 13 wiringpi.wiringPiSetupGpio() # setup servo pwm pins # 18 = tilt, 13 = pan wiringpi.pinMode(tiltPin,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(tiltPin,0) wiringpi.pinMode(panPin,2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) wiringpi.pwmWrite(panPin,0) print "testtest" #wiringpi.pwmWrite(tiltPin,100) #sleep(1) #wiringpi.pwmWrite(tiltPin,30)
f.write(str(time.ctime()) + "\n") check = 0 # speedPrev = 0 newTrack = 0 goalComponentPrev = 0 listPosition = [LatLon(0, 0)] # GPIO.setmode(GPIO.BCM) GPIO.setup(LED_RED, GPIO.OUT) GPIO.setup(LED_GREEN, GPIO.OUT) GPIO.setup(LED_BLUE, GPIO.OUT) pi.wiringPiSetupGpio() pi.pinMode(SAIL_SERVO_PIN, 2) pi.pinMode(RUDDER_SERVO_PIN, 2) pi.pwmSetMode(0) pi.pwmSetRange(1024) pi.pwmSetClock(375) # sailValue = (SAIL_FULLCLOSE + SAIL_FULLOPEN) / 2 if (SAIL_FULLCLOSE < 35 or SAIL_FULLOPEN > 55 or SAIL_FULLCLOSE > SAIL_FULLOPEN): exit() sailCntl = SailController(sailValue) # time.sleep(30) # rudderValue = RUDDER_CENTER if (rudderValue < 40 or rudderValue > 76 or RUDDER_FULLRIGHT < 40
GPIO.setmode(GPIO.BCM) # ピンの名前を変数として定義 SPICLK = 11 SPIMOSI = 10 SPIMISO = 9 SPICS = 8 # SPI通信用の入出力を定義 GPIO.setup(SPICLK, GPIO.OUT) GPIO.setup(SPIMOSI, GPIO.OUT) GPIO.setup(SPIMISO, GPIO.IN) GPIO.setup(SPICS, GPIO.OUT) wiringpi.wiringPiSetupGpio() # GPIO名で番号を指定する wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT) # PWM出力を指定 wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) # 周波数を固定するための設定 wiringpi.pwmSetClock(375) # 50 Hz。ここには 18750/(周波数) の計算値に近い整数を入れる # PWMのピン番号18とデフォルトのパルス幅をデューティ100%を1024として指定。 # ここでは6.75%に対応する69を指定 wiringpi.pwmWrite(18, 69) adc_pin0 = 0 try: while True: inputVal0 = readadc(adc_pin0, SPICLK, SPIMOSI, SPIMISO, SPICS) duty = servo_duty_hwpwm(inputVal0) wiringpi.pwmWrite(18, duty) sleep(0.2) except KeyboardInterrupt:
FRONT_LIGHT_PIN = 2 BACK_LIGHT_PIN = 3 # IO Modes on Raspberry OUTPUT = 1 INPUT = 0 print "[..] ", "Init Wiring Pi Lib" wiringpi2.wiringPiSetup() print "[..] ", "Init Servos" throttle = Servo(THROTTLE_PIN) steering = Servo(STEERING_PIN) wiringpi2.pwmSetMode(PWM_MODE_MS) print "[..] ", "Init LEDs" frontLed = LED(FRONT_LIGHT_PIN) backLed = LED(BACK_LIGHT_PIN) ### Open a Socket s = socket.socket() print "[..] New Socket on localhost:5556" host = '' # Get local machine name port = 5556 # Reserve a port for your service. ### Bind the Socket
from twisted.internet.protocol import Protocol, Factory from twisted.internet import reactor import RPi.GPIO as GPIO import wiringpi2 as wiringpi import time wiringpi.wiringPiSetupGpio() wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT) wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) wiringpi.pwmSetClock(400) wiringpi.pwmSetRange(1024) # 速度の調整 duty = 3 unduty = -3 set_time = 0.01 class RaspberryLight(Protocol): def connectionMade(self): self.factory.clients.append(self) def connectionLost(self, reason): self.factory.clients.remove(self) def dataReceived(self, data): if (data == "start"): print "start" # 回転角の調整 for deg in range(0, 171, duty): wiringpi.pwmWrite(18, deg / 2 + 910)
import os app = Flask(__name__) # Mise en route de WiringPi wiringpi2.wiringPiSetup() # Initialisation du GPIO wiringpi2.pinMode(1, 2) # PWM wiringpi2.pinMode(2, 1) # Premier moteur wiringpi2.pinMode(3, 1) wiringpi2.pinMode(4, 1) # Deuxieme moteur wiringpi2.pinMode(5, 1) wiringpi2.pwmSetMode(0) # Mode PWM @app.route("/") def hello(): return render_template('index.html', cpuUsage=psutil.cpu_percent(interval=None), cpuTemp=int(float(getCPUtemperature())), rpiversion=GPIO.RPI_REVISION) @app.route("/alive") def alive(): return "alive" @app.route("/direction/Gauche") def direction_gauche(): wiringpi2.digitalWrite(4, 0)
pwm_range = 1024 dt_min = 125 dt_max = 175 dt_horizontal = 150 dt_vertical = 150 # changing PWM verticalPWM = 0 verticalPWMSpeed = 0.5 # enable PWM0 wiringpi.pinMode(pwm_pin_horizontal, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(pwm_clock) wiringpi.pwmSetRange(pwm_range) # enable PWM1 wiringpi.pinMode(pwm_pin_vertical, 2) wiringpi.pwmSetMode(0) wiringpi.pwmSetClock(pwm_clock) wiringpi.pwmSetRange(pwm_range) #led faceFoundPin = 5 wiringpi.pinMode(faceFoundPin, 1) faceLost = True faceLostStart = -1