“杨晨-2018013294-2021A-M08-92-WW8”版本间的差异

来自iCenter Wiki
跳转至: 导航搜索
(以“20211102 1. 快速利用树莓派创建智能硬件的网站:http://www.smartpi.cn/#/SdkVersionList 2. Win-SCP可以把写好的程序导入树莓派的板子(...”为内容创建页面)
 
第1行: 第1行:
 
20211102
 
20211102
 
1. 快速利用树莓派创建智能硬件的网站:http://www.smartpi.cn/#/SdkVersionList
 
1. 快速利用树莓派创建智能硬件的网站:http://www.smartpi.cn/#/SdkVersionList
 +
 
2. Win-SCP可以把写好的程序导入树莓派的板子(记得提前与树莓派连接同一个wifi)
 
2. Win-SCP可以把写好的程序导入树莓派的板子(记得提前与树莓派连接同一个wifi)
 +
 
3. RGB三色灯的程序经过漫长debug后终于成功运行,主要的问题有:小括号中括号不分,大小写不分,缺失关键语句等等。
 
3. RGB三色灯的程序经过漫长debug后终于成功运行,主要的问题有:小括号中括号不分,大小写不分,缺失关键语句等等。
;、RGB LED灯实验(书52页)
+
 
 +
;RGB LED灯实验(书52页)
 
import RPi.GPIO as GPIO
 
import RPi.GPIO as GPIO
 
import time
 
import time

2021年11月2日 (二) 04:12的版本

20211102 1. 快速利用树莓派创建智能硬件的网站:http://www.smartpi.cn/#/SdkVersionList

2. Win-SCP可以把写好的程序导入树莓派的板子(记得提前与树莓派连接同一个wifi)

3. RGB三色灯的程序经过漫长debug后终于成功运行,主要的问题有:小括号中括号不分,大小写不分,缺失关键语句等等。

RGB LED灯实验(书52页)

import RPi.GPIO as GPIO import time colors = [0xFF0000, 0x00FF00, 0x0000FF, 0xFFFF00, 0xFF00FF, 0x00FFFF] makerobo_R = 11 makerobo_G = 12 makerobo_B = 13 def makerobo_setup (Rpin, Gpin, Bpin):

   global pins
   global p_R, p_G, p_B
   pins = {'pin_R':Rpin, 'pin_G':Gpin,'pin_B':Bpin}
   GPIO.setmode(GPIO.BOARD)
   GPIO.setwarnings(False)
   for i in pins:
       GPIO.setup(pins[i], GPIO.OUT)
       GPIO.output(pins[i], GPIO.LOW)
   p_R = GPIO.PWM(pins['pin_R'],2000)
   p_G = GPIO.PWM(pins['pin_G'],1999)
   p_B = GPIO.PWM(pins['pin_B'],5000)
   p_R.start(0)
   p_G.start(0)
   p_B.start(0)

def makerobo_pwm_map(x, in_min, in_max, out_min, out_max):

   return (x-in_min)*(out_max - out_min) / (in_max -in_min) + out_min

def makerobo_off():

   GPIO.setmode (GPIO.BOARD)
   for i in pins:
       GPIO.setup(pins[i], GPIO.OUT)
       GPIO.output(pins[i], GPIO.LOW)

def makerobo_set_Color(col):

   R_val = (col & 0xff0000) >> 16
   G_val = (col & 0x00ff00) >> 8
   B_val = (col & 0x0000ff) >> 0
   R_val = makerobo_pwm_map (R_val, 0, 255, 0, 100)
   G_val = makerobo_pwm_map (G_val, 0, 255, 0, 100)
   B_val = makerobo_pwm_map (B_val, 0, 255, 0, 100)
   p_R.ChangeDutyCycle(100-R_val)
   p_G.ChangeDutyCycle(100-G_val)
   p_B.ChangeDutyCycle(100-B_val)

def makerobo_loop():

   while True:
       for col in colors:
           makerobo_set_Color(col)
           time.sleep(1)

def makerobo_destoy():

   p_R.stop()
   p_G.stop()
   p_B.stop()
   makerobo_off()
   GPIO.cleanup()

if __name__ == "__main__":

   try:
       makerobo_setup(makerobo_R, makerobo_G, makerobo_B)
       makerobo_loop()
   except KeyboardInterrupt:
       makerobo_destroy()