├── .gitignore
├── .readthedocs.yml
├── Makefile
├── build
└── html
│ ├── .buildinfo
│ ├── .doctrees
│ ├── 0.pinpong介绍
│ │ └── 简介.doctree
│ ├── 1.pinpong教程
│ │ ├── 入门教程
│ │ │ ├── blink.doctree
│ │ │ └── index.doctree
│ │ ├── 安装教程
│ │ │ ├── index.doctree
│ │ │ ├── 安装-linux.doctree
│ │ │ ├── 安装-mac.doctree
│ │ │ ├── 安装-win.doctree
│ │ │ └── 安装-更新.doctree
│ │ ├── 经典案例
│ │ │ ├── blink.doctree
│ │ │ └── index.doctree
│ │ ├── 进阶教程
│ │ │ ├── LED闪烁.doctree
│ │ │ ├── index.doctree
│ │ │ ├── 噪声检测仪.doctree
│ │ │ ├── 定时浇花装置.doctree
│ │ │ ├── 智能节能灯.doctree
│ │ │ ├── 桌面气象站.doctree
│ │ │ ├── 模拟交通灯.doctree
│ │ │ ├── 游园人数统计.doctree
│ │ │ ├── 神奇的按键.doctree
│ │ │ ├── 调光台灯.doctree
│ │ │ ├── 近视警报器.doctree
│ │ │ └── 项目前置知识.doctree
│ │ └── 高级教程
│ │ │ ├── blink.doctree
│ │ │ └── index.doctree
│ ├── 2.pinpong示例
│ │ ├── index1.doctree
│ │ ├── index2.doctree
│ │ ├── index3.doctree
│ │ ├── indexhandpy.doctree
│ │ ├── indexunihiker.doctree
│ │ ├── 更多示例.doctree
│ │ ├── 示例程序-adc.doctree
│ │ ├── 示例程序-blink.doctree
│ │ ├── 示例程序-button.doctree
│ │ ├── 示例程序-dht.doctree
│ │ ├── 示例程序-handpy-display.doctree
│ │ ├── 示例程序-handpy-music.doctree
│ │ ├── 示例程序-handpy-rgb.doctree
│ │ ├── 示例程序-handpy-sensor.doctree
│ │ ├── 示例程序-hcr04.doctree
│ │ ├── 示例程序-irq.doctree
│ │ ├── 示例程序-lcd1602.doctree
│ │ ├── 示例程序-mlx90614.doctree
│ │ ├── 示例程序-neopixel.doctree
│ │ ├── 示例程序-nfc.doctree
│ │ ├── 示例程序-oled12864.doctree
│ │ ├── 示例程序-pwm.doctree
│ │ ├── 示例程序-rgb1602.doctree
│ │ ├── 示例程序-servo.doctree
│ │ ├── 示例程序-tcs34725.doctree
│ │ ├── 示例程序-tone.doctree
│ │ └── 示例程序-urm09.doctree
│ ├── 3.pinpong类库
│ │ ├── API列表-ADC类.doctree
│ │ ├── API列表-Board类.doctree
│ │ ├── API列表-PWM类.doctree
│ │ └── API列表-Pin类.doctree
│ ├── 4.pinpong更新记录
│ │ └── index.doctree
│ ├── 5.FAQ常见问题
│ │ └── index.doctree
│ ├── environment.pickle
│ └── index.doctree
│ ├── 0.pinpong介绍
│ └── 简介.html
│ ├── 1.pinpong教程
│ ├── 入门教程
│ │ ├── blink.html
│ │ └── index.html
│ ├── 安装教程
│ │ ├── index.html
│ │ ├── 安装-linux.html
│ │ ├── 安装-mac.html
│ │ ├── 安装-win.html
│ │ └── 安装-更新.html
│ ├── 经典案例
│ │ ├── blink.html
│ │ └── index.html
│ ├── 进阶教程
│ │ ├── LED闪烁.html
│ │ ├── index.html
│ │ ├── 噪声检测仪.html
│ │ ├── 定时浇花装置.html
│ │ ├── 智能节能灯.html
│ │ ├── 桌面气象站.html
│ │ ├── 模拟交通灯.html
│ │ ├── 游园人数统计.html
│ │ ├── 神奇的按键.html
│ │ ├── 调光台灯.html
│ │ ├── 近视警报器.html
│ │ └── 项目前置知识.html
│ └── 高级教程
│ │ ├── blink.html
│ │ └── index.html
│ ├── 2.pinpong示例
│ ├── index1.html
│ ├── index2.html
│ ├── index3.html
│ ├── indexhandpy.html
│ ├── indexunihiker.html
│ ├── 更多示例.html
│ ├── 示例程序-adc.html
│ ├── 示例程序-blink.html
│ ├── 示例程序-button.html
│ ├── 示例程序-dht.html
│ ├── 示例程序-handpy-display.html
│ ├── 示例程序-handpy-music.html
│ ├── 示例程序-handpy-rgb.html
│ ├── 示例程序-handpy-sensor.html
│ ├── 示例程序-hcr04.html
│ ├── 示例程序-irq.html
│ ├── 示例程序-lcd1602.html
│ ├── 示例程序-mlx90614.html
│ ├── 示例程序-neopixel.html
│ ├── 示例程序-nfc.html
│ ├── 示例程序-oled12864.html
│ ├── 示例程序-pwm.html
│ ├── 示例程序-rgb1602.html
│ ├── 示例程序-servo.html
│ ├── 示例程序-tcs34725.html
│ ├── 示例程序-tone.html
│ └── 示例程序-urm09.html
│ ├── 3.pinpong类库
│ ├── API列表-ADC类.html
│ ├── API列表-Board类.html
│ ├── API列表-PWM类.html
│ └── API列表-Pin类.html
│ ├── 4.pinpong更新记录
│ └── index.html
│ ├── 5.FAQ常见问题
│ └── index.html
│ ├── _images
│ ├── 01blink.png
│ ├── 0211.png
│ ├── 0212.png
│ ├── 0221.png
│ ├── 02btn.png
│ ├── 0311.png
│ ├── 0312.png
│ ├── 0313.png
│ ├── 0321.png
│ ├── 0322.png
│ ├── 0411.png
│ ├── 0412.png
│ ├── 0421.png
│ ├── 04LDL1.png
│ ├── 04LDL2.png
│ ├── 04Log.png
│ ├── 0501L.png
│ ├── 0502L.png
│ ├── 0503L.png
│ ├── 0511.png
│ ├── 0512.png
│ ├── 0521.png
│ ├── 0522.png
│ ├── 0531.png
│ ├── 05log.png
│ ├── 0611.png
│ ├── 0612.png
│ ├── 0620.png
│ ├── 0630.png
│ ├── 06fin.png
│ ├── 06servo.png
│ ├── 0711.png
│ ├── 0712.png
│ ├── 0713.png
│ ├── 0721.png
│ ├── 0730.jpg
│ ├── 0801L.png
│ ├── 0802L.png
│ ├── 0811.png
│ ├── 0830.png
│ ├── 08th.png
│ ├── 0901L.png
│ ├── 0902L.png
│ ├── 0911.png
│ ├── 09th.jpg
│ ├── 1011.png
│ ├── 1012.png
│ ├── 1021.png
│ ├── 1030.png
│ ├── 1031.png
│ ├── 10th.png
│ ├── 2.png
│ ├── 2nd.png
│ ├── 3.png
│ ├── 3rd.png
│ ├── 4th.png
│ ├── 5th.png
│ ├── 6th.png
│ ├── 7th.png
│ ├── IDLE00.png
│ ├── IDLE01.png
│ ├── IDLE02.png
│ ├── IDLE03.png
│ ├── IDLE04.png
│ ├── IDLE05.png
│ ├── LED.png
│ ├── LEDpin.png
│ ├── UNOR3.png
│ ├── addpath.png
│ ├── addpath1.png
│ ├── aftersleep.jpg
│ ├── analogpic.png
│ ├── arduinoL.png
│ ├── bilibili.jpg
│ ├── blink.png
│ ├── blink03.png
│ ├── btnshanke.jpg
│ ├── buzzer.jpg
│ ├── digitalpic.png
│ ├── idle000.png
│ ├── idle1.png
│ ├── idle2.png
│ ├── lightsen.png
│ ├── linux_install1.png
│ ├── linux_quickstart4.png
│ ├── pinpong-cmd-win.png
│ ├── pinpong02.png
│ ├── python_path.png
│ ├── python_path_pinpong.png
│ ├── servopic.png
│ ├── soundsen.png
│ ├── uno引脚.png
│ ├── urm.jpg
│ ├── win_install1.jpg
│ ├── win_install3.jpg
│ ├── win_installpython1.jpg
│ ├── win_installpython2.jpg
│ └── win_installpython3.png
│ ├── _sources
│ ├── 0.pinpong介绍
│ │ └── 简介.rst.txt
│ ├── 1.pinpong教程
│ │ ├── 入门教程
│ │ │ ├── blink.rst.txt
│ │ │ └── index.rst.txt
│ │ ├── 安装教程
│ │ │ ├── index.rst.txt
│ │ │ ├── 安装-linux.rst.txt
│ │ │ ├── 安装-mac.rst.txt
│ │ │ ├── 安装-win.rst.txt
│ │ │ └── 安装-更新.rst.txt
│ │ ├── 经典案例
│ │ │ ├── blink.rst.txt
│ │ │ └── index.rst.txt
│ │ ├── 进阶教程
│ │ │ ├── LED闪烁.rst.txt
│ │ │ ├── index.rst.txt
│ │ │ ├── 噪声检测仪.rst.txt
│ │ │ ├── 定时浇花装置.rst.txt
│ │ │ ├── 智能节能灯.rst.txt
│ │ │ ├── 桌面气象站.rst.txt
│ │ │ ├── 模拟交通灯.rst.txt
│ │ │ ├── 游园人数统计.rst.txt
│ │ │ ├── 神奇的按键.rst.txt
│ │ │ ├── 调光台灯.rst.txt
│ │ │ ├── 近视警报器.rst.txt
│ │ │ └── 项目前置知识.rst.txt
│ │ └── 高级教程
│ │ │ ├── blink.rst.txt
│ │ │ └── index.rst.txt
│ ├── 2.pinpong示例
│ │ ├── index1.rst.txt
│ │ ├── index2.rst.txt
│ │ ├── index3.rst.txt
│ │ ├── indexhandpy.rst.txt
│ │ ├── indexunihiker.rst.txt
│ │ ├── 更多示例.rst.txt
│ │ ├── 示例程序-adc.rst.txt
│ │ ├── 示例程序-blink.rst.txt
│ │ ├── 示例程序-button.rst.txt
│ │ ├── 示例程序-dht.rst.txt
│ │ ├── 示例程序-handpy-display.rst.txt
│ │ ├── 示例程序-handpy-music.rst.txt
│ │ ├── 示例程序-handpy-rgb.rst.txt
│ │ ├── 示例程序-handpy-sensor.rst.txt
│ │ ├── 示例程序-hcr04.rst.txt
│ │ ├── 示例程序-irq.rst.txt
│ │ ├── 示例程序-lcd1602.rst.txt
│ │ ├── 示例程序-mlx90614.rst.txt
│ │ ├── 示例程序-neopixel.rst.txt
│ │ ├── 示例程序-nfc.rst.txt
│ │ ├── 示例程序-oled12864.rst.txt
│ │ ├── 示例程序-pwm.rst.txt
│ │ ├── 示例程序-rgb1602.rst.txt
│ │ ├── 示例程序-servo.rst.txt
│ │ ├── 示例程序-tcs34725.rst.txt
│ │ ├── 示例程序-tone.rst.txt
│ │ └── 示例程序-urm09.rst.txt
│ ├── 3.pinpong类库
│ │ ├── API列表-ADC类.rst.txt
│ │ ├── API列表-Board类.rst.txt
│ │ ├── API列表-PWM类.rst.txt
│ │ └── API列表-Pin类.rst.txt
│ ├── 4.pinpong更新记录
│ │ └── index.rst.txt
│ ├── 5.FAQ常见问题
│ │ └── index.rst.txt
│ └── index.rst.txt
│ ├── _static
│ ├── _sphinx_javascript_frameworks_compat.js
│ ├── basic.css
│ ├── css
│ │ ├── badge_only.css
│ │ ├── fonts
│ │ │ ├── Roboto-Slab-Bold.woff
│ │ │ ├── Roboto-Slab-Bold.woff2
│ │ │ ├── Roboto-Slab-Regular.woff
│ │ │ ├── Roboto-Slab-Regular.woff2
│ │ │ ├── fontawesome-webfont.eot
│ │ │ ├── fontawesome-webfont.svg
│ │ │ ├── fontawesome-webfont.ttf
│ │ │ ├── fontawesome-webfont.woff
│ │ │ ├── fontawesome-webfont.woff2
│ │ │ ├── lato-bold-italic.woff
│ │ │ ├── lato-bold-italic.woff2
│ │ │ ├── lato-bold.woff
│ │ │ ├── lato-bold.woff2
│ │ │ ├── lato-normal-italic.woff
│ │ │ ├── lato-normal-italic.woff2
│ │ │ ├── lato-normal.woff
│ │ │ └── lato-normal.woff2
│ │ └── theme.css
│ ├── doctools.js
│ ├── documentation_options.js
│ ├── file.png
│ ├── fonts
│ │ ├── Lato
│ │ │ ├── lato-bold.eot
│ │ │ ├── lato-bold.ttf
│ │ │ ├── lato-bold.woff
│ │ │ ├── lato-bold.woff2
│ │ │ ├── lato-bolditalic.eot
│ │ │ ├── lato-bolditalic.ttf
│ │ │ ├── lato-bolditalic.woff
│ │ │ ├── lato-bolditalic.woff2
│ │ │ ├── lato-italic.eot
│ │ │ ├── lato-italic.ttf
│ │ │ ├── lato-italic.woff
│ │ │ ├── lato-italic.woff2
│ │ │ ├── lato-regular.eot
│ │ │ ├── lato-regular.ttf
│ │ │ ├── lato-regular.woff
│ │ │ └── lato-regular.woff2
│ │ └── RobotoSlab
│ │ │ ├── roboto-slab-v7-bold.eot
│ │ │ ├── roboto-slab-v7-bold.ttf
│ │ │ ├── roboto-slab-v7-bold.woff
│ │ │ ├── roboto-slab-v7-bold.woff2
│ │ │ ├── roboto-slab-v7-regular.eot
│ │ │ ├── roboto-slab-v7-regular.ttf
│ │ │ ├── roboto-slab-v7-regular.woff
│ │ │ └── roboto-slab-v7-regular.woff2
│ ├── jquery.js
│ ├── js
│ │ ├── badge_only.js
│ │ ├── theme.js
│ │ └── versions.js
│ ├── language_data.js
│ ├── minus.png
│ ├── plus.png
│ ├── pygments.css
│ ├── searchtools.js
│ └── sphinx_highlight.js
│ ├── genindex.html
│ ├── index.html
│ ├── objects.inv
│ ├── search.html
│ └── searchindex.js
├── make.bat
├── readme.md
├── requirements.txt
└── source
├── 0.pinpong介绍
└── 简介.rst
├── 1.pinpong教程
├── 入门教程
│ ├── blink.rst
│ └── index.rst
├── 安装教程
│ ├── images
│ │ ├── 1.png
│ │ ├── 2.png
│ │ ├── 3.png
│ │ ├── 4.png
│ │ ├── addpath.png
│ │ ├── idle1.png
│ │ ├── idle2.png
│ │ ├── linux_install1.png
│ │ ├── linux_install2.png
│ │ ├── linux_install3.png
│ │ ├── linux_install4.png
│ │ ├── linux_install5.png
│ │ ├── linux_quickstart1.png
│ │ ├── linux_quickstart2.png
│ │ ├── linux_quickstart3.png
│ │ ├── linux_quickstart4.png
│ │ ├── pinpong-cmd-win.png
│ │ ├── win_install1.jpg
│ │ ├── win_install2.jpg
│ │ ├── win_install3.jpg
│ │ ├── win_install4.jpg
│ │ ├── win_install5.jpg
│ │ ├── win_installpython1.jpg
│ │ ├── win_installpython2.jpg
│ │ ├── win_installpython3.png
│ │ ├── win_quickstart1.jpg
│ │ ├── win_quickstart2.jpg
│ │ ├── win_quickstart3.jpg
│ │ └── win_quickstart4.jpg
│ ├── index.rst
│ ├── 安装-linux.rst
│ ├── 安装-mac.rst
│ ├── 安装-win.rst
│ └── 安装-更新.rst
├── 经典案例
│ ├── blink.rst
│ └── index.rst
├── 进阶教程
│ ├── LED闪烁.rst
│ ├── images
│ │ ├── 01blink.png
│ │ ├── 0211.png
│ │ ├── 0212.png
│ │ ├── 0221.png
│ │ ├── 02btn.png
│ │ ├── 0311.png
│ │ ├── 0312.png
│ │ ├── 0313.png
│ │ ├── 0321.png
│ │ ├── 0322.png
│ │ ├── 0411.png
│ │ ├── 0412.png
│ │ ├── 0421.png
│ │ ├── 04LDL1.png
│ │ ├── 04LDL2.png
│ │ ├── 04Log.png
│ │ ├── 0501L.png
│ │ ├── 0502L.png
│ │ ├── 0503L.png
│ │ ├── 0511.png
│ │ ├── 0512.png
│ │ ├── 0521.png
│ │ ├── 0522.png
│ │ ├── 0531.png
│ │ ├── 05log.png
│ │ ├── 0611.png
│ │ ├── 0612.png
│ │ ├── 0620.png
│ │ ├── 0630.png
│ │ ├── 06fin.png
│ │ ├── 06servo.png
│ │ ├── 0711.png
│ │ ├── 0712.png
│ │ ├── 0713.png
│ │ ├── 0721.png
│ │ ├── 0730.jpg
│ │ ├── 0801L.png
│ │ ├── 0802L.png
│ │ ├── 0811.png
│ │ ├── 0830.png
│ │ ├── 08th.png
│ │ ├── 0901L.png
│ │ ├── 0902L.png
│ │ ├── 0911.png
│ │ ├── 09th.jpg
│ │ ├── 1011.png
│ │ ├── 1012.png
│ │ ├── 1021.png
│ │ ├── 1030.png
│ │ ├── 1031.png
│ │ ├── 10th.png
│ │ ├── 2nd.png
│ │ ├── 3rd.png
│ │ ├── 4th.png
│ │ ├── 5th.png
│ │ ├── 6th.png
│ │ ├── 7th.png
│ │ ├── IDLE00.png
│ │ ├── IDLE01.png
│ │ ├── IDLE02.png
│ │ ├── IDLE03.png
│ │ ├── IDLE04.png
│ │ ├── IDLE05.png
│ │ ├── LED.png
│ │ ├── LEDpin.png
│ │ ├── OBLOQ引脚说明图.jpg
│ │ ├── UNOR3.png
│ │ ├── addpath.png
│ │ ├── aftersleep.jpg
│ │ ├── aftersleep.png
│ │ ├── analogpic.png
│ │ ├── arduinoL.png
│ │ ├── blink.png
│ │ ├── blink02.png
│ │ ├── blink03.png
│ │ ├── btnshanke.jpg
│ │ ├── btnshanke.png
│ │ ├── buzzer.jpg
│ │ ├── digitalpic.png
│ │ ├── idle000.png
│ │ ├── install.png
│ │ ├── lightsen.png
│ │ ├── pinpong-cmd-win.png
│ │ ├── pinpong02.png
│ │ ├── run.png
│ │ ├── run2.png
│ │ ├── run3.png
│ │ ├── servopic.png
│ │ ├── shell.png
│ │ ├── shell2.png
│ │ ├── soundsen.png
│ │ ├── uno引脚.png
│ │ ├── urm.jpg
│ │ ├── 图片6.png
│ │ ├── 找地址01.png
│ │ └── 找地址02.png
│ ├── index.rst
│ ├── 噪声检测仪.rst
│ ├── 定时浇花装置.rst
│ ├── 智能节能灯.rst
│ ├── 桌面气象站.rst
│ ├── 模拟交通灯.rst
│ ├── 游园人数统计.rst
│ ├── 神奇的按键.rst
│ ├── 调光台灯.rst
│ ├── 近视警报器.rst
│ ├── 进阶教程.zip
│ └── 项目前置知识.rst
└── 高级教程
│ ├── blink.rst
│ └── index.rst
├── 2.pinpong示例
├── .vscode
│ └── settings.json
├── images
│ ├── python_path.png
│ └── python_path_pinpong.png
├── index1.rst
├── index2.rst
├── index3.rst
├── indexhandpy.rst
├── indexunihiker.rst
├── 更多示例.rst
├── 示例程序-adc.rst
├── 示例程序-blink.rst
├── 示例程序-button.rst
├── 示例程序-dht.rst
├── 示例程序-handpy-display.rst
├── 示例程序-handpy-music.rst
├── 示例程序-handpy-rgb.rst
├── 示例程序-handpy-sensor.rst
├── 示例程序-hcr04.rst
├── 示例程序-irq.rst
├── 示例程序-lcd1602.rst
├── 示例程序-mlx90614.rst
├── 示例程序-neopixel.rst
├── 示例程序-nfc.rst
├── 示例程序-oled12864.rst
├── 示例程序-pwm.rst
├── 示例程序-rgb1602.rst
├── 示例程序-servo.rst
├── 示例程序-tcs34725.rst
├── 示例程序-tone.rst
└── 示例程序-urm09.rst
├── 3.pinpong类库
├── API列表-ADC类.rst
├── API列表-Board类.rst
├── API列表-PWM类.rst
└── API列表-Pin类.rst
├── 4.pinpong更新记录
└── index.rst
├── 5.FAQ常见问题
└── index.rst
├── bilibili.jpg
├── conf.py
├── index.rst
└── note.md
/.gitignore:
--------------------------------------------------------------------------------
1 | /.vscode/
2 |
--------------------------------------------------------------------------------
/.readthedocs.yml:
--------------------------------------------------------------------------------
1 | # .readthedocs.yml
2 | # Read the Docs configuration file
3 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4 |
5 | # Required
6 | version: 2
7 |
8 | # Set the OS, Python version and other tools you might need
9 | build:
10 | os: ubuntu-22.04
11 | tools:
12 | python: "3.11"
13 | # You can also specify other tool versions:
14 | # nodejs: "20"
15 | # rust: "1.70"
16 | # golang: "1.20"
17 |
18 | # Build documentation in the docs/ directory with Sphinx
19 | sphinx:
20 | configuration: source/conf.py
21 |
22 | # Build documentation with MkDocs
23 | #mkdocs:
24 | # configuration: mkdocs.yml
25 |
26 | # Optionally build your docs in additional formats such as PDF and ePub
27 | formats: all
28 |
29 | # Optionally set the version of Python and requirements required to build your docs
30 | python:
31 | install:
32 | - requirements: requirements.txt
33 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | # Minimal makefile for Sphinx documentation
2 | #
3 |
4 | # You can set these variables from the command line, and also
5 | # from the environment for the first two.
6 | SPHINXOPTS ?=
7 | SPHINXBUILD ?= sphinx-build
8 | SOURCEDIR = source
9 | BUILDDIR = build
10 |
11 | # Put it first so that "make" without argument is like "make help".
12 | help:
13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14 |
15 | .PHONY: help Makefile
16 |
17 | # Catch-all target: route all unknown targets to Sphinx using the new
18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19 | %: Makefile
20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
21 |
--------------------------------------------------------------------------------
/build/html/.buildinfo:
--------------------------------------------------------------------------------
1 | # Sphinx build info version 1
2 | # This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
3 | config: 17a33f4ad73b05eee09245b1020f313f
4 | tags: 645f666f9bcd5a90fca523b33c5a78b7
5 |
--------------------------------------------------------------------------------
/build/html/.doctrees/0.pinpong介绍/简介.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/0.pinpong介绍/简介.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/入门教程/blink.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/入门教程/blink.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/入门教程/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/入门教程/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/安装教程/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/安装教程/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/安装教程/安装-linux.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/安装教程/安装-linux.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/安装教程/安装-mac.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/安装教程/安装-mac.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/安装教程/安装-win.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/安装教程/安装-win.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/安装教程/安装-更新.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/安装教程/安装-更新.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/经典案例/blink.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/经典案例/blink.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/经典案例/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/经典案例/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/LED闪烁.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/LED闪烁.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/噪声检测仪.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/噪声检测仪.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/定时浇花装置.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/定时浇花装置.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/智能节能灯.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/智能节能灯.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/桌面气象站.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/桌面气象站.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/模拟交通灯.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/模拟交通灯.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/游园人数统计.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/游园人数统计.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/神奇的按键.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/神奇的按键.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/调光台灯.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/调光台灯.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/近视警报器.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/近视警报器.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/进阶教程/项目前置知识.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/进阶教程/项目前置知识.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/高级教程/blink.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/高级教程/blink.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/1.pinpong教程/高级教程/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/1.pinpong教程/高级教程/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/index1.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/index1.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/index2.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/index2.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/index3.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/index3.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/indexhandpy.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/indexhandpy.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/indexunihiker.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/indexunihiker.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/更多示例.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/更多示例.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-adc.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-adc.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-blink.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-blink.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-button.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-button.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-dht.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-dht.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-handpy-display.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-handpy-display.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-handpy-music.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-handpy-music.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-handpy-rgb.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-handpy-rgb.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-handpy-sensor.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-handpy-sensor.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-hcr04.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-hcr04.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-irq.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-irq.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-lcd1602.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-lcd1602.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-mlx90614.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-mlx90614.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-neopixel.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-neopixel.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-nfc.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-nfc.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-oled12864.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-oled12864.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-pwm.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-pwm.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-rgb1602.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-rgb1602.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-servo.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-servo.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-tcs34725.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-tcs34725.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-tone.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-tone.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/2.pinpong示例/示例程序-urm09.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/2.pinpong示例/示例程序-urm09.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/3.pinpong类库/API列表-ADC类.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/3.pinpong类库/API列表-ADC类.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/3.pinpong类库/API列表-Board类.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/3.pinpong类库/API列表-Board类.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/3.pinpong类库/API列表-PWM类.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/3.pinpong类库/API列表-PWM类.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/3.pinpong类库/API列表-Pin类.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/3.pinpong类库/API列表-Pin类.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/4.pinpong更新记录/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/4.pinpong更新记录/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/5.FAQ常见问题/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/5.FAQ常见问题/index.doctree
--------------------------------------------------------------------------------
/build/html/.doctrees/environment.pickle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/environment.pickle
--------------------------------------------------------------------------------
/build/html/.doctrees/index.doctree:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/.doctrees/index.doctree
--------------------------------------------------------------------------------
/build/html/_images/01blink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/01blink.png
--------------------------------------------------------------------------------
/build/html/_images/0211.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0211.png
--------------------------------------------------------------------------------
/build/html/_images/0212.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0212.png
--------------------------------------------------------------------------------
/build/html/_images/0221.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0221.png
--------------------------------------------------------------------------------
/build/html/_images/02btn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/02btn.png
--------------------------------------------------------------------------------
/build/html/_images/0311.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0311.png
--------------------------------------------------------------------------------
/build/html/_images/0312.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0312.png
--------------------------------------------------------------------------------
/build/html/_images/0313.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0313.png
--------------------------------------------------------------------------------
/build/html/_images/0321.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0321.png
--------------------------------------------------------------------------------
/build/html/_images/0322.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0322.png
--------------------------------------------------------------------------------
/build/html/_images/0411.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0411.png
--------------------------------------------------------------------------------
/build/html/_images/0412.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0412.png
--------------------------------------------------------------------------------
/build/html/_images/0421.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0421.png
--------------------------------------------------------------------------------
/build/html/_images/04LDL1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/04LDL1.png
--------------------------------------------------------------------------------
/build/html/_images/04LDL2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/04LDL2.png
--------------------------------------------------------------------------------
/build/html/_images/04Log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/04Log.png
--------------------------------------------------------------------------------
/build/html/_images/0501L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0501L.png
--------------------------------------------------------------------------------
/build/html/_images/0502L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0502L.png
--------------------------------------------------------------------------------
/build/html/_images/0503L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0503L.png
--------------------------------------------------------------------------------
/build/html/_images/0511.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0511.png
--------------------------------------------------------------------------------
/build/html/_images/0512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0512.png
--------------------------------------------------------------------------------
/build/html/_images/0521.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0521.png
--------------------------------------------------------------------------------
/build/html/_images/0522.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0522.png
--------------------------------------------------------------------------------
/build/html/_images/0531.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0531.png
--------------------------------------------------------------------------------
/build/html/_images/05log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/05log.png
--------------------------------------------------------------------------------
/build/html/_images/0611.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0611.png
--------------------------------------------------------------------------------
/build/html/_images/0612.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0612.png
--------------------------------------------------------------------------------
/build/html/_images/0620.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0620.png
--------------------------------------------------------------------------------
/build/html/_images/0630.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0630.png
--------------------------------------------------------------------------------
/build/html/_images/06fin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/06fin.png
--------------------------------------------------------------------------------
/build/html/_images/06servo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/06servo.png
--------------------------------------------------------------------------------
/build/html/_images/0711.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0711.png
--------------------------------------------------------------------------------
/build/html/_images/0712.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0712.png
--------------------------------------------------------------------------------
/build/html/_images/0713.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0713.png
--------------------------------------------------------------------------------
/build/html/_images/0721.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0721.png
--------------------------------------------------------------------------------
/build/html/_images/0730.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0730.jpg
--------------------------------------------------------------------------------
/build/html/_images/0801L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0801L.png
--------------------------------------------------------------------------------
/build/html/_images/0802L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0802L.png
--------------------------------------------------------------------------------
/build/html/_images/0811.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0811.png
--------------------------------------------------------------------------------
/build/html/_images/0830.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0830.png
--------------------------------------------------------------------------------
/build/html/_images/08th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/08th.png
--------------------------------------------------------------------------------
/build/html/_images/0901L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0901L.png
--------------------------------------------------------------------------------
/build/html/_images/0902L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0902L.png
--------------------------------------------------------------------------------
/build/html/_images/0911.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/0911.png
--------------------------------------------------------------------------------
/build/html/_images/09th.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/09th.jpg
--------------------------------------------------------------------------------
/build/html/_images/1011.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/1011.png
--------------------------------------------------------------------------------
/build/html/_images/1012.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/1012.png
--------------------------------------------------------------------------------
/build/html/_images/1021.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/1021.png
--------------------------------------------------------------------------------
/build/html/_images/1030.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/1030.png
--------------------------------------------------------------------------------
/build/html/_images/1031.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/1031.png
--------------------------------------------------------------------------------
/build/html/_images/10th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/10th.png
--------------------------------------------------------------------------------
/build/html/_images/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/2.png
--------------------------------------------------------------------------------
/build/html/_images/2nd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/2nd.png
--------------------------------------------------------------------------------
/build/html/_images/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/3.png
--------------------------------------------------------------------------------
/build/html/_images/3rd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/3rd.png
--------------------------------------------------------------------------------
/build/html/_images/4th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/4th.png
--------------------------------------------------------------------------------
/build/html/_images/5th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/5th.png
--------------------------------------------------------------------------------
/build/html/_images/6th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/6th.png
--------------------------------------------------------------------------------
/build/html/_images/7th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/7th.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE00.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE00.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE01.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE02.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE03.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE04.png
--------------------------------------------------------------------------------
/build/html/_images/IDLE05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/IDLE05.png
--------------------------------------------------------------------------------
/build/html/_images/LED.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/LED.png
--------------------------------------------------------------------------------
/build/html/_images/LEDpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/LEDpin.png
--------------------------------------------------------------------------------
/build/html/_images/UNOR3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/UNOR3.png
--------------------------------------------------------------------------------
/build/html/_images/addpath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/addpath.png
--------------------------------------------------------------------------------
/build/html/_images/addpath1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/addpath1.png
--------------------------------------------------------------------------------
/build/html/_images/aftersleep.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/aftersleep.jpg
--------------------------------------------------------------------------------
/build/html/_images/analogpic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/analogpic.png
--------------------------------------------------------------------------------
/build/html/_images/arduinoL.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/arduinoL.png
--------------------------------------------------------------------------------
/build/html/_images/bilibili.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/bilibili.jpg
--------------------------------------------------------------------------------
/build/html/_images/blink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/blink.png
--------------------------------------------------------------------------------
/build/html/_images/blink03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/blink03.png
--------------------------------------------------------------------------------
/build/html/_images/btnshanke.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/btnshanke.jpg
--------------------------------------------------------------------------------
/build/html/_images/buzzer.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/buzzer.jpg
--------------------------------------------------------------------------------
/build/html/_images/digitalpic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/digitalpic.png
--------------------------------------------------------------------------------
/build/html/_images/idle000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/idle000.png
--------------------------------------------------------------------------------
/build/html/_images/idle1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/idle1.png
--------------------------------------------------------------------------------
/build/html/_images/idle2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/idle2.png
--------------------------------------------------------------------------------
/build/html/_images/lightsen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/lightsen.png
--------------------------------------------------------------------------------
/build/html/_images/linux_install1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/linux_install1.png
--------------------------------------------------------------------------------
/build/html/_images/linux_quickstart4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/linux_quickstart4.png
--------------------------------------------------------------------------------
/build/html/_images/pinpong-cmd-win.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/pinpong-cmd-win.png
--------------------------------------------------------------------------------
/build/html/_images/pinpong02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/pinpong02.png
--------------------------------------------------------------------------------
/build/html/_images/python_path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/python_path.png
--------------------------------------------------------------------------------
/build/html/_images/python_path_pinpong.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/python_path_pinpong.png
--------------------------------------------------------------------------------
/build/html/_images/servopic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/servopic.png
--------------------------------------------------------------------------------
/build/html/_images/soundsen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/soundsen.png
--------------------------------------------------------------------------------
/build/html/_images/uno引脚.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/uno引脚.png
--------------------------------------------------------------------------------
/build/html/_images/urm.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/urm.jpg
--------------------------------------------------------------------------------
/build/html/_images/win_install1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/win_install1.jpg
--------------------------------------------------------------------------------
/build/html/_images/win_install3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/win_install3.jpg
--------------------------------------------------------------------------------
/build/html/_images/win_installpython1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/win_installpython1.jpg
--------------------------------------------------------------------------------
/build/html/_images/win_installpython2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/win_installpython2.jpg
--------------------------------------------------------------------------------
/build/html/_images/win_installpython3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_images/win_installpython3.png
--------------------------------------------------------------------------------
/build/html/_sources/0.pinpong介绍/简介.rst.txt:
--------------------------------------------------------------------------------
1 | ========
2 | 简介
3 | ========
4 |
5 | PinPong库是一套控制开源硬件主控板的Python库,支持上百种开源硬件电子模块,5分钟即可让你上手使用Python控制开源硬件。
6 |
7 | 借助于PinPong库,直接用Python代码就能给各种常见的开源硬件,例如Arduino、树莓派、行空板。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,电脑端有一套统一的Python接口库。
8 |
9 | PinPong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。
10 |
11 | pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了行空板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
12 |
13 | .. 注意:: 当前PinPong库正在快速更新中,已支持Arduino系列uno、leonardo、mega2560,ESP32系列掌控板(handpy),micro:bit(microbit),Linux系列行空板(unihiker),树莓派传感器支持50+,其他主控板及更多扩展库将逐步支持。
14 |
15 |
16 | 本文档推荐阅读流程:
17 |
18 | #. 查看安装教程进行准备
19 | #. 查看示例快速上手测试
20 | #. 查看教程进行系统学习
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/入门教程/blink.rst.txt:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ===============
3 | 教程编写中,如果你想参与,请联系我们。
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/入门教程/index.rst.txt:
--------------------------------------------------------------------------------
1 | 入门教程
2 | ========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/安装教程/index.rst.txt:
--------------------------------------------------------------------------------
1 | 安装教程
2 | ==========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | 安装-win.rst
8 | 安装-linux.rst
9 | 安装-mac.rst
10 | 安装-更新.rst
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/安装教程/安装-linux.rst.txt:
--------------------------------------------------------------------------------
1 | ==================
2 | Linux 平台安装
3 | ==================
4 |
5 | 终端中输入sudo pip install pinpong即可安装。
6 |
7 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install pinpong -i http://mirrors.aliyun.com/pypi/simple/
8 |
9 | .. code-block:: bash
10 |
11 | $ sudo pip install pinpong
12 |
13 |
14 | .. image:: images/linux_install1.png
15 |
16 | 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
17 |
18 | 开始第一个程序
19 | -----------------
20 |
21 | #. 连接arudino uno板至电脑;
22 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到Python编辑器中,运行代码;
23 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
24 |
25 | .. image:: images/linux_quickstart4.png
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/安装教程/安装-mac.rst.txt:
--------------------------------------------------------------------------------
1 |
2 | ==================
3 | Mac OS X 平台安装
4 | ==================
5 |
6 |
7 |
8 | 启动用命令行,(打开任意finder窗口,键入Shift+Command+U), 双击“终端”。
9 | 输入命令行,安装pinPong库
10 |
11 | .. code-block:: bash
12 |
13 | $ pip install pinpong
14 |
15 |
16 |
17 | .. image:: images/2.png
18 |
19 | .. image:: images/3.png
20 |
21 | 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
22 |
23 | 开始第一个程序
24 | -----------------
25 |
26 | #. 连接arudino uno板至电脑;
27 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到Python编辑器中,运行代码;
28 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
29 |
30 | .. code-block:: bash
31 |
32 | $ python blink.py
33 |
34 |
35 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/安装教程/安装-win.rst.txt:
--------------------------------------------------------------------------------
1 |
2 | ==================
3 | Windows平台安装
4 | ==================
5 |
6 | 1. 安装Python3。pinpong库依赖Python,因此请确保电脑安装了Python3,如果已经安装,此步可以略过。
7 |
8 | - 如果没有安装Python3,则需要进行安装, Python下载地址: `点击打开 `_
9 |
10 | .. image:: images/win_installpython1.jpg
11 |
12 | - Windows平台对应点击Windows,然后选择最新版本下载(也可选择其他版本)
13 |
14 | .. image:: images/win_installpython2.jpg
15 |
16 | .. image:: images/win_installpython3.png
17 |
18 | - 下载完成后根据引导进行安装,注意安装最后一步勾选add to path,将python加入到环境变量。
19 |
20 | .. image:: images/addpath.png
21 |
22 | 2. 打开命令提示窗。win+R快捷键,输入cmd
23 |
24 | .. image:: images/win_install1.jpg
25 |
26 | 3. 安装pinpong库。小黑窗中输入pip install pinpong ,等待片刻即可安装完成。
27 |
28 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install pinpong -i http://mirrors.aliyun.com/pypi/simple/
29 |
30 | .. image:: images/win_install3.jpg
31 |
32 | 4. 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
33 |
34 | .. image:: images/pinpong-cmd-win.png
35 |
36 | 开始第一个程序
37 | -----------------
38 |
39 | #. 连接arudino uno板至电脑;
40 | #. 打开IDLE编辑器,新建文件(New File);
41 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到IDLE中,点击“运行(RUN) > Run Module”或按键盘上F5键即可运行代码;
42 | #. Python Shell窗口即会显示PinPong的logo和运行状况,Uno板载LED开始闪烁,运行成功,按键盘上的Ctrl+C组合键即可停止代码运行。
43 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
44 |
45 | .. image:: images/idle1.png
46 | .. image:: images/idle2.png
47 |
48 |
49 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/安装教程/安装-更新.rst.txt:
--------------------------------------------------------------------------------
1 | =================
2 | 查看pinpong版本
3 | =================
4 | pinpong安装成功后,在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
5 |
6 | .. image:: images/pinpong-cmd-win.png
7 |
8 | ==============
9 | 升级pinpong库
10 | ==============
11 |
12 | pinpong目前处于快速更新迭代中,因此会不定期进行更新,通过如下命令可以进行版本更新:
13 |
14 | .. code-block:: bash
15 |
16 | $ pip install -U pinpong
17 |
18 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install -U pinpong -i http://mirrors.aliyun.com/pypi/simple/
19 |
20 |
21 | ==============
22 | 卸载pinpong库
23 | ==============
24 | 如果pinpong库出现异常情况时,可以尝试使用如下命令卸载pinpong库然后再使用install命令安装:
25 |
26 | .. code-block:: bash
27 |
28 | $ pip uninstall pinpong
29 |
30 |
31 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/经典案例/blink.rst.txt:
--------------------------------------------------------------------------------
1 | 虚谷号案例
2 | ===============
3 |
4 |
5 | - 虚谷号入门使用教程:`厚物扩展板 `_
6 |
7 | - 虚谷号案例:`百科相机 `_
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/经典案例/index.rst.txt:
--------------------------------------------------------------------------------
1 | 经典案例
2 | ===========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/进阶教程/index.rst.txt:
--------------------------------------------------------------------------------
1 | 系列教程
2 | ===========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | 项目前置知识.rst
8 | LED闪烁.rst
9 | 神奇的按键.rst
10 | 调光台灯.rst
11 | 智能节能灯.rst
12 | 近视警报器.rst
13 | 噪声检测仪.rst
14 | 模拟交通灯.rst
15 | 桌面气象站.rst
16 | 游园人数统计.rst
17 | 定时浇花装置.rst
18 |
19 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/进阶教程/噪声检测仪.rst.txt:
--------------------------------------------------------------------------------
1 | ================
2 | 项目6 噪声检测仪
3 | ================
4 |
5 | 一、概述
6 | ==========
7 |
8 | 在日常生活会有很多噪声的来源,当噪声大到一定程度,就会影响我们的身体健康。那你有想过制作一个噪声检测装置吗?在之前的项目中我们有使用过声音传感器,那如何将检测结果更直观的显示出来?请跟着本文完成项目吧。
9 |
10 | .. image:: images/6th.png
11 |
12 | 二、项目实施
13 | =============
14 |
15 | ----------------
16 | (1)驱动舵机
17 | ----------------
18 |
19 | **硬件准备:**
20 |
21 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
22 |
23 | 模块:舵机
24 |
25 | 连接线:TypeAtoB方口USB连接线
26 |
27 | .. image:: images/06servo.png
28 |
29 | - 将舵机接入4号数字引脚
30 |
31 | **程序编写:**
32 |
33 | 1. 打开pingpong库的官方文档,找到常用库示例中的“舵机”,并用IDLE打开。
34 |
35 | .. image:: images/0611.png
36 |
37 | 2. 摁下F5运行程序,察看效果。
38 |
39 | .. image:: images/0612.png
40 |
41 | **运行效果**
42 |
43 | **舵机会以0度转到90度转到180度,再转回90度转到0度循环。**
44 |
45 | 注意:在程序运行时不可以拔掉与Arduino连接的USB线,且不能关闭新弹出的Python shell运行窗口,如果拔线或者关闭运行窗口,程序功能就会停止执行。
46 |
47 | 3. 如果我们想要修改舵机旋转的角度或让舵机按一定速度慢慢旋转,那我们只需要修改角度即可。示例程序为舵机从0度慢慢旋转至120度。
48 |
49 | .. code-block:: python
50 |
51 | import time
52 | from pinpong.board import Board,Pin,Servo
53 |
54 | Board("uno").begin()
55 |
56 | s1 = Servo(Pin(Pin.D4))
57 |
58 | while True:
59 | for i in range(120):
60 | s1.write_angle(i)
61 | time.sleep(0.1)
62 |
63 | --------------------------
64 | (2)用舵机反馈声音数值
65 | --------------------------
66 |
67 | 大家可能会好奇,舵机是如何实现反馈声音数值的功能。如图所示,我们可以将读取到的数值转换成舵机的角度值,然后用舵柄当作指针来反馈数值。
68 |
69 | .. image:: images/0620.png
70 |
71 | **硬件准备:**
72 |
73 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
74 |
75 | 模块:舵机、声音传感器
76 |
77 | 连接线:TypeAtoB方口USB连接线
78 |
79 | .. image:: images/06fin.png
80 |
81 | - 将舵机接入4号数字引脚,声音传感器接入A0模拟引脚。
82 |
83 | **程序编写**
84 |
85 | 1. 我们在之前的项目中使用过声音传感器,知道如何读取它的数值,但是声音传感器读出的数据是0~1023而我们使用的舵机的旋转角度是0~180度,所以我们需要在程序中对这个数值进行转换。
86 |
87 | .. code-block:: python
88 |
89 | vs = Sound.read_analog()
90 | servoTurn = int(vs*180/1024)
91 |
92 | 在这里加入int,将数值整形,转化为舵机旋转的角度。
93 |
94 | 2. 在了解了如何将声音传感器读取的数值转换为舵机可旋转的角度值之后,修改程序,示例程序如下。
95 |
96 | .. code-block:: python
97 |
98 | import time
99 | from pinpong.board import Board,Pin,Servo
100 |
101 | Board("uno").begin()
102 |
103 | s1 = Servo(Pin(Pin.D4))
104 | Sound = Pin(Pin.A0,Pin.ANALOG)
105 |
106 | while True:
107 | vs = Sound.read_analog()
108 | servoTurn = int(vs*180/1024)
109 | print(servoTurn)
110 | s1.write_angle(servoTurn)
111 | time.sleep(0.5)
112 |
113 | 三、代码分析
114 | =============
115 |
116 | .. code-block:: python
117 |
118 | import time
119 | from pinpong.board import Board,Pin,Servo
120 |
121 | Board("uno").begin()
122 |
123 | s1 = Servo(Pin(Pin.D4)) #初始化舵机在D4引脚
124 | Sound = Pin(Pin.A0,Pin.ANALOG)#初始化声音传感器在A0引脚
125 |
126 | while True:
127 | vs = Sound.read_analog()
128 | servoTurn = int(vs*180/1024)#转换声音数值为舵机角度
129 | print(servoTurn)
130 | s1.write_angle(servoTurn)
131 | time.sleep(0.5)
132 |
133 | **思考**
134 |
135 | 在实际使用时我们会发现舵机的转动角度基本不会超过90度,这里我们可以试着将读取到的声音值打印出来观察一下,看看究竟为什么舵机只会在一个较小的范围内转动。
136 |
137 |
138 | 四、硬件分析
139 | =============
140 |
141 | **什么是舵机?**
142 |
143 | 舵机是一种可以指定控制位置(角度)的电机,可以通过程序来指定控制舵机旋转的角度。我们最常用的舵机大多最大旋转角度是0°~180°,也有90°或者其他角度的。也有比较特殊的360°舵机,但是360°舵机不能够控制其旋转到指定的角度。本项目中我们使用的是180°舵机。
144 |
145 | .. image:: images/servopic.png
146 |
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/进阶教程/调光台灯.rst.txt:
--------------------------------------------------------------------------------
1 | ===============
2 | 项目3 调光台灯
3 | ===============
4 |
5 | 一、概述
6 | ========
7 |
8 | 在前面的课程中我们学会了如何点亮并控制LED灯,那LED灯的亮度我们可以调节吗?如果输出的值不是数字量,而是模拟量,是不是就可以实现通过数值来精确控制灯光亮度了。
9 |
10 | 在上节课的设计中,我们使用的是按钮控制灯的亮灭,按钮只有两个状态,是没办法输出模拟值的,所以本项目我们就需要使用到旋钮来作为灯光亮度的输入。
11 |
12 | .. image:: images/3rd.png
13 |
14 | 二、项目实施
15 | ============
16 |
17 | --------------
18 | (1)渐变灯光
19 | --------------
20 |
21 | **硬件准备:**
22 |
23 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
24 |
25 | 模块:LED发光模块
26 |
27 | 连接线:TypeAtoB方口USB连接线
28 |
29 | .. image:: images/0311.png
30 |
31 | - 将LED发光模块接入6号数字引脚
32 |
33 | **程序编写:**
34 |
35 | 1. 打开pingpong库的官方文档,找到基础库示例中的“模拟输出”,并用IDLE打开。
36 |
37 | .. image:: images/0312.png
38 |
39 | 2. 摁下F5运行程序,查看效果。LED灯会逐渐变亮,当到最亮时熄灭再慢慢变亮,循环变化。
40 |
41 | .. image:: images/0313.png
42 |
43 | --------------
44 | (2)旋钮调光
45 | --------------
46 |
47 | 在上步完成的功能中,我们旋钮来精确的控制LED灯的亮度。
48 |
49 | **硬件准备:**
50 |
51 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
52 |
53 | 模块:LED发光模块、旋钮模块
54 |
55 | 连接线:TypeAtoB方口USB连接线
56 |
57 | .. image:: images/0321.png
58 |
59 | - 将LED发光模块接入6号数字引脚,将旋钮模块接入A0模拟引脚
60 |
61 | **程序编写:**
62 |
63 | .. code-block:: python
64 |
65 | import time
66 | from pinpong.board import Board,Pin
67 |
68 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
69 |
70 | pwm0 = Pin(Pin.D6, Pin.PWM) #初始化引脚为PWM模式 模拟输出方法2
71 | adc0 = Pin(Pin.A0, Pin.ANALOG) #引脚初始化为电平输出
72 |
73 | while True:
74 | v = adc0.read_analog() #读取A0口模拟信号数值
75 | L = int(v*255/1024)
76 | pwm0.write_analog(L) #PWM输出
77 | print("A0=",L)
78 |
79 | 运行代码,旋转旋钮LED灯会慢慢亮起和熄灭。
80 |
81 | .. image:: images/0322.png
82 |
83 | 三、代码分析
84 | ============
85 |
86 | 1. 导入必要的包和初始化设置。
87 |
88 | .. code-block:: python
89 |
90 | import time
91 | from pinpong.board import Board,Pin
92 | Board("uno").begin() #初始化,选择板型和端口号,不输入则留空进行自动识别
93 | pwm0 = Pin(Pin.D6, Pin.PWM)
94 | adc0 = Pin(Pin.A0, Pin.ANALOG) #将Pin传入ADC中实现模拟输入
95 |
96 | 2. 我们需要将旋钮输出的模拟值转换为LED灯亮度的PWM值,为了得到整数这里用了整型功能int。
97 |
98 | .. code-block:: python
99 |
100 | v = adc0.read_analog() #读取A0口模拟信号数值
101 | L = int(v*255/1024)
102 |
103 | 3. 接着让LED灯根据我们转换过的数值亮起。
104 |
105 | .. code-block:: python
106 |
107 | pwm0.write_analog(L) #PWM输出
108 | print("A0=",L)
109 |
110 |
111 | **数据类型-整数类型**
112 |
113 | 在我们做运算的时候,传感器读取到的数值经过*180/1024运算的结果往往不会是一个整数,常常会带着长长的小数尾数。我们试着不加int整形得到的结果如下:
114 |
115 | .. image:: images/0630.png
116 |
117 | 这样的数值我们是无法直接使用的,所以就需要使用到整形int将数据取整。
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/高级教程/blink.rst.txt:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ===============
3 | 教程编写中,如果你想参与,请联系我们。
--------------------------------------------------------------------------------
/build/html/_sources/1.pinpong教程/高级教程/index.rst.txt:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ==========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/index1.rst.txt:
--------------------------------------------------------------------------------
1 | 基础库示例
2 | ==================
3 |
4 | 示例程序可帮助你快速验证模块的使用,复制粘贴代码到python编辑器中,并修改Board初始化版型为你使用的板子型号即可
5 |
6 | - 常用库示例中的模块通过board库导入
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-blink.rst
12 | 示例程序-button.rst
13 | 示例程序-adc.rst
14 | 示例程序-pwm.rst
15 | 示例程序-irq.rst
16 |
17 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/index2.rst.txt:
--------------------------------------------------------------------------------
1 | 常用库示例
2 | ==================
3 |
4 | - 常用库示例中的模块通过board库导入
5 |
6 |
7 | .. toctree::
8 | :maxdepth: 2
9 |
10 | 示例程序-servo.rst
11 | 示例程序-tone.rst
12 | 示例程序-hcr04.rst
13 | 示例程序-dht.rst
14 | 示例程序-neopixel.rst
15 |
16 |
17 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/index3.rst.txt:
--------------------------------------------------------------------------------
1 | 扩展库示例
2 | ==================
3 |
4 | - 扩展库示例中的模块通过libs库导入,
5 | - 可通过终端输入pinpong查询支持列表和使用方法
6 | - 从安装目录下的examples文件夹中可以找到所有示例程序代码
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-lcd1602.rst
12 | 示例程序-oled12864.rst
13 | 示例程序-tcs34725.rst
14 | 示例程序-urm09.rst
15 | 示例程序-rgb1602.rst
16 | 示例程序-mlx90614.rst
17 |
18 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/indexhandpy.rst.txt:
--------------------------------------------------------------------------------
1 | 掌控板示例
2 | ==================
3 |
4 | - 以下部分为掌控板板载特殊元件控制示例
5 | - 非板载特殊器件(例如IO、外接传感器等)操作方法同其他所有主控板基础及扩展示例
6 | - 掌控板无法运行完整Python3,因此在使用PinPong时不可以脱离电脑使用。
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-handpy-display.rst
12 | 示例程序-handpy-sensor.rst
13 | 示例程序-handpy-rgb.rst
14 | 示例程序-handpy-music.rst
15 |
16 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/indexunihiker.rst.txt:
--------------------------------------------------------------------------------
1 | 行空板示例
2 | ==================
3 |
4 | - 行空板是一个运行Linux的开发板,板载GD32协处理器,因此可以使用pinpong库控制板载或外接硬件。
5 |
6 |
7 | 行空板官方文档中提供了大量pinpong库案例,因此基础教程请打开行空板官方教程查看:https://www.unihiker.com.cn/wiki/pinpong_python_lib
8 |
9 | .. image:: https://img.dfrobot.com.cn/wiki/none/61788796a3fd1aa3d6d31b8e618a0e44.png
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/更多示例.rst.txt:
--------------------------------------------------------------------------------
1 | 更多示例
2 | ==================
3 |
4 | pinpong库安装目录下有更多示例程序,可以通过如下方法找到.
5 |
6 | 1. 进入Python终端,然后依次输入如下代码即可查看Python库所在的目录(site-packages)
7 |
8 | .. code-block:: bash
9 |
10 | import pinpong
11 | print(pinpong.__path__)
12 |
13 | .. image:: images/python_path.png
14 |
15 | 2. 打开对应路径的文件夹,其中examples文件夹下即为所有内置的示例程序
16 |
17 | .. 注意:: 内置examples文件夹下的案例仅供参考使用,不排除后续会变更,最终以本文档网页中列出的示例为准。
18 |
19 | .. image:: images/python_path_pinpong.png
20 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-adc.rst.txt:
--------------------------------------------------------------------------------
1 | 1-03-adc:模拟输入
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:打印UNO板A0口模拟值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板A0接一个旋钮模块
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(unomicrobit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | #adc0 = ADC(Pin(Pin.A0)) #将Pin传入ADC中实现模拟输入 模拟输入方法1
18 | adc0 = Pin(Pin.A0, Pin.ANALOG) #引脚初始化为电平输出 模拟输入方法2
19 |
20 | while True:
21 | #v = adc0.read() #读取A0口模拟信号数值 模拟输入方法1
22 | v = adc0.read_analog() #读取A0口模拟信号数值 模拟输入方法2
23 | print("A0=", v)
24 | time.sleep(0.5)
25 |
26 |
27 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-blink.rst.txt:
--------------------------------------------------------------------------------
1 | 1-01-blink:数字输出
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制arduino UNO板载LED灯一秒闪烁一次
8 | #接线:使用windows或linux电脑连接一块arduino主控板
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 |
18 | led = Pin(Pin.D13, Pin.OUT) #引脚初始化为电平输出
19 |
20 | while True:
21 | #led.value(1) #输出高电平 方法1
22 | led.write_digital(1) #输出高电平 方法2
23 | print("1") #终端打印信息
24 | time.sleep(1) #等待1秒 保持状态
25 |
26 | #led.value(0) #输出低电平 方法1
27 | led.write_digital(0) #输出低电平 方法2
28 | print("0") #终端打印信息
29 | time.sleep(1) #等待1秒 保持状态
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-button.rst.txt:
--------------------------------------------------------------------------------
1 | 1-02-button:数字输入
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:使用按钮控制arduino UNO板载亮灭
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个按钮模块
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | btn = Pin(Pin.D8, Pin.IN) #引脚初始化为电平输入
18 | led = Pin(Pin.D13, Pin.OUT)
19 |
20 | while True:
21 | #v = btn.value() #读取引脚电平方法1
22 | v = btn.read_digital() #读取引脚电平方法2
23 | print(v) #终端打印读取的电平状态
24 | #led.value(v) #将按钮状态设置给led灯引脚 输出电平方法1
25 | led.write_digital(v) #将按钮状态设置给led灯引脚 输出电平方法2
26 | time.sleep(0.1)
27 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-dht.rst.txt:
--------------------------------------------------------------------------------
1 | 2-04-dht:温湿度传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取dht温湿度传感器
8 | #接线:使用windows或linux电脑连接一块arduino主控板,dht11连接D6,dht22连接D7
9 | import time
10 | from pinpong.board import Board,Pin,DHT11,DHT22 #导入dht库
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | dht11 = DHT11(Pin(Pin.D6))
18 | dht22 = DHT22(Pin(Pin.D7))
19 |
20 | while True:
21 | temp = dht11.temp_c() #读取摄氏温度
22 | humi = dht11.humidity() #读取湿度
23 | print("dht11 temperature=",temp," humidity=",humi)
24 |
25 | temp = dht22.temp_c() #读取摄氏温度
26 | humi = dht22.humidity() #读取湿度
27 | print("dht22 temperature=",temp," humidity=",humi)
28 | time.sleep(1)
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-handpy-display.rst.txt:
--------------------------------------------------------------------------------
1 | 掌控板示例-屏幕控制
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板屏幕显示功能
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | oled.DispChar('你好世界', 38, 0) #先写入缓存区,在(38,0)处显示'你好世界'
20 | oled.DispChar('hello,world', 32, 16) #先写入缓存区,在(32,16)处显示'hello,world'
21 | oled.DispChar('안녕하세요', 35, 32) #先写入缓存区,在(35,32)处显示'안녕하세요'
22 | oled.DispChar('こんにちは世界', 24, 48) #先写入缓存区,在(24,48)处显示'こんにちは世界'
23 | oled.show() #显示画面
24 |
25 |
26 | '''其他屏幕控制的方法'''
27 | #oled.DispChar("PinPong库",1) #屏幕显示"pinpong库"在第一行
28 | #oled.DispChar("pinpong库", 42, 22) #屏幕显示"pinpong库"在x,y坐标处,x:0-127,y:0-63
29 | #oled.Bitmap(0,0,50,50,"E:\\PinPong\\default.png") #依次是显示的坐标X,Y, 显示的宽和高,图片路径
30 | #oled.chear(1) #屏幕清除第一行的内容,参数1,2,3,4
31 | #oled.fill(0) #清屏黑色填0,白色填1
32 | #oled.rotation(0) #屏幕旋转0°或者180°
33 | #oled.pixel(0,0) #在坐标x,y画点
34 | #oled.set_line_width(1) #设置线宽范围 1 - 128
35 | #oled.line(0,0,127,63) #划线,依次是起点坐标x1,y1和终点坐标x2,y2
36 | #oled.circle(63, 31, 20) #画圆,依次是坐标x, y和 半径, 不填充
37 | #oled.fill_circle(63, 31, 20) #画圆,依次是坐标x, y和 半径, 填充
38 | #oled.rect(0,0, 63, 31) #画矩形,依次是起点坐标x, y, 宽,高, 不填充
39 | #oled.fill_rect(0,0, 63, 31) #画矩形,依次是起点坐标x, y, 宽,高, 填充
40 | #oled.show() #显示生效,所有屏幕操作执行完成后调用show才会执行
41 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-handpy-music.rst.txt:
--------------------------------------------------------------------------------
1 | 掌控板示例-音乐播放
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板蜂鸣器播放音调
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | tune = ["C4:4", "D4:4", "E4:4", "C4:4", "C4:4", "D4:4", "E4:4", "C4:4",
20 | "E4:4", "F4:4", "G4:8", "E4:4", "F4:4", "G4:8"]
21 | music.play(tune) #播放自编乐谱
22 |
23 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-handpy-rgb.rst.txt:
--------------------------------------------------------------------------------
1 | 掌控板示例-RGB灯控制
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板板载RGB灯
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | rgb[0] = (255, 0, 0) # 设置为红色,全亮度
20 | rgb[1] = (0, 128, 0) # 设定为绿色,一半亮度
21 | rgb[2] = (0, 0, 64) # 设置为蓝色,四分之一亮度
22 | rgb.write()
23 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-handpy-sensor.rst.txt:
--------------------------------------------------------------------------------
1 | 掌控板示例-读取传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取掌控板板载传感器功能,通过终端窗口查看数据
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | while True:
20 | print(button_a.value()) #按键A是否按下
21 | print(button_b.value()) #按键B是否按下
22 | print(button_ab.value()) #按键AB是否按下
23 | # print(touchPad_P.is_touched()) #是否触摸P
24 | # print(touchPad_Y.is_touched()) #是否触摸Y
25 | # print(touchPad_T.is_touched()) #是否触摸T
26 | # print(touchPad_H.is_touched()) #是否触摸H
27 | # print(touchPad_O.is_touched()) #是否触摸O
28 | # print(touchPad_N.is_touched()) #是否触摸N
29 | # touch_threshold("all",60) #设置按键P/Y/T/H/O/N的触摸阈值,all代表全部
30 | # print(touchPad_P.read()) #读取按键P的触摸值
31 | # print(touchPad_Y.read()) #读取按键Y的触摸值
32 | # print(touchPad_T.read()) #读取按键T的触摸值
33 | # print(touchPad_H.read()) #读取按键H的触摸值
34 | # print(touchPad_O.read()) #读取按键O的触摸值
35 | # print(touchPad_N.read()) #读取按键N的触摸值
36 | print(sound.read()) #读取麦克风强度
37 | print(light.read()) #读取环境光强度
38 | # print(accelerometer.get_x()) #读取加速度X的值
39 | # print(accelerometer.get_y()) #读取加速度Y的值
40 | # print(accelerometer.get_z()) #读取加速度Z的值
41 | # print(accelerometer.get_strength()) #读取加速度的强度
42 | print("------------------")
43 | time.sleep(0.4)
44 |
45 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-hcr04.rst.txt:
--------------------------------------------------------------------------------
1 | 2-03-sr04_urm10:超声波传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取超声波
8 | #接线:使用windows或linux电脑连接一块arduino主控板,使用SR04或URM10超声波,Trig接D7,Echo接D8
9 | import time
10 | from pinpong.board import Board,Pin,SR04_URM10 #中导入SR04_URM10
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | TRIGER_PIN = Pin(Pin.D7)
18 | ECHO_PIN = Pin(Pin.D8)
19 |
20 | sonar = SR04_URM10(TRIGER_PIN,ECHO_PIN)
21 |
22 | while True:
23 | dis = sonar.distance_cm() #获取距离,单位厘米(cm)
24 | print("distance = %d cm"%dis)
25 | time.sleep(0.1)
26 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-irq.rst.txt:
--------------------------------------------------------------------------------
1 | 1-05-irq:引脚中断
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:引脚模拟中断功能测试
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个按钮模块
9 |
10 | import time
11 | from pinpong.board import Board,Pin
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | btn = Pin(Pin.D8, Pin.IN)
19 |
20 | def btn_rising_handler(pin):#中断事件回调函数
21 | print("\n--rising---")
22 | print("pin = ", pin)
23 |
24 | def btn_falling_handler(pin):#中断事件回调函数
25 | print("\n--falling---")
26 | print("pin = ", pin)
27 |
28 | def btn_both_handler(pin):#中断事件回调函数
29 | print("\n--both---")
30 | print("pin = ", pin)
31 |
32 | btn.irq(trigger=Pin.IRQ_FALLING, handler=btn_falling_handler) #设置中断模式为下降沿触发
33 | #btn.irq(trigger=Pin.IRQ_RISING, handler=btn_rising_handler) #设置中断模式为上升沿触发,及回调函数
34 | #btn.irq(trigger=Pin.IRQ_RISING+Pin.IRQ_FALLING, handler=btn_both_handler) #设置中断模式为电平变化时触发
35 |
36 | while True:
37 | time.sleep(1) #保持程序持续运行
38 |
39 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-lcd1602.rst.txt:
--------------------------------------------------------------------------------
1 | 2-05-lcd1602:1602显示屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:I2C LCD1602控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,LCD1602显示屏接到I2C口SCL及SDA
9 | import time
10 | from pinpong.board import Board
11 | from pinpong.libs.lcd1602 import LCD1602_I2C #从libs中导入lcd1602_i2c库
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | lcd = LCD1602_I2C(i2c_addr=0x20) #初始化LCD的I2C地址
19 | print("I2C LCD1602 TEST...")
20 |
21 | lcd.backlight(True) #打开背光
22 | lcd.clear() #清屏
23 |
24 | lcd.set_cursor(0,0) #设置光标位置
25 | lcd.print("Hello World") #显示 "Hello World",1602屏像素点少,不能显示汉字
26 | lcd.set_cursor(1,1) #设置光标位置
27 | lcd.print(1234) #显示数字1234
28 |
29 | while True:
30 | time.sleep(1)
31 | lcd.scroll_left() #滚动显示
32 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-mlx90614.rst.txt:
--------------------------------------------------------------------------------
1 | 3-04-mlx90614:红外测温
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C MLX90614远红外测温传感器
8 | #接线:使用windows或linux电脑连接一块arduino主控板,红外测温传感器接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_mlx90614 import MLX90614 #从libs导入mlx90614库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | irt=MLX90614()
20 |
21 | while True:
22 | print("Object %s *C"% irt.obj_temp_c()) #读取物体温度 摄氏度(℃)
23 | print("Object %s *F"% irt.obj_temp_f()) #读取物体温度 华氏度(℉)
24 | print("Ambient %s *C"% irt.env_temp_c()) #读取环境温度 摄氏度(℃)
25 | print("Ambient %s *F"% irt.env_temp_f()) #读取环境温度 华氏度(℉)
26 | print() #空行
27 | time.sleep(1)
28 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-neopixel.rst.txt:
--------------------------------------------------------------------------------
1 | 2-07-neopixel:WS2812灯带
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制WS2812单线RGB LED灯
8 | #接线:使用windows或linux电脑连接一块arduino主控板,ws2812灯接到D9口
9 |
10 | import time
11 | from pinpong.board import Board,Pin,NeoPixel #导入neopixel类
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | NEOPIXEL_PIN = Pin(Pin.D9)
19 | PIXELS_NUM = 4 #灯数
20 |
21 | np = NeoPixel(NEOPIXEL_PIN,PIXELS_NUM)
22 |
23 | while True:
24 | np[0] = (0, 255 ,0) #设置第一个灯RGB亮度
25 | np[1] = (255, 0, 0) #设置第二个灯RGB亮度
26 | np[2] = (0, 0, 255) #设置第三个灯RGB亮度
27 | np[3] = (255, 0, 255) #设置第四个灯RGB亮度
28 | print("color 1")
29 | time.sleep(1)
30 | np[1] = (0, 255, 0)
31 | np[2] = (255, 0, 0)
32 | np[3] = (255, 255, 0)
33 | np[0] = (0, 0, 255)
34 | print("color 2")
35 | time.sleep(1)
36 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-oled12864.rst.txt:
--------------------------------------------------------------------------------
1 | 2-06-oled12864:oled显示屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:I2C OLED2864屏控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,OLED2864显示屏接到I2C口SCL及SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_ssd1306 import SSD1306_I2C #导入ssd1306库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | oled=SSD1306_I2C(width=128, height=64) #初始化屏幕,传入屏幕像素点数
20 |
21 |
22 | while True:
23 | oled.fill(1) #全部填充显示
24 | oled.show() #显示生效
25 | print("1")
26 | time.sleep(1)
27 |
28 | oled.fill(0) #全部填充熄灭,清屏
29 | oled.show() #显示生效
30 | print("0")
31 | time.sleep(1)
32 |
33 | oled.text("0") #显示数字
34 | oled.text("Hello PinPong",8,8) #指定位置显示文字
35 | oled.show() #显示生效
36 | time.sleep(2)
37 |
38 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-pwm.rst.txt:
--------------------------------------------------------------------------------
1 | 1-04-PWM:模拟输出
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果: PWM输出实验,控制LED灯亮度变化
8 | #接线:使用windows或linux电脑连接一块arduino主板,LED灯接到D6引脚上
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | #pwm0 = PWM(Pin(board,Pin.D6)) #将引脚传入PWM初始化 模拟输出方法1
18 | pwm0 = Pin(Pin.D6, Pin.PWM) #初始化引脚为PWM模式 模拟输出方法2
19 |
20 | while True:
21 | for i in range(255):
22 | print(i)
23 | #pwm0.duty(i) #PWM输出 方法1
24 | pwm0.write_analog(i) #PWM输出 方法2
25 | time.sleep(0.05)
26 |
27 |
28 |
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-rgb1602.rst.txt:
--------------------------------------------------------------------------------
1 | 3-03-rgb1602:彩色1602屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制I2C RGB彩色LCD1602液晶屏幕
8 | #接线:使用windows或linux电脑连接一块arduino主控板,LCD1602接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.rgb1602 import RGB1602 #从libs导入rgb1602库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | lcd = RGB1602()
20 |
21 | print("I2C RGB1602 TEST...")
22 |
23 | lcd.set_rgb(0,50,0); #设置RGB值
24 | lcd.set_cursor(0,0) #设置光标到原点
25 | lcd.print("PinPong") #显示 "PinPong"
26 |
27 | lcd.set_cursor(1,1) #设置光标位置
28 | lcd.print(1234) #显示数字
29 |
30 | while True:
31 | time.sleep(1)
32 | lcd.scroll_left() #滚动显示
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-servo.rst.txt:
--------------------------------------------------------------------------------
1 | 2-02-servo:舵机
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:舵机控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,D4连接一个舵机
9 | import time
10 | from pinpong.board import Board,Pin,Servo #导入Servo库
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | s1 = Servo(Pin(Pin.D4)) #将Pin传入Servo中初始化舵机引脚
18 |
19 | while True:
20 | #s1.angle(0) #控制舵机转到0度位置 方法1
21 | s1.write_angle(0) #控制舵机转到0度位置 方法2
22 | print("0")
23 | time.sleep(1)
24 |
25 | #s1.angle(90) #控制舵机转到90度位置
26 | s1.write_angle(90) #控制舵机转到90度位置 方法2
27 | print("90")
28 | time.sleep(1)
29 |
30 | #s1.angle(180) #控制舵机转到180度位置
31 | s1.write_angle(180) #控制舵机转到180度位置 方法2
32 | print("180")
33 | time.sleep(1)
34 |
35 | #s1.angle(90) #控制舵机转到90度位置
36 | s1.write_angle(90) #控制舵机转到90度位置 方法2
37 | print("90")
38 | time.sleep(1)
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-tcs34725.rst.txt:
--------------------------------------------------------------------------------
1 | 3-01-tcs34725:颜色识别
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C TCS34725颜色传感器数值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,TCS34725颜色传感器接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_tcs34725 import TCS34725 #从libs导入tcs34725库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | tcs = TCS34725() #传感器初始化
20 |
21 | print("Color View Test!");
22 | while True:
23 | if tcs.begin(): #查找传感器,读取到则返回True
24 | print("Found sensor")
25 | break #找到 跳出循环
26 | else:
27 | print("No TCS34725 found ... check your connections")
28 | time.sleep(1)
29 |
30 | while True:
31 | r,g,b,c = tcs.get_rgbc() #获取rgbc数据
32 | print(r,g,b,c)
33 | print("C=%d\tR=%d\tG=%d\tB=%d\t"%(c,r,g,b))
34 |
35 | '''
36 | #数据转换
37 | r /= c
38 | g /= c
39 | b /= c
40 | r *= 256
41 | g *= 256
42 | b *= 256;
43 | print("------C=%d\tR=%d\tG=%d\tB=%d\t"%(c,r,g,b))
44 | '''
45 | time.sleep(1)
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-tone.rst.txt:
--------------------------------------------------------------------------------
1 | 2-01-tone:蜂鸣器
2 | ===========================================
3 |
4 |
5 | .. code-block:: python
6 |
7 | # -*- coding: UTF-8 -*-
8 | #实验效果:控制蜂鸣器发声
9 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个蜂鸣器模块
10 | import time
11 | from pinpong.board import Board,Pin,Tone #导入Tone类实现控制蜂鸣器
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | tone = Tone(Pin(Pin.D8)) #将Pin传入Tone中实现模拟输出
19 | tone.freq(200) #按照设置的频率播放
20 |
21 | '''
22 | while True:
23 | tone.tone(200,500) #按照设置的频率和时间播放直到完成
24 | time.sleep(1)
25 | '''
26 |
27 | while True:
28 | print("freq=",tone.freq()) #读取频率并打印
29 | tone.on() #打开蜂鸣器
30 | time.sleep(1)
31 | tone.off() #关闭蜂鸣器
32 | time.sleep(1)
33 | tone.freq(tone.freq()+100) #按照设置的频率播放
--------------------------------------------------------------------------------
/build/html/_sources/2.pinpong示例/示例程序-urm09.rst.txt:
--------------------------------------------------------------------------------
1 | 3-02-urm09:I2C超声波
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C 超声波传感器(URM09)数值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,URM09传感器接到I2C口SCL SDA
9 | import time
10 | from pinpong.board import Board
11 | from pinpong.libs.dfrobot_urm09 import URM09 #从libs中导入URM09库
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | urm = URM09(i2c_addr=0x11) #初始化传感器,设置I2C地址
19 | urm.set_mode_range(urm._MEASURE_MODE_AUTOMATIC ,urm._MEASURE_RANG_500) #设置URM09模式为自动检测,最大测量距离500cm
20 |
21 | while True:
22 | dist = urm.distance_cm() #读取距离数据,单位厘米(cm)
23 | temp = urm.temp_c() #读取传感器温度,单位摄氏度(℃)
24 |
25 | print("Distance is %d cm "%dist)
26 | print("Temperature is %.2f .c "%temp)
27 | time.sleep(0.5)
28 |
--------------------------------------------------------------------------------
/build/html/_sources/3.pinpong类库/API列表-ADC类.rst.txt:
--------------------------------------------------------------------------------
1 | ADC类 ADC class
2 | ========================
3 |
4 | ---------------------
5 | 构造器 constructor
6 | ---------------------
7 |
8 | 创建和初始化一个ADC,获取模拟量数据。
9 |
10 | adc = ADC(board,Pin(board, Pin.A0))
11 |
12 | - board: 通过pinpong类创建的板子对象,只有一块板子时可以省略此参数。
13 |
14 | - Pin: 通过pin类创建的引脚对象。
15 |
16 | ----------------
17 | 方法 method
18 | ----------------
19 |
20 | ::
21 |
22 | adc.read()
23 | 读取adc的模拟量。比如,brightness = adc.read()
24 |
25 |
26 |
--------------------------------------------------------------------------------
/build/html/_sources/3.pinpong类库/API列表-Board类.rst.txt:
--------------------------------------------------------------------------------
1 | PinPong类 Board class
2 | ========================
3 |
4 | --------------------
5 | 构造器 constructor
6 | --------------------
7 |
8 | 创建和初始化一块板子。
9 |
10 | board = PinPong(board_name,port)
11 |
12 | - boardname: 板子的类型。
13 |
14 | - port: 设置对应的端口号,如省略参数则自动识别选择一个端口。如何查询端口号,见安装及快速开始教程。对于基于linux的开发板, 例如树莓派,哪吒板,不需要这个参数
15 |
16 | - 说明:board_name命名列表
17 |
18 | - 规则:
19 |
20 | #. 简单短小好记忆
21 | #. 不区分大小写,样例中推荐全小写
22 | #. 长单词或需要区分版本的单词间使用下划线区分
23 |
24 |
25 | +---------------------+---------------------+---------------------+
26 | | 板子名称 | board_name | 备注 |
27 | +=====================+=====================+=====================+
28 | | Arduino uno r3 | uno | |
29 | +---------------------+---------------------+---------------------+
30 | | Arduino leonardo | leonardo | |
31 | +---------------------+---------------------+---------------------+
32 | | Arduino nano | nano | 暂未支持 |
33 | +---------------------+---------------------+---------------------+
34 | | Arduino mega1280 | mega1280 | 暂未支持 |
35 | +---------------------+---------------------+---------------------+
36 | | Arduino mega2560 | mega2560 | 暂未支持 |
37 | +---------------------+---------------------+---------------------+
38 | | micro:bit | microbit | |
39 | +---------------------+---------------------+---------------------+
40 | | 掌控板 | handpy | |
41 | +---------------------+---------------------+---------------------+
42 | | 虚谷号 | xugu | 等效于uno |
43 | +---------------------+---------------------+---------------------+
44 | | 树莓派 | rpi | |
45 | +---------------------+---------------------+---------------------+
46 | | Firebeetle ESP32 | firebeetle_esp32 | 暂未支持 |
47 | +---------------------+---------------------+---------------------+
48 | | Firebeetle ESP8266 | firebeetle_esp8266 | 暂未支持 |
49 | +---------------------+---------------------+---------------------+
50 | | LattePanda | lp | 等效于leonardo |
51 | +---------------------+---------------------+---------------------+
52 | | ESP32 | esp32 | 暂未支持 |
53 | +---------------------+---------------------+---------------------+
54 | | ESP8266 | esp8266 | 暂未支持 |
55 | +---------------------+---------------------+---------------------+
56 | | 哪吒开发板 | nezha | |
57 | +---------------------+---------------------+---------------------+
58 | | 行空板 | unihiker | |
59 | +---------------------+---------------------+---------------------+
60 |
61 | ----------------
62 | 方法 method
63 | ----------------
64 | ::
65 |
66 | board.begin()
67 |
68 | 连接arduino板,检测固件版本,若没有烧录固件或版本有误,会烧录最新固件。
69 |
70 | 传入参数True表示强制烧录固件。
71 |
72 |
73 |
--------------------------------------------------------------------------------
/build/html/_sources/3.pinpong类库/API列表-PWM类.rst.txt:
--------------------------------------------------------------------------------
1 | PWM类 PWM class
2 | =======================
3 |
4 | --------------------
5 | 构造器 constructor
6 | --------------------
7 |
8 | 创建和初始化一个PWM, 来输出PWM信号。
9 |
10 | pwm0 = PWM(board, Pin(board, Pin.D6))
11 |
12 | - board: 通过pinpong类创建的板子对象,只有一块板子时可以省略此参数。
13 |
14 | - Pin: 通过pin类创建的引脚对象。
15 |
16 | ----------------
17 | 方法 method
18 | ----------------
19 |
20 | ::
21 |
22 | pwm0.freq()
23 | freq(),没有提供args时,返回频率。
24 | f = pwm0.freq()//获取PWM频率。
25 | pwm0.freq(x)
26 | freq(x),提供args时,设置PWM频率为x。
27 | pwm0.freq(1000)//设置PWM频率为1000。
28 |
29 | ::
30 |
31 | pwm0.duty()
32 | duty(),没有提供args时,返回占空比。
33 | f = pwm0.duty()//获取PWM占空比。
34 | pwm0.duty(x)
35 | duty(x),提供args时,设置PWM占空比,范围0-255。
36 | pwm0.duty(127)//设置PWM占空比为50%。
37 |
38 | ::
39 |
40 | pwm0.deinit()
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/build/html/_sources/3.pinpong类库/API列表-Pin类.rst.txt:
--------------------------------------------------------------------------------
1 | Pin类 Pin class
2 | ========================
3 |
4 | ----------------
5 | 常量 constants
6 | ----------------
7 |
8 | --------------------
9 | 构造器 constructor
10 | --------------------
11 |
12 | 创建和初始化一个引脚。
13 |
14 | pin = Pin(board, vpin, mode)
15 |
16 | - board: 通过pinpong类创建的板子的对象,只有一块板子时可以省略此参数。
17 |
18 | - vpin: 板子上所用到的引脚号。(数字引脚1-Pin.D1, 模拟引脚1-Pin.A1)
19 |
20 | - mode: 定义引脚的输入、输出。Pin.IN, Pin.OUT (定义模拟量引脚时省略,默认输入)
21 |
22 | 定义一个数字输入,比如按键,
23 |
24 | button_pin = Pin(Pin.D8, Pin.IN)
25 |
26 | 定义一个模拟量传感器引脚,
27 |
28 | Analog_pin = Pin(Pin.A0)
29 |
30 | ----------------
31 | 方法 method
32 | ----------------
33 |
34 | ::
35 |
36 | pin.value()
37 |
38 | 调用value(),没有提供args时,为数字读取,返回0或1。
39 |
40 | v = button_pin.value()//获取引脚button_pin的引脚状态
41 |
42 | pin.value(x)
43 |
44 | 调用value(),提供args时,为数字写入。
45 |
46 | pin.value(1) //引脚pin输出高电平
47 |
48 | ::
49 |
50 | pin.on()
51 | 引脚pin设置为高电平, 同pin.value(1)
52 |
53 | ::
54 |
55 | pin.off()
56 | 引脚pin设置为低电平, 同pin.value(0)
57 |
58 | ::
59 |
60 | pin.irq(trigger,handler)
61 | 设置中断,
62 | - trigger: 中断模式,rising - 上升沿, falling - 下降沿, low - 低电平, high - 高电平...
63 | - handler:
64 |
65 |
--------------------------------------------------------------------------------
/build/html/_sources/4.pinpong更新记录/index.rst.txt:
--------------------------------------------------------------------------------
1 | ==========
2 | 开发计划
3 | ==========
4 |
5 | - 这里将记录一些正在开发或计划开发的内容,如果你有什么建议可至本文档的github留言
6 |
7 | #. 报错提示规范。
8 | #. 多国语言提示。
9 | #. 示例程序整理。
10 | #. 更多小模块的支持。
11 |
12 |
13 | ==========
14 | 更新记录
15 | ==========
16 |
17 |
18 | V0.6.0公测版
19 | ==============================
20 |
21 | .. 注意:: 重要版本变化。
22 |
23 | #. 行空板主板控制方式由firmata方案改为Linux设备方案
24 | #. 优化begin连接及I2C通讯稳定性
25 | #. 其他优化
26 |
27 | V0.4.2~V0.5.2公测版
28 | ==============================
29 | #. 增加行空板主板的支持
30 | #. 增加小模块的支持
31 | #. 其他优化
32 |
33 | V0.4.2公测版 20210820
34 | ==============================
35 |
36 | #. 重构handpy板载传感器的调用接口为micropython语法
37 | #. 增加handpy、micro:bit对外接传感器模块的支持
38 | #. 增加哪吒板的支持
39 | #. 解决发现的bug
40 |
41 |
42 | V0.3.5公测版 20210407
43 | ==============================
44 |
45 | #. 支持传感器12位DA转换模块
46 | #. 支持传感器bmi160 6轴传感器
47 | #. 支持RGB LED点阵表情包
48 | #. 支持实时时钟SD2405
49 | #. 支持TM1650四位数码管
50 | #. 支持SHT31数字温度传感器
51 | #. 支持臭氧传感器
52 | #. 电容式指纹识别传感器
53 | #. 解决发现的bug
54 |
55 | V0.3.4公测版 20201231
56 | ==============================
57 |
58 | #. 解决uno、leonardo pwm问题
59 | #. 新增microbit板载资源支持
60 | #. 新增handpy板载资源支持
61 | #. 新增bme680支持(环境传感器)
62 | #. 新增max17043支持(3.7V锂电池电量计)
63 |
64 | V0.3.3公测版 20201116
65 | ==============================
66 |
67 | #. 支持DS18B20(温度传感器)传感器
68 | #. 支持音频分析模块
69 | #. 支持HX711(重量传感器)传感器
70 | #. 支持TDS(测量水的TDS)传感器
71 | #. 支持心率传感器
72 | #. 支持BME280(环境传感器)传感器
73 | #. 支持VL53L0(激光测距)传感器
74 | #. 支持LIS2DH(三轴加速计)传感器
75 | #. 支持BMP388(气压传感器)传感器
76 | #. 支持INA219(数字功率计)传感器
77 | #. 支持CCS811(空气质量)传感器
78 | #. 支持ADS1115(16位AD转换模块)传感器
79 | #. 支持huskylens(哈士奇)
80 |
81 | V0.3.2公测版 20200929
82 | ==============================
83 |
84 | #. 增加树莓派、掌控板(handpy)以及micro:bit板的支持(当前仅支持数字模拟读写及舵机控制功能)。
85 | #. 新增扩展库:BNO05510DOF绝对定向传感器、BMP280气压传感器、NFC模块、PAJ7620U2手势识别模块、DS1307实时时钟模块、RPI TLC_10bit_adc树莓派10位adc模块、PRI pca_9685树莓派16路pwm模块。
86 |
87 |
88 | V0.3.0公测版 20200727
89 | ==============================
90 |
91 | .. 注意:: 重要版本:API重做最终版本,后续API将不再进行修改,可用于教程编写。
92 |
93 | #. PinPong类名替换为Board类名便于理解
94 | #. 初始化方式修改,使用Board及begin()函数
95 | #. 增加默认板,无需给所有函数输入board参数
96 | #. 将常用库放入Board中,导入更方便
97 |
98 |
99 |
100 | V0.2.2公测版 20200715
101 | ==============================
102 |
103 | #. Pin类增加基础函数:
104 | #. read_digital()
105 | #. write_digital(v)
106 | #. read_analog()
107 | #. write_analog(v)
108 | #. 详细用法见“PinPong示例”。
109 |
110 |
111 | V0.2.0公测版 20200625
112 | ==============================
113 |
114 | #. 语法及库名称规范完成
115 | #. 增加常见扩展硬件库的支持
116 | #. 增加自动识别串口功能
117 |
118 |
119 | V0.1.x内测版
120 | ===============
121 |
122 | ::
123 | 功能开发及内测版本,仅供测试,代码与V0.2.0可能存在不兼容.
124 |
125 |
--------------------------------------------------------------------------------
/build/html/_sources/5.FAQ常见问题/index.rst.txt:
--------------------------------------------------------------------------------
1 | ========
2 | 常见问题
3 | ========
4 |
5 | 使用行空板出现错误怎么办?
6 | -----------------------------------------------------------------
7 | 可以直接查看行空板官方文档的常见问题目录:https://www.unihiker.com.cn/wiki/FAQ
8 |
9 |
10 | 虚谷号上出现错误:ImportError: cannot import name 'Pin'
11 | -----------------------------------------------------------------
12 |
13 | #. 尝试先重启虚谷号
14 | #. 重启后如果依然出现,则先尝试更新pinpong库,终端运行: pip install -U pinpong
15 | #. 如依然出现,则尝试卸载重装pinpong库,终端运行: pip uninstall pinpong ,然后重启虚谷号后重新安装: pip install pinpong
16 |
17 |
18 | 使用pinpong库控制的硬件可以脱离电脑运行吗?
19 | -----------------------------------------------------------------
20 |
21 | #. pinpong是一个Python库,主要实现硬件与Python的交互,因此只有能运行Python(注意: Python和microPython_ 不一样 )的设备才可以使用,因此如果要脱离PC,可以使用树莓派、行空板等可以运行操作系统的板子。
22 | #. 使用实时通信的方式与Python交互运行,后续将考虑开发通过网络的方式进行通信以实现在电脑上运行pinpong(Python),通过网络实时控制带网络功能的硬件设备。
23 |
24 | .. _Python和microPython: https://www.baidu.com/s?ie=UTF-8&wd=micropython%E5%92%8Cpython
25 |
26 |
27 | 运行程序时出现SerialExcedption: could not open port 'COM': PermissionError(13,'拒绝访问。',None,5 怎么办?
28 | --------------------------------------------------------------------------------------------------------------------------
29 |
30 | #. 此错误说明有设备占用了串口,或上一次程序没有正常关闭,或当前识别的串口错误。
31 | #. 如果是以前可以正常使用而本地运行无法使用则一般为串口被占用了,则可以尝试关闭上一次的程序及其他占用串口的软件,或重新插拔USB口及重启电脑。
32 | #. 如果是第一次使用这个主控板,则可能为串口没有安装驱动,需要安装一次驱动(推荐使用Mind+内置的一键安装驱动功能),或打开设备管理器查看是否有端口(COM)。
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/build/html/_sources/index.rst.txt:
--------------------------------------------------------------------------------
1 |
2 | .. pinpong documentation master file, created by
3 | sphinx-quickstart on Fri May 22 22:20:20 2020.
4 | You can adapt this file completely to your liking, but it should at least
5 | contain the root `toctree` directive.
6 |
7 | 欢迎访问 PinPong Python库教程文档!
8 | ===================================
9 |
10 |
11 | PinPong库是一套控制开源硬件主控板的Python库,支持上百种开源硬件电子模块,5分钟即可让你上手使用Python控制开源硬件。
12 |
13 | 借助于PinPong库,直接用Python代码就能给各种常见的开源硬件,例如Arduino、树莓派、行空板。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,电脑端有一套统一的Python接口库。
14 |
15 | PinPong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。
16 |
17 | pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了行空板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
18 |
19 | .. 注意:: 当前PinPong库正在快速更新中,已支持Arduino系列uno、leonardo、mega2560,ESP32系列掌控板(handpy),micro:bit(microbit),行空板(unihiker),传感器支持50+,其他主控板及更多扩展库将逐步支持。
20 |
21 |
22 | 本文档推荐阅读流程:
23 |
24 | #. 查看安装教程进行准备
25 | #. 查看示例快速上手测试
26 | #. 查看教程进行系统学习
27 |
28 |
29 | 点击观看pinpong入门视频互动教程:https://www.bilibili.com/video/BV17K4y1T7MF
30 |
31 |
32 |
33 | .. image:: bilibili.jpg
34 |
35 |
36 |
37 | .. toctree::
38 | :maxdepth: 2
39 | :caption: pinpong介绍
40 |
41 |
42 | 0.pinpong介绍/简介.rst
43 | 1.pinpong教程/安装教程/index.rst
44 |
45 |
46 |
47 | .. toctree::
48 | :maxdepth: 2
49 | :caption: pinpong示例
50 |
51 | 2.pinpong示例/index1.rst
52 | 2.pinpong示例/index2.rst
53 | 2.pinpong示例/index3.rst
54 | 2.pinpong示例/indexunihiker.rst
55 | 2.pinpong示例/indexhandpy.rst
56 | 2.pinpong示例/更多示例.rst
57 |
58 |
59 |
60 | .. toctree::
61 | :maxdepth: 2
62 | :caption: pinpong教程
63 |
64 | 1.pinpong教程/进阶教程/index.rst
65 | 1.pinpong教程/经典案例/index.rst
66 |
67 |
68 |
69 | .. toctree::
70 | :maxdepth: 2
71 | :caption: pinpong类库
72 |
73 |
74 | 3.pinpong类库/API列表-Board类.rst
75 | 3.pinpong类库/API列表-Pin类.rst
76 | 3.pinpong类库/API列表-ADC类.rst
77 | 3.pinpong类库/API列表-PWM类.rst
78 |
79 |
80 | .. toctree::
81 | :maxdepth: 2
82 | :caption: pinpong更新记录
83 |
84 |
85 |
86 | 4.pinpong更新记录/index.rst
87 |
88 |
89 | .. toctree::
90 | :maxdepth: 2
91 | :caption: FAQ常见问题
92 |
93 |
94 | 5.FAQ常见问题/index.rst
95 |
96 |
97 |
98 | ------------------
99 |
100 | 索引
101 | ==================
102 |
103 | * :ref:`genindex`
104 | * :ref:`modindex`
105 | * :ref:`search`
106 |
--------------------------------------------------------------------------------
/build/html/_static/css/badge_only.css:
--------------------------------------------------------------------------------
1 | .clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions .rst-other-versions .rtd-current-item{font-weight:700}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}#flyout-search-form{padding:6px}
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/Roboto-Slab-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/Roboto-Slab-Bold.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/Roboto-Slab-Bold.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/Roboto-Slab-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/Roboto-Slab-Regular.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/Roboto-Slab-Regular.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-bold-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-bold-italic.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-bold-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-bold-italic.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-bold.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-bold.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-normal-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-normal-italic.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-normal-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-normal-italic.woff2
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-normal.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-normal.woff
--------------------------------------------------------------------------------
/build/html/_static/css/fonts/lato-normal.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/css/fonts/lato-normal.woff2
--------------------------------------------------------------------------------
/build/html/_static/documentation_options.js:
--------------------------------------------------------------------------------
1 | const DOCUMENTATION_OPTIONS = {
2 | VERSION: '0.1',
3 | LANGUAGE: 'zh-cn',
4 | COLLAPSE_INDEX: false,
5 | BUILDER: 'html',
6 | FILE_SUFFIX: '.html',
7 | LINK_SUFFIX: '.html',
8 | HAS_SOURCE: true,
9 | SOURCELINK_SUFFIX: '.txt',
10 | NAVIGATION_WITH_KEYS: false,
11 | SHOW_SEARCH_SUMMARY: true,
12 | ENABLE_SEARCH_SHORTCUTS: true,
13 | };
--------------------------------------------------------------------------------
/build/html/_static/file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/file.png
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bold.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bold.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bold.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bold.woff2
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bolditalic.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bolditalic.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bolditalic.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-bolditalic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-bolditalic.woff2
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-italic.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-italic.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-italic.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-italic.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-italic.woff2
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-regular.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-regular.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-regular.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/Lato/lato-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/Lato/lato-regular.woff2
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff
--------------------------------------------------------------------------------
/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2
--------------------------------------------------------------------------------
/build/html/_static/js/badge_only.js:
--------------------------------------------------------------------------------
1 | !function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=4)}({4:function(e,t,r){}});
--------------------------------------------------------------------------------
/build/html/_static/minus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/minus.png
--------------------------------------------------------------------------------
/build/html/_static/plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/_static/plus.png
--------------------------------------------------------------------------------
/build/html/objects.inv:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/build/html/objects.inv
--------------------------------------------------------------------------------
/make.bat:
--------------------------------------------------------------------------------
1 | @ECHO OFF
2 |
3 | pushd %~dp0
4 |
5 | REM Command file for Sphinx documentation
6 |
7 | if "%SPHINXBUILD%" == "" (
8 | set SPHINXBUILD=sphinx-build
9 | )
10 | set SOURCEDIR=source
11 | set BUILDDIR=build
12 |
13 | if "%1" == "" goto help
14 |
15 | %SPHINXBUILD% >NUL 2>NUL
16 | if errorlevel 9009 (
17 | echo.
18 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
19 | echo.installed, then set the SPHINXBUILD environment variable to point
20 | echo.to the full path of the 'sphinx-build' executable. Alternatively you
21 | echo.may add the Sphinx directory to PATH.
22 | echo.
23 | echo.If you don't have Sphinx installed, grab it from
24 | echo.http://sphinx-doc.org/
25 | exit /b 1
26 | )
27 |
28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29 | goto end
30 |
31 | :help
32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33 |
34 | :end
35 | popd
36 |
--------------------------------------------------------------------------------
/readme.md:
--------------------------------------------------------------------------------
1 | # 简介
2 |
3 | PinPong库是一套控制开源硬件主控板的Python库,支持上百种开源硬件电子模块,5分钟即可让你上手使用Python控制开源硬件。
4 |
5 | 借助于PinPong库,直接用Python代码就能给各种常见的开源硬件,例如Arduino、树莓派、行空板。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,电脑端有一套统一的Python接口库。
6 |
7 | PinPong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。
8 |
9 | pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了行空板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
10 |
11 | # 文档地址
12 |
13 | https://pinpong.readthedocs.io
14 |
15 |
16 |
17 | # 安装方法
18 | ```bash
19 | pip install pinpong
20 | ```
21 |
22 | # 升级方法
23 | ```bash
24 | pip install -U pinpong
25 |
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | sphinx_rtd_theme
--------------------------------------------------------------------------------
/source/0.pinpong介绍/简介.rst:
--------------------------------------------------------------------------------
1 | ========
2 | 简介
3 | ========
4 |
5 | PinPong库是一套控制开源硬件主控板的Python库,支持上百种开源硬件电子模块,5分钟即可让你上手使用Python控制开源硬件。
6 |
7 | 借助于PinPong库,直接用Python代码就能给各种常见的开源硬件,例如Arduino、树莓派、行空板。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,电脑端有一套统一的Python接口库。
8 |
9 | PinPong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。
10 |
11 | pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了行空板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
12 |
13 | .. 注意:: 当前PinPong库正在快速更新中,已支持Arduino系列uno、leonardo、mega2560,ESP32系列掌控板(handpy),micro:bit(microbit),Linux系列行空板(unihiker),树莓派传感器支持50+,其他主控板及更多扩展库将逐步支持。
14 |
15 |
16 | 本文档推荐阅读流程:
17 |
18 | #. 查看安装教程进行准备
19 | #. 查看示例快速上手测试
20 | #. 查看教程进行系统学习
--------------------------------------------------------------------------------
/source/1.pinpong教程/入门教程/blink.rst:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ===============
3 | 教程编写中,如果你想参与,请联系我们。
--------------------------------------------------------------------------------
/source/1.pinpong教程/入门教程/index.rst:
--------------------------------------------------------------------------------
1 | 入门教程
2 | ========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/1.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/4.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/addpath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/addpath.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/idle1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/idle1.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/idle2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/idle2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_install1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_install1.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_install2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_install2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_install3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_install3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_install4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_install4.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_install5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_install5.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_quickstart1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_quickstart1.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_quickstart2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_quickstart2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_quickstart3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_quickstart3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/linux_quickstart4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/linux_quickstart4.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/pinpong-cmd-win.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/pinpong-cmd-win.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_install1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_install1.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_install2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_install2.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_install3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_install3.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_install4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_install4.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_install5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_install5.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_installpython1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_installpython1.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_installpython2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_installpython2.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_installpython3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_installpython3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_quickstart1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_quickstart1.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_quickstart2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_quickstart2.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_quickstart3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_quickstart3.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/images/win_quickstart4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/安装教程/images/win_quickstart4.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/index.rst:
--------------------------------------------------------------------------------
1 | 安装教程
2 | ==========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | 安装-win.rst
8 | 安装-linux.rst
9 | 安装-mac.rst
10 | 安装-更新.rst
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/安装-linux.rst:
--------------------------------------------------------------------------------
1 | ==================
2 | Linux 平台安装
3 | ==================
4 |
5 | 终端中输入sudo pip install pinpong即可安装。
6 |
7 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install pinpong -i http://mirrors.aliyun.com/pypi/simple/
8 |
9 | .. code-block:: bash
10 |
11 | $ sudo pip install pinpong
12 |
13 |
14 | .. image:: images/linux_install1.png
15 |
16 | 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
17 |
18 | 开始第一个程序
19 | -----------------
20 |
21 | #. 连接arudino uno板至电脑;
22 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到Python编辑器中,运行代码;
23 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
24 |
25 | .. image:: images/linux_quickstart4.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/安装-mac.rst:
--------------------------------------------------------------------------------
1 |
2 | ==================
3 | Mac OS X 平台安装
4 | ==================
5 |
6 |
7 |
8 | 启动用命令行,(打开任意finder窗口,键入Shift+Command+U), 双击“终端”。
9 | 输入命令行,安装pinPong库
10 |
11 | .. code-block:: bash
12 |
13 | $ pip install pinpong
14 |
15 |
16 |
17 | .. image:: images/2.png
18 |
19 | .. image:: images/3.png
20 |
21 | 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
22 |
23 | 开始第一个程序
24 | -----------------
25 |
26 | #. 连接arudino uno板至电脑;
27 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到Python编辑器中,运行代码;
28 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
29 |
30 | .. code-block:: bash
31 |
32 | $ python blink.py
33 |
34 |
35 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/安装-win.rst:
--------------------------------------------------------------------------------
1 |
2 | ==================
3 | Windows平台安装
4 | ==================
5 |
6 | 1. 安装Python3。pinpong库依赖Python,因此请确保电脑安装了Python3,如果已经安装,此步可以略过。
7 |
8 | - 如果没有安装Python3,则需要进行安装, Python下载地址: `点击打开 `_
9 |
10 | .. image:: images/win_installpython1.jpg
11 |
12 | - Windows平台对应点击Windows,然后选择最新版本下载(也可选择其他版本)
13 |
14 | .. image:: images/win_installpython2.jpg
15 |
16 | .. image:: images/win_installpython3.png
17 |
18 | - 下载完成后根据引导进行安装,注意安装最后一步勾选add to path,将python加入到环境变量。
19 |
20 | .. image:: images/addpath.png
21 |
22 | 2. 打开命令提示窗。win+R快捷键,输入cmd
23 |
24 | .. image:: images/win_install1.jpg
25 |
26 | 3. 安装pinpong库。小黑窗中输入pip install pinpong ,等待片刻即可安装完成。
27 |
28 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install pinpong -i http://mirrors.aliyun.com/pypi/simple/
29 |
30 | .. image:: images/win_install3.jpg
31 |
32 | 4. 帮助命令。在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
33 |
34 | .. image:: images/pinpong-cmd-win.png
35 |
36 | 开始第一个程序
37 | -----------------
38 |
39 | #. 连接arudino uno板至电脑;
40 | #. 打开IDLE编辑器,新建文件(New File);
41 | #. 从本文档“PINPONG示例”复制“blink”示例程序的代码到IDLE中,点击“运行(RUN) > Run Module”或按键盘上F5键即可运行代码;
42 | #. Python Shell窗口即会显示PinPong的logo和运行状况,Uno板载LED开始闪烁,运行成功,按键盘上的Ctrl+C组合键即可停止代码运行。
43 | #. 接下来请查看其他教程或运行其他示例程序进一步学习吧。
44 |
45 | .. image:: images/idle1.png
46 | .. image:: images/idle2.png
47 |
48 |
49 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/安装教程/安装-更新.rst:
--------------------------------------------------------------------------------
1 | =================
2 | 查看pinpong版本
3 | =================
4 | pinpong安装成功后,在小黑窗中输入pinpong ,即可输出当前版本信息、官方文档网址、库列表查看、端口号。
5 |
6 | .. image:: images/pinpong-cmd-win.png
7 |
8 | ==============
9 | 升级pinpong库
10 | ==============
11 |
12 | pinpong目前处于快速更新迭代中,因此会不定期进行更新,通过如下命令可以进行版本更新:
13 |
14 | .. code-block:: bash
15 |
16 | $ pip install -U pinpong
17 |
18 | .. 注意:: 如果网络较慢安装不成功,可以指定国内源进行安装: pip install -U pinpong -i http://mirrors.aliyun.com/pypi/simple/
19 |
20 |
21 | ==============
22 | 卸载pinpong库
23 | ==============
24 | 如果pinpong库出现异常情况时,可以尝试使用如下命令卸载pinpong库然后再使用install命令安装:
25 |
26 | .. code-block:: bash
27 |
28 | $ pip uninstall pinpong
29 |
30 |
31 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/经典案例/blink.rst:
--------------------------------------------------------------------------------
1 | 虚谷号案例
2 | ===============
3 |
4 |
5 | - 虚谷号入门使用教程:`厚物扩展板 `_
6 |
7 | - 虚谷号案例:`百科相机 `_
--------------------------------------------------------------------------------
/source/1.pinpong教程/经典案例/index.rst:
--------------------------------------------------------------------------------
1 | 经典案例
2 | ===========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/01blink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/01blink.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0211.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0211.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0212.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0212.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0221.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0221.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/02btn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/02btn.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0311.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0311.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0312.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0312.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0313.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0313.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0321.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0321.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0322.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0322.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0411.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0411.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0412.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0412.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0421.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0421.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/04LDL1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/04LDL1.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/04LDL2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/04LDL2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/04Log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/04Log.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0501L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0501L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0502L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0502L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0503L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0503L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0511.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0511.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0512.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0521.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0521.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0522.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0522.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0531.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0531.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/05log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/05log.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0611.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0611.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0612.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0612.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0620.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0620.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0630.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0630.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/06fin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/06fin.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/06servo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/06servo.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0711.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0711.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0712.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0712.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0713.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0713.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0721.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0721.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0730.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0730.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0801L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0801L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0802L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0802L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0811.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0811.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0830.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0830.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/08th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/08th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0901L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0901L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0902L.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0902L.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/0911.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/0911.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/09th.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/09th.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/1011.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/1011.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/1012.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/1012.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/1021.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/1021.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/1030.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/1030.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/1031.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/1031.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/10th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/10th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/2nd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/2nd.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/3rd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/3rd.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/4th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/4th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/5th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/5th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/6th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/6th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/7th.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/7th.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE00.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE00.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE01.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE02.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE03.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE04.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE04.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/IDLE05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/IDLE05.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/LED.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/LED.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/LEDpin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/LEDpin.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/OBLOQ引脚说明图.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/OBLOQ引脚说明图.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/UNOR3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/UNOR3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/addpath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/addpath.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/aftersleep.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/aftersleep.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/aftersleep.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/aftersleep.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/analogpic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/analogpic.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/arduinoL.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/arduinoL.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/blink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/blink.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/blink02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/blink02.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/blink03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/blink03.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/btnshanke.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/btnshanke.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/btnshanke.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/btnshanke.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/buzzer.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/buzzer.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/digitalpic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/digitalpic.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/idle000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/idle000.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/install.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/install.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/lightsen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/lightsen.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/pinpong-cmd-win.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/pinpong-cmd-win.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/pinpong02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/pinpong02.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/run.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/run.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/run2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/run2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/run3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/run3.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/servopic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/servopic.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/shell.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/shell.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/shell2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/shell2.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/soundsen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/soundsen.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/uno引脚.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/uno引脚.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/urm.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/urm.jpg
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/图片6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/图片6.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/找地址01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/找地址01.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/images/找地址02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/images/找地址02.png
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/index.rst:
--------------------------------------------------------------------------------
1 | 系列教程
2 | ===========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | 项目前置知识.rst
8 | LED闪烁.rst
9 | 神奇的按键.rst
10 | 调光台灯.rst
11 | 智能节能灯.rst
12 | 近视警报器.rst
13 | 噪声检测仪.rst
14 | 模拟交通灯.rst
15 | 桌面气象站.rst
16 | 游园人数统计.rst
17 | 定时浇花装置.rst
18 |
19 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/噪声检测仪.rst:
--------------------------------------------------------------------------------
1 | ================
2 | 项目6 噪声检测仪
3 | ================
4 |
5 | 一、概述
6 | ==========
7 |
8 | 在日常生活会有很多噪声的来源,当噪声大到一定程度,就会影响我们的身体健康。那你有想过制作一个噪声检测装置吗?在之前的项目中我们有使用过声音传感器,那如何将检测结果更直观的显示出来?请跟着本文完成项目吧。
9 |
10 | .. image:: images/6th.png
11 |
12 | 二、项目实施
13 | =============
14 |
15 | ----------------
16 | (1)驱动舵机
17 | ----------------
18 |
19 | **硬件准备:**
20 |
21 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
22 |
23 | 模块:舵机
24 |
25 | 连接线:TypeAtoB方口USB连接线
26 |
27 | .. image:: images/06servo.png
28 |
29 | - 将舵机接入4号数字引脚
30 |
31 | **程序编写:**
32 |
33 | 1. 打开pingpong库的官方文档,找到常用库示例中的“舵机”,并用IDLE打开。
34 |
35 | .. image:: images/0611.png
36 |
37 | 2. 摁下F5运行程序,察看效果。
38 |
39 | .. image:: images/0612.png
40 |
41 | **运行效果**
42 |
43 | **舵机会以0度转到90度转到180度,再转回90度转到0度循环。**
44 |
45 | 注意:在程序运行时不可以拔掉与Arduino连接的USB线,且不能关闭新弹出的Python shell运行窗口,如果拔线或者关闭运行窗口,程序功能就会停止执行。
46 |
47 | 3. 如果我们想要修改舵机旋转的角度或让舵机按一定速度慢慢旋转,那我们只需要修改角度即可。示例程序为舵机从0度慢慢旋转至120度。
48 |
49 | .. code-block:: python
50 |
51 | import time
52 | from pinpong.board import Board,Pin,Servo
53 |
54 | Board("uno").begin()
55 |
56 | s1 = Servo(Pin(Pin.D4))
57 |
58 | while True:
59 | for i in range(120):
60 | s1.write_angle(i)
61 | time.sleep(0.1)
62 |
63 | --------------------------
64 | (2)用舵机反馈声音数值
65 | --------------------------
66 |
67 | 大家可能会好奇,舵机是如何实现反馈声音数值的功能。如图所示,我们可以将读取到的数值转换成舵机的角度值,然后用舵柄当作指针来反馈数值。
68 |
69 | .. image:: images/0620.png
70 |
71 | **硬件准备:**
72 |
73 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
74 |
75 | 模块:舵机、声音传感器
76 |
77 | 连接线:TypeAtoB方口USB连接线
78 |
79 | .. image:: images/06fin.png
80 |
81 | - 将舵机接入4号数字引脚,声音传感器接入A0模拟引脚。
82 |
83 | **程序编写**
84 |
85 | 1. 我们在之前的项目中使用过声音传感器,知道如何读取它的数值,但是声音传感器读出的数据是0~1023而我们使用的舵机的旋转角度是0~180度,所以我们需要在程序中对这个数值进行转换。
86 |
87 | .. code-block:: python
88 |
89 | vs = Sound.read_analog()
90 | servoTurn = int(vs*180/1024)
91 |
92 | 在这里加入int,将数值整形,转化为舵机旋转的角度。
93 |
94 | 2. 在了解了如何将声音传感器读取的数值转换为舵机可旋转的角度值之后,修改程序,示例程序如下。
95 |
96 | .. code-block:: python
97 |
98 | import time
99 | from pinpong.board import Board,Pin,Servo
100 |
101 | Board("uno").begin()
102 |
103 | s1 = Servo(Pin(Pin.D4))
104 | Sound = Pin(Pin.A0,Pin.ANALOG)
105 |
106 | while True:
107 | vs = Sound.read_analog()
108 | servoTurn = int(vs*180/1024)
109 | print(servoTurn)
110 | s1.write_angle(servoTurn)
111 | time.sleep(0.5)
112 |
113 | 三、代码分析
114 | =============
115 |
116 | .. code-block:: python
117 |
118 | import time
119 | from pinpong.board import Board,Pin,Servo
120 |
121 | Board("uno").begin()
122 |
123 | s1 = Servo(Pin(Pin.D4)) #初始化舵机在D4引脚
124 | Sound = Pin(Pin.A0,Pin.ANALOG)#初始化声音传感器在A0引脚
125 |
126 | while True:
127 | vs = Sound.read_analog()
128 | servoTurn = int(vs*180/1024)#转换声音数值为舵机角度
129 | print(servoTurn)
130 | s1.write_angle(servoTurn)
131 | time.sleep(0.5)
132 |
133 | **思考**
134 |
135 | 在实际使用时我们会发现舵机的转动角度基本不会超过90度,这里我们可以试着将读取到的声音值打印出来观察一下,看看究竟为什么舵机只会在一个较小的范围内转动。
136 |
137 |
138 | 四、硬件分析
139 | =============
140 |
141 | **什么是舵机?**
142 |
143 | 舵机是一种可以指定控制位置(角度)的电机,可以通过程序来指定控制舵机旋转的角度。我们最常用的舵机大多最大旋转角度是0°~180°,也有90°或者其他角度的。也有比较特殊的360°舵机,但是360°舵机不能够控制其旋转到指定的角度。本项目中我们使用的是180°舵机。
144 |
145 | .. image:: images/servopic.png
146 |
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/调光台灯.rst:
--------------------------------------------------------------------------------
1 | ===============
2 | 项目3 调光台灯
3 | ===============
4 |
5 | 一、概述
6 | ========
7 |
8 | 在前面的课程中我们学会了如何点亮并控制LED灯,那LED灯的亮度我们可以调节吗?如果输出的值不是数字量,而是模拟量,是不是就可以实现通过数值来精确控制灯光亮度了。
9 |
10 | 在上节课的设计中,我们使用的是按钮控制灯的亮灭,按钮只有两个状态,是没办法输出模拟值的,所以本项目我们就需要使用到旋钮来作为灯光亮度的输入。
11 |
12 | .. image:: images/3rd.png
13 |
14 | 二、项目实施
15 | ============
16 |
17 | --------------
18 | (1)渐变灯光
19 | --------------
20 |
21 | **硬件准备:**
22 |
23 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
24 |
25 | 模块:LED发光模块
26 |
27 | 连接线:TypeAtoB方口USB连接线
28 |
29 | .. image:: images/0311.png
30 |
31 | - 将LED发光模块接入6号数字引脚
32 |
33 | **程序编写:**
34 |
35 | 1. 打开pingpong库的官方文档,找到基础库示例中的“模拟输出”,并用IDLE打开。
36 |
37 | .. image:: images/0312.png
38 |
39 | 2. 摁下F5运行程序,查看效果。LED灯会逐渐变亮,当到最亮时熄灭再慢慢变亮,循环变化。
40 |
41 | .. image:: images/0313.png
42 |
43 | --------------
44 | (2)旋钮调光
45 | --------------
46 |
47 | 在上步完成的功能中,我们旋钮来精确的控制LED灯的亮度。
48 |
49 | **硬件准备:**
50 |
51 | 主控:Arduino UNO、IO 传感器扩展板 V7.1
52 |
53 | 模块:LED发光模块、旋钮模块
54 |
55 | 连接线:TypeAtoB方口USB连接线
56 |
57 | .. image:: images/0321.png
58 |
59 | - 将LED发光模块接入6号数字引脚,将旋钮模块接入A0模拟引脚
60 |
61 | **程序编写:**
62 |
63 | .. code-block:: python
64 |
65 | import time
66 | from pinpong.board import Board,Pin
67 |
68 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
69 |
70 | pwm0 = Pin(Pin.D6, Pin.PWM) #初始化引脚为PWM模式 模拟输出方法2
71 | adc0 = Pin(Pin.A0, Pin.ANALOG) #引脚初始化为电平输出
72 |
73 | while True:
74 | v = adc0.read_analog() #读取A0口模拟信号数值
75 | L = int(v*255/1024)
76 | pwm0.write_analog(L) #PWM输出
77 | print("A0=",L)
78 |
79 | 运行代码,旋转旋钮LED灯会慢慢亮起和熄灭。
80 |
81 | .. image:: images/0322.png
82 |
83 | 三、代码分析
84 | ============
85 |
86 | 1. 导入必要的包和初始化设置。
87 |
88 | .. code-block:: python
89 |
90 | import time
91 | from pinpong.board import Board,Pin
92 | Board("uno").begin() #初始化,选择板型和端口号,不输入则留空进行自动识别
93 | pwm0 = Pin(Pin.D6, Pin.PWM)
94 | adc0 = Pin(Pin.A0, Pin.ANALOG) #将Pin传入ADC中实现模拟输入
95 |
96 | 2. 我们需要将旋钮输出的模拟值转换为LED灯亮度的PWM值,为了得到整数这里用了整型功能int。
97 |
98 | .. code-block:: python
99 |
100 | v = adc0.read_analog() #读取A0口模拟信号数值
101 | L = int(v*255/1024)
102 |
103 | 3. 接着让LED灯根据我们转换过的数值亮起。
104 |
105 | .. code-block:: python
106 |
107 | pwm0.write_analog(L) #PWM输出
108 | print("A0=",L)
109 |
110 |
111 | **数据类型-整数类型**
112 |
113 | 在我们做运算的时候,传感器读取到的数值经过*180/1024运算的结果往往不会是一个整数,常常会带着长长的小数尾数。我们试着不加int整形得到的结果如下:
114 |
115 | .. image:: images/0630.png
116 |
117 | 这样的数值我们是无法直接使用的,所以就需要使用到整形int将数据取整。
--------------------------------------------------------------------------------
/source/1.pinpong教程/进阶教程/进阶教程.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/1.pinpong教程/进阶教程/进阶教程.zip
--------------------------------------------------------------------------------
/source/1.pinpong教程/高级教程/blink.rst:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ===============
3 | 教程编写中,如果你想参与,请联系我们。
--------------------------------------------------------------------------------
/source/1.pinpong教程/高级教程/index.rst:
--------------------------------------------------------------------------------
1 | 高级教程
2 | ==========
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | blink.rst
8 |
9 |
10 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "restructuredtext.confPath": "e:\\00-git_Work\\0-liliang9693-github\\pinpong-docs\\source"
3 | }
--------------------------------------------------------------------------------
/source/2.pinpong示例/images/python_path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/2.pinpong示例/images/python_path.png
--------------------------------------------------------------------------------
/source/2.pinpong示例/images/python_path_pinpong.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/2.pinpong示例/images/python_path_pinpong.png
--------------------------------------------------------------------------------
/source/2.pinpong示例/index1.rst:
--------------------------------------------------------------------------------
1 | 基础库示例
2 | ==================
3 |
4 | 示例程序可帮助你快速验证模块的使用,复制粘贴代码到python编辑器中,并修改Board初始化版型为你使用的板子型号即可
5 |
6 | - 常用库示例中的模块通过board库导入
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-blink.rst
12 | 示例程序-button.rst
13 | 示例程序-adc.rst
14 | 示例程序-pwm.rst
15 | 示例程序-irq.rst
16 |
17 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/index2.rst:
--------------------------------------------------------------------------------
1 | 常用库示例
2 | ==================
3 |
4 | - 常用库示例中的模块通过board库导入
5 |
6 |
7 | .. toctree::
8 | :maxdepth: 2
9 |
10 | 示例程序-servo.rst
11 | 示例程序-tone.rst
12 | 示例程序-hcr04.rst
13 | 示例程序-dht.rst
14 | 示例程序-neopixel.rst
15 |
16 |
17 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/index3.rst:
--------------------------------------------------------------------------------
1 | 扩展库示例
2 | ==================
3 |
4 | - 扩展库示例中的模块通过libs库导入,
5 | - 可通过终端输入pinpong查询支持列表和使用方法
6 | - 从安装目录下的examples文件夹中可以找到所有示例程序代码
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-lcd1602.rst
12 | 示例程序-oled12864.rst
13 | 示例程序-tcs34725.rst
14 | 示例程序-urm09.rst
15 | 示例程序-rgb1602.rst
16 | 示例程序-mlx90614.rst
17 |
18 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/indexhandpy.rst:
--------------------------------------------------------------------------------
1 | 掌控板示例
2 | ==================
3 |
4 | - 以下部分为掌控板板载特殊元件控制示例
5 | - 非板载特殊器件(例如IO、外接传感器等)操作方法同其他所有主控板基础及扩展示例
6 | - 掌控板无法运行完整Python3,因此在使用PinPong时不可以脱离电脑使用。
7 |
8 | .. toctree::
9 | :maxdepth: 2
10 |
11 | 示例程序-handpy-display.rst
12 | 示例程序-handpy-sensor.rst
13 | 示例程序-handpy-rgb.rst
14 | 示例程序-handpy-music.rst
15 |
16 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/indexunihiker.rst:
--------------------------------------------------------------------------------
1 | 行空板示例
2 | ==================
3 |
4 | - 行空板是一个运行Linux的开发板,板载GD32协处理器,因此可以使用pinpong库控制板载或外接硬件。
5 |
6 |
7 | 行空板官方文档中提供了大量pinpong库案例,因此基础教程请打开行空板官方教程查看:https://www.unihiker.com.cn/wiki/pinpong_python_lib
8 |
9 | .. image:: https://img.dfrobot.com.cn/wiki/none/61788796a3fd1aa3d6d31b8e618a0e44.png
--------------------------------------------------------------------------------
/source/2.pinpong示例/更多示例.rst:
--------------------------------------------------------------------------------
1 | 更多示例
2 | ==================
3 |
4 | pinpong库安装目录下有更多示例程序,可以通过如下方法找到.
5 |
6 | 1. 进入Python终端,然后依次输入如下代码即可查看Python库所在的目录(site-packages)
7 |
8 | .. code-block:: bash
9 |
10 | import pinpong
11 | print(pinpong.__path__)
12 |
13 | .. image:: images/python_path.png
14 |
15 | 2. 打开对应路径的文件夹,其中examples文件夹下即为所有内置的示例程序
16 |
17 | .. 注意:: 内置examples文件夹下的案例仅供参考使用,不排除后续会变更,最终以本文档网页中列出的示例为准。
18 |
19 | .. image:: images/python_path_pinpong.png
20 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-adc.rst:
--------------------------------------------------------------------------------
1 | 1-03-adc:模拟输入
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:打印UNO板A0口模拟值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板A0接一个旋钮模块
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(unomicrobit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | #adc0 = ADC(Pin(Pin.A0)) #将Pin传入ADC中实现模拟输入 模拟输入方法1
18 | adc0 = Pin(Pin.A0, Pin.ANALOG) #引脚初始化为电平输出 模拟输入方法2
19 |
20 | while True:
21 | #v = adc0.read() #读取A0口模拟信号数值 模拟输入方法1
22 | v = adc0.read_analog() #读取A0口模拟信号数值 模拟输入方法2
23 | print("A0=", v)
24 | time.sleep(0.5)
25 |
26 |
27 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-blink.rst:
--------------------------------------------------------------------------------
1 | 1-01-blink:数字输出
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制arduino UNO板载LED灯一秒闪烁一次
8 | #接线:使用windows或linux电脑连接一块arduino主控板
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 |
18 | led = Pin(Pin.D13, Pin.OUT) #引脚初始化为电平输出
19 |
20 | while True:
21 | #led.value(1) #输出高电平 方法1
22 | led.write_digital(1) #输出高电平 方法2
23 | print("1") #终端打印信息
24 | time.sleep(1) #等待1秒 保持状态
25 |
26 | #led.value(0) #输出低电平 方法1
27 | led.write_digital(0) #输出低电平 方法2
28 | print("0") #终端打印信息
29 | time.sleep(1) #等待1秒 保持状态
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-button.rst:
--------------------------------------------------------------------------------
1 | 1-02-button:数字输入
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:使用按钮控制arduino UNO板载亮灭
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个按钮模块
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | btn = Pin(Pin.D8, Pin.IN) #引脚初始化为电平输入
18 | led = Pin(Pin.D13, Pin.OUT)
19 |
20 | while True:
21 | #v = btn.value() #读取引脚电平方法1
22 | v = btn.read_digital() #读取引脚电平方法2
23 | print(v) #终端打印读取的电平状态
24 | #led.value(v) #将按钮状态设置给led灯引脚 输出电平方法1
25 | led.write_digital(v) #将按钮状态设置给led灯引脚 输出电平方法2
26 | time.sleep(0.1)
27 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-dht.rst:
--------------------------------------------------------------------------------
1 | 2-04-dht:温湿度传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取dht温湿度传感器
8 | #接线:使用windows或linux电脑连接一块arduino主控板,dht11连接D6,dht22连接D7
9 | import time
10 | from pinpong.board import Board,Pin,DHT11,DHT22 #导入dht库
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | dht11 = DHT11(Pin(Pin.D6))
18 | dht22 = DHT22(Pin(Pin.D7))
19 |
20 | while True:
21 | temp = dht11.temp_c() #读取摄氏温度
22 | humi = dht11.humidity() #读取湿度
23 | print("dht11 temperature=",temp," humidity=",humi)
24 |
25 | temp = dht22.temp_c() #读取摄氏温度
26 | humi = dht22.humidity() #读取湿度
27 | print("dht22 temperature=",temp," humidity=",humi)
28 | time.sleep(1)
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-handpy-display.rst:
--------------------------------------------------------------------------------
1 | 掌控板示例-屏幕控制
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板屏幕显示功能
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | oled.DispChar('你好世界', 38, 0) #先写入缓存区,在(38,0)处显示'你好世界'
20 | oled.DispChar('hello,world', 32, 16) #先写入缓存区,在(32,16)处显示'hello,world'
21 | oled.DispChar('안녕하세요', 35, 32) #先写入缓存区,在(35,32)处显示'안녕하세요'
22 | oled.DispChar('こんにちは世界', 24, 48) #先写入缓存区,在(24,48)处显示'こんにちは世界'
23 | oled.show() #显示画面
24 |
25 |
26 | '''其他屏幕控制的方法'''
27 | #oled.DispChar("PinPong库",1) #屏幕显示"pinpong库"在第一行
28 | #oled.DispChar("pinpong库", 42, 22) #屏幕显示"pinpong库"在x,y坐标处,x:0-127,y:0-63
29 | #oled.Bitmap(0,0,50,50,"E:\\PinPong\\default.png") #依次是显示的坐标X,Y, 显示的宽和高,图片路径
30 | #oled.chear(1) #屏幕清除第一行的内容,参数1,2,3,4
31 | #oled.fill(0) #清屏黑色填0,白色填1
32 | #oled.rotation(0) #屏幕旋转0°或者180°
33 | #oled.pixel(0,0) #在坐标x,y画点
34 | #oled.set_line_width(1) #设置线宽范围 1 - 128
35 | #oled.line(0,0,127,63) #划线,依次是起点坐标x1,y1和终点坐标x2,y2
36 | #oled.circle(63, 31, 20) #画圆,依次是坐标x, y和 半径, 不填充
37 | #oled.fill_circle(63, 31, 20) #画圆,依次是坐标x, y和 半径, 填充
38 | #oled.rect(0,0, 63, 31) #画矩形,依次是起点坐标x, y, 宽,高, 不填充
39 | #oled.fill_rect(0,0, 63, 31) #画矩形,依次是起点坐标x, y, 宽,高, 填充
40 | #oled.show() #显示生效,所有屏幕操作执行完成后调用show才会执行
41 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-handpy-music.rst:
--------------------------------------------------------------------------------
1 | 掌控板示例-音乐播放
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板蜂鸣器播放音调
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | tune = ["C4:4", "D4:4", "E4:4", "C4:4", "C4:4", "D4:4", "E4:4", "C4:4",
20 | "E4:4", "F4:4", "G4:8", "E4:4", "F4:4", "G4:8"]
21 | music.play(tune) #播放自编乐谱
22 |
23 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-handpy-rgb.rst:
--------------------------------------------------------------------------------
1 | 掌控板示例-RGB灯控制
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制掌控板板载RGB灯
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | rgb[0] = (255, 0, 0) # 设置为红色,全亮度
20 | rgb[1] = (0, 128, 0) # 设定为绿色,一半亮度
21 | rgb[2] = (0, 0, 64) # 设置为蓝色,四分之一亮度
22 | rgb.write()
23 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-handpy-sensor.rst:
--------------------------------------------------------------------------------
1 | 掌控板示例-读取传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取掌控板板载传感器功能,通过终端窗口查看数据
8 | #接线:使用windows或linux电脑连接一块掌控板主控板
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.extension.handpy import *
13 |
14 | Board("handpy").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
15 | #Board("handpy","COM36").begin() #windows下指定端口初始化
16 | #Board("handpy","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("handpy","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | while True:
20 | print(button_a.value()) #按键A是否按下
21 | print(button_b.value()) #按键B是否按下
22 | print(button_ab.value()) #按键AB是否按下
23 | # print(touchPad_P.is_touched()) #是否触摸P
24 | # print(touchPad_Y.is_touched()) #是否触摸Y
25 | # print(touchPad_T.is_touched()) #是否触摸T
26 | # print(touchPad_H.is_touched()) #是否触摸H
27 | # print(touchPad_O.is_touched()) #是否触摸O
28 | # print(touchPad_N.is_touched()) #是否触摸N
29 | # touch_threshold("all",60) #设置按键P/Y/T/H/O/N的触摸阈值,all代表全部
30 | # print(touchPad_P.read()) #读取按键P的触摸值
31 | # print(touchPad_Y.read()) #读取按键Y的触摸值
32 | # print(touchPad_T.read()) #读取按键T的触摸值
33 | # print(touchPad_H.read()) #读取按键H的触摸值
34 | # print(touchPad_O.read()) #读取按键O的触摸值
35 | # print(touchPad_N.read()) #读取按键N的触摸值
36 | print(sound.read()) #读取麦克风强度
37 | print(light.read()) #读取环境光强度
38 | # print(accelerometer.get_x()) #读取加速度X的值
39 | # print(accelerometer.get_y()) #读取加速度Y的值
40 | # print(accelerometer.get_z()) #读取加速度Z的值
41 | # print(accelerometer.get_strength()) #读取加速度的强度
42 | print("------------------")
43 | time.sleep(0.4)
44 |
45 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-hcr04.rst:
--------------------------------------------------------------------------------
1 | 2-03-sr04_urm10:超声波传感器
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取超声波
8 | #接线:使用windows或linux电脑连接一块arduino主控板,使用SR04或URM10超声波,Trig接D7,Echo接D8
9 | import time
10 | from pinpong.board import Board,Pin,SR04_URM10 #中导入SR04_URM10
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | TRIGER_PIN = Pin(Pin.D7)
18 | ECHO_PIN = Pin(Pin.D8)
19 |
20 | sonar = SR04_URM10(TRIGER_PIN,ECHO_PIN)
21 |
22 | while True:
23 | dis = sonar.distance_cm() #获取距离,单位厘米(cm)
24 | print("distance = %d cm"%dis)
25 | time.sleep(0.1)
26 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-irq.rst:
--------------------------------------------------------------------------------
1 | 1-05-irq:引脚中断
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:引脚模拟中断功能测试
8 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个按钮模块
9 |
10 | import time
11 | from pinpong.board import Board,Pin
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | btn = Pin(Pin.D8, Pin.IN)
19 |
20 | def btn_rising_handler(pin):#中断事件回调函数
21 | print("\n--rising---")
22 | print("pin = ", pin)
23 |
24 | def btn_falling_handler(pin):#中断事件回调函数
25 | print("\n--falling---")
26 | print("pin = ", pin)
27 |
28 | def btn_both_handler(pin):#中断事件回调函数
29 | print("\n--both---")
30 | print("pin = ", pin)
31 |
32 | btn.irq(trigger=Pin.IRQ_FALLING, handler=btn_falling_handler) #设置中断模式为下降沿触发
33 | #btn.irq(trigger=Pin.IRQ_RISING, handler=btn_rising_handler) #设置中断模式为上升沿触发,及回调函数
34 | #btn.irq(trigger=Pin.IRQ_RISING+Pin.IRQ_FALLING, handler=btn_both_handler) #设置中断模式为电平变化时触发
35 |
36 | while True:
37 | time.sleep(1) #保持程序持续运行
38 |
39 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-lcd1602.rst:
--------------------------------------------------------------------------------
1 | 2-05-lcd1602:1602显示屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:I2C LCD1602控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,LCD1602显示屏接到I2C口SCL及SDA
9 | import time
10 | from pinpong.board import Board
11 | from pinpong.libs.lcd1602 import LCD1602_I2C #从libs中导入lcd1602_i2c库
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | lcd = LCD1602_I2C(i2c_addr=0x20) #初始化LCD的I2C地址
19 | print("I2C LCD1602 TEST...")
20 |
21 | lcd.backlight(True) #打开背光
22 | lcd.clear() #清屏
23 |
24 | lcd.set_cursor(0,0) #设置光标位置
25 | lcd.print("Hello World") #显示 "Hello World",1602屏像素点少,不能显示汉字
26 | lcd.set_cursor(1,1) #设置光标位置
27 | lcd.print(1234) #显示数字1234
28 |
29 | while True:
30 | time.sleep(1)
31 | lcd.scroll_left() #滚动显示
32 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-mlx90614.rst:
--------------------------------------------------------------------------------
1 | 3-04-mlx90614:红外测温
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C MLX90614远红外测温传感器
8 | #接线:使用windows或linux电脑连接一块arduino主控板,红外测温传感器接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_mlx90614 import MLX90614 #从libs导入mlx90614库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | irt=MLX90614()
20 |
21 | while True:
22 | print("Object %s *C"% irt.obj_temp_c()) #读取物体温度 摄氏度(℃)
23 | print("Object %s *F"% irt.obj_temp_f()) #读取物体温度 华氏度(℉)
24 | print("Ambient %s *C"% irt.env_temp_c()) #读取环境温度 摄氏度(℃)
25 | print("Ambient %s *F"% irt.env_temp_f()) #读取环境温度 华氏度(℉)
26 | print() #空行
27 | time.sleep(1)
28 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-neopixel.rst:
--------------------------------------------------------------------------------
1 | 2-07-neopixel:WS2812灯带
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制WS2812单线RGB LED灯
8 | #接线:使用windows或linux电脑连接一块arduino主控板,ws2812灯接到D9口
9 |
10 | import time
11 | from pinpong.board import Board,Pin,NeoPixel #导入neopixel类
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | NEOPIXEL_PIN = Pin(Pin.D9)
19 | PIXELS_NUM = 4 #灯数
20 |
21 | np = NeoPixel(NEOPIXEL_PIN,PIXELS_NUM)
22 |
23 | while True:
24 | np[0] = (0, 255 ,0) #设置第一个灯RGB亮度
25 | np[1] = (255, 0, 0) #设置第二个灯RGB亮度
26 | np[2] = (0, 0, 255) #设置第三个灯RGB亮度
27 | np[3] = (255, 0, 255) #设置第四个灯RGB亮度
28 | print("color 1")
29 | time.sleep(1)
30 | np[1] = (0, 255, 0)
31 | np[2] = (255, 0, 0)
32 | np[3] = (255, 255, 0)
33 | np[0] = (0, 0, 255)
34 | print("color 2")
35 | time.sleep(1)
36 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-oled12864.rst:
--------------------------------------------------------------------------------
1 | 2-06-oled12864:oled显示屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:I2C OLED2864屏控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,OLED2864显示屏接到I2C口SCL及SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_ssd1306 import SSD1306_I2C #导入ssd1306库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | oled=SSD1306_I2C(width=128, height=64) #初始化屏幕,传入屏幕像素点数
20 |
21 |
22 | while True:
23 | oled.fill(1) #全部填充显示
24 | oled.show() #显示生效
25 | print("1")
26 | time.sleep(1)
27 |
28 | oled.fill(0) #全部填充熄灭,清屏
29 | oled.show() #显示生效
30 | print("0")
31 | time.sleep(1)
32 |
33 | oled.text("0") #显示数字
34 | oled.text("Hello PinPong",8,8) #指定位置显示文字
35 | oled.show() #显示生效
36 | time.sleep(2)
37 |
38 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-pwm.rst:
--------------------------------------------------------------------------------
1 | 1-04-PWM:模拟输出
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果: PWM输出实验,控制LED灯亮度变化
8 | #接线:使用windows或linux电脑连接一块arduino主板,LED灯接到D6引脚上
9 | import time
10 | from pinpong.board import Board,Pin
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | #pwm0 = PWM(Pin(board,Pin.D6)) #将引脚传入PWM初始化 模拟输出方法1
18 | pwm0 = Pin(Pin.D6, Pin.PWM) #初始化引脚为PWM模式 模拟输出方法2
19 |
20 | while True:
21 | for i in range(255):
22 | print(i)
23 | #pwm0.duty(i) #PWM输出 方法1
24 | pwm0.write_analog(i) #PWM输出 方法2
25 | time.sleep(0.05)
26 |
27 |
28 |
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-rgb1602.rst:
--------------------------------------------------------------------------------
1 | 3-03-rgb1602:彩色1602屏
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:控制I2C RGB彩色LCD1602液晶屏幕
8 | #接线:使用windows或linux电脑连接一块arduino主控板,LCD1602接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.rgb1602 import RGB1602 #从libs导入rgb1602库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | lcd = RGB1602()
20 |
21 | print("I2C RGB1602 TEST...")
22 |
23 | lcd.set_rgb(0,50,0); #设置RGB值
24 | lcd.set_cursor(0,0) #设置光标到原点
25 | lcd.print("PinPong") #显示 "PinPong"
26 |
27 | lcd.set_cursor(1,1) #设置光标位置
28 | lcd.print(1234) #显示数字
29 |
30 | while True:
31 | time.sleep(1)
32 | lcd.scroll_left() #滚动显示
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-servo.rst:
--------------------------------------------------------------------------------
1 | 2-02-servo:舵机
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:舵机控制
8 | #接线:使用windows或linux电脑连接一块arduino主控板,D4连接一个舵机
9 | import time
10 | from pinpong.board import Board,Pin,Servo #导入Servo库
11 |
12 | Board("uno").begin() #初始化,选择板型(uno、microbit、RPi、handpy)和端口号,不输入端口号则进行自动识别
13 | #Board("uno","COM36").begin() #windows下指定端口初始化
14 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
15 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
16 |
17 | s1 = Servo(Pin(Pin.D4)) #将Pin传入Servo中初始化舵机引脚
18 |
19 | while True:
20 | #s1.angle(0) #控制舵机转到0度位置 方法1
21 | s1.write_angle(0) #控制舵机转到0度位置 方法2
22 | print("0")
23 | time.sleep(1)
24 |
25 | #s1.angle(90) #控制舵机转到90度位置
26 | s1.write_angle(90) #控制舵机转到90度位置 方法2
27 | print("90")
28 | time.sleep(1)
29 |
30 | #s1.angle(180) #控制舵机转到180度位置
31 | s1.write_angle(180) #控制舵机转到180度位置 方法2
32 | print("180")
33 | time.sleep(1)
34 |
35 | #s1.angle(90) #控制舵机转到90度位置
36 | s1.write_angle(90) #控制舵机转到90度位置 方法2
37 | print("90")
38 | time.sleep(1)
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-tcs34725.rst:
--------------------------------------------------------------------------------
1 | 3-01-tcs34725:颜色识别
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C TCS34725颜色传感器数值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,TCS34725颜色传感器接到I2C口SCL SDA
9 |
10 | import time
11 | from pinpong.board import Board
12 | from pinpong.libs.dfrobot_tcs34725 import TCS34725 #从libs导入tcs34725库
13 |
14 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
15 | #Board("uno","COM36").begin() #windows下指定端口初始化
16 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
17 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
18 |
19 | tcs = TCS34725() #传感器初始化
20 |
21 | print("Color View Test!");
22 | while True:
23 | if tcs.begin(): #查找传感器,读取到则返回True
24 | print("Found sensor")
25 | break #找到 跳出循环
26 | else:
27 | print("No TCS34725 found ... check your connections")
28 | time.sleep(1)
29 |
30 | while True:
31 | r,g,b,c = tcs.get_rgbc() #获取rgbc数据
32 | print(r,g,b,c)
33 | print("C=%d\tR=%d\tG=%d\tB=%d\t"%(c,r,g,b))
34 |
35 | '''
36 | #数据转换
37 | r /= c
38 | g /= c
39 | b /= c
40 | r *= 256
41 | g *= 256
42 | b *= 256;
43 | print("------C=%d\tR=%d\tG=%d\tB=%d\t"%(c,r,g,b))
44 | '''
45 | time.sleep(1)
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-tone.rst:
--------------------------------------------------------------------------------
1 | 2-01-tone:蜂鸣器
2 | ===========================================
3 |
4 |
5 | .. code-block:: python
6 |
7 | # -*- coding: UTF-8 -*-
8 | #实验效果:控制蜂鸣器发声
9 | #接线:使用windows或linux电脑连接一块arduino主控板,主控板D8接一个蜂鸣器模块
10 | import time
11 | from pinpong.board import Board,Pin,Tone #导入Tone类实现控制蜂鸣器
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | tone = Tone(Pin(Pin.D8)) #将Pin传入Tone中实现模拟输出
19 | tone.freq(200) #按照设置的频率播放
20 |
21 | '''
22 | while True:
23 | tone.tone(200,500) #按照设置的频率和时间播放直到完成
24 | time.sleep(1)
25 | '''
26 |
27 | while True:
28 | print("freq=",tone.freq()) #读取频率并打印
29 | tone.on() #打开蜂鸣器
30 | time.sleep(1)
31 | tone.off() #关闭蜂鸣器
32 | time.sleep(1)
33 | tone.freq(tone.freq()+100) #按照设置的频率播放
--------------------------------------------------------------------------------
/source/2.pinpong示例/示例程序-urm09.rst:
--------------------------------------------------------------------------------
1 | 3-02-urm09:I2C超声波
2 | ===========================================
3 |
4 | .. code-block:: python
5 |
6 | # -*- coding: UTF-8 -*-
7 | #实验效果:读取I2C 超声波传感器(URM09)数值
8 | #接线:使用windows或linux电脑连接一块arduino主控板,URM09传感器接到I2C口SCL SDA
9 | import time
10 | from pinpong.board import Board
11 | from pinpong.libs.dfrobot_urm09 import URM09 #从libs中导入URM09库
12 |
13 | Board("uno").begin() #初始化,选择板型(uno、leonardo、xugu)和端口号,不输入端口号则进行自动识别
14 | #Board("uno","COM36").begin() #windows下指定端口初始化
15 | #Board("uno","/dev/ttyACM0").begin() #linux下指定端口初始化
16 | #Board("uno","/dev/cu.usbmodem14101").begin() #mac下指定端口初始化
17 |
18 | urm = URM09(i2c_addr=0x11) #初始化传感器,设置I2C地址
19 | urm.set_mode_range(urm._MEASURE_MODE_AUTOMATIC ,urm._MEASURE_RANG_500) #设置URM09模式为自动检测,最大测量距离500cm
20 |
21 | while True:
22 | dist = urm.distance_cm() #读取距离数据,单位厘米(cm)
23 | temp = urm.temp_c() #读取传感器温度,单位摄氏度(℃)
24 |
25 | print("Distance is %d cm "%dist)
26 | print("Temperature is %.2f .c "%temp)
27 | time.sleep(0.5)
28 |
--------------------------------------------------------------------------------
/source/3.pinpong类库/API列表-ADC类.rst:
--------------------------------------------------------------------------------
1 | ADC类 ADC class
2 | ========================
3 |
4 | ---------------------
5 | 构造器 constructor
6 | ---------------------
7 |
8 | 创建和初始化一个ADC,获取模拟量数据。
9 |
10 | adc = ADC(board,Pin(board, Pin.A0))
11 |
12 | - board: 通过pinpong类创建的板子对象,只有一块板子时可以省略此参数。
13 |
14 | - Pin: 通过pin类创建的引脚对象。
15 |
16 | ----------------
17 | 方法 method
18 | ----------------
19 |
20 | ::
21 |
22 | adc.read()
23 | 读取adc的模拟量。比如,brightness = adc.read()
24 |
25 |
26 |
--------------------------------------------------------------------------------
/source/3.pinpong类库/API列表-Board类.rst:
--------------------------------------------------------------------------------
1 | PinPong类 Board class
2 | ========================
3 |
4 | --------------------
5 | 构造器 constructor
6 | --------------------
7 |
8 | 创建和初始化一块板子。
9 |
10 | board = PinPong(board_name,port)
11 |
12 | - boardname: 板子的类型。
13 |
14 | - port: 设置对应的端口号,如省略参数则自动识别选择一个端口。如何查询端口号,见安装及快速开始教程。对于基于linux的开发板, 例如树莓派,哪吒板,不需要这个参数
15 |
16 | - 说明:board_name命名列表
17 |
18 | - 规则:
19 |
20 | #. 简单短小好记忆
21 | #. 不区分大小写,样例中推荐全小写
22 | #. 长单词或需要区分版本的单词间使用下划线区分
23 |
24 |
25 | +---------------------+---------------------+---------------------+
26 | | 板子名称 | board_name | 备注 |
27 | +=====================+=====================+=====================+
28 | | Arduino uno r3 | uno | |
29 | +---------------------+---------------------+---------------------+
30 | | Arduino leonardo | leonardo | |
31 | +---------------------+---------------------+---------------------+
32 | | Arduino nano | nano | 暂未支持 |
33 | +---------------------+---------------------+---------------------+
34 | | Arduino mega1280 | mega1280 | 暂未支持 |
35 | +---------------------+---------------------+---------------------+
36 | | Arduino mega2560 | mega2560 | 暂未支持 |
37 | +---------------------+---------------------+---------------------+
38 | | micro:bit | microbit | |
39 | +---------------------+---------------------+---------------------+
40 | | 掌控板 | handpy | |
41 | +---------------------+---------------------+---------------------+
42 | | 虚谷号 | xugu | 等效于uno |
43 | +---------------------+---------------------+---------------------+
44 | | 树莓派 | rpi | |
45 | +---------------------+---------------------+---------------------+
46 | | Firebeetle ESP32 | firebeetle_esp32 | 暂未支持 |
47 | +---------------------+---------------------+---------------------+
48 | | Firebeetle ESP8266 | firebeetle_esp8266 | 暂未支持 |
49 | +---------------------+---------------------+---------------------+
50 | | LattePanda | lp | 等效于leonardo |
51 | +---------------------+---------------------+---------------------+
52 | | ESP32 | esp32 | 暂未支持 |
53 | +---------------------+---------------------+---------------------+
54 | | ESP8266 | esp8266 | 暂未支持 |
55 | +---------------------+---------------------+---------------------+
56 | | 哪吒开发板 | nezha | |
57 | +---------------------+---------------------+---------------------+
58 | | 行空板 | unihiker | |
59 | +---------------------+---------------------+---------------------+
60 |
61 | ----------------
62 | 方法 method
63 | ----------------
64 | ::
65 |
66 | board.begin()
67 |
68 | 连接arduino板,检测固件版本,若没有烧录固件或版本有误,会烧录最新固件。
69 |
70 | 传入参数True表示强制烧录固件。
71 |
72 |
73 |
--------------------------------------------------------------------------------
/source/3.pinpong类库/API列表-PWM类.rst:
--------------------------------------------------------------------------------
1 | PWM类 PWM class
2 | =======================
3 |
4 | --------------------
5 | 构造器 constructor
6 | --------------------
7 |
8 | 创建和初始化一个PWM, 来输出PWM信号。
9 |
10 | pwm0 = PWM(board, Pin(board, Pin.D6))
11 |
12 | - board: 通过pinpong类创建的板子对象,只有一块板子时可以省略此参数。
13 |
14 | - Pin: 通过pin类创建的引脚对象。
15 |
16 | ----------------
17 | 方法 method
18 | ----------------
19 |
20 | ::
21 |
22 | pwm0.freq()
23 | freq(),没有提供args时,返回频率。
24 | f = pwm0.freq()//获取PWM频率。
25 | pwm0.freq(x)
26 | freq(x),提供args时,设置PWM频率为x。
27 | pwm0.freq(1000)//设置PWM频率为1000。
28 |
29 | ::
30 |
31 | pwm0.duty()
32 | duty(),没有提供args时,返回占空比。
33 | f = pwm0.duty()//获取PWM占空比。
34 | pwm0.duty(x)
35 | duty(x),提供args时,设置PWM占空比,范围0-255。
36 | pwm0.duty(127)//设置PWM占空比为50%。
37 |
38 | ::
39 |
40 | pwm0.deinit()
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/source/3.pinpong类库/API列表-Pin类.rst:
--------------------------------------------------------------------------------
1 | Pin类 Pin class
2 | ========================
3 |
4 | ----------------
5 | 常量 constants
6 | ----------------
7 |
8 | --------------------
9 | 构造器 constructor
10 | --------------------
11 |
12 | 创建和初始化一个引脚。
13 |
14 | pin = Pin(board, vpin, mode)
15 |
16 | - board: 通过pinpong类创建的板子的对象,只有一块板子时可以省略此参数。
17 |
18 | - vpin: 板子上所用到的引脚号。(数字引脚1-Pin.D1, 模拟引脚1-Pin.A1)
19 |
20 | - mode: 定义引脚的输入、输出。Pin.IN, Pin.OUT (定义模拟量引脚时省略,默认输入)
21 |
22 | 定义一个数字输入,比如按键,
23 |
24 | button_pin = Pin(Pin.D8, Pin.IN)
25 |
26 | 定义一个模拟量传感器引脚,
27 |
28 | Analog_pin = Pin(Pin.A0)
29 |
30 | ----------------
31 | 方法 method
32 | ----------------
33 |
34 | ::
35 |
36 | pin.value()
37 |
38 | 调用value(),没有提供args时,为数字读取,返回0或1。
39 |
40 | v = button_pin.value()//获取引脚button_pin的引脚状态
41 |
42 | pin.value(x)
43 |
44 | 调用value(),提供args时,为数字写入。
45 |
46 | pin.value(1) //引脚pin输出高电平
47 |
48 | ::
49 |
50 | pin.on()
51 | 引脚pin设置为高电平, 同pin.value(1)
52 |
53 | ::
54 |
55 | pin.off()
56 | 引脚pin设置为低电平, 同pin.value(0)
57 |
58 | ::
59 |
60 | pin.irq(trigger,handler)
61 | 设置中断,
62 | - trigger: 中断模式,rising - 上升沿, falling - 下降沿, low - 低电平, high - 高电平...
63 | - handler:
64 |
65 |
--------------------------------------------------------------------------------
/source/4.pinpong更新记录/index.rst:
--------------------------------------------------------------------------------
1 | ==========
2 | 开发计划
3 | ==========
4 |
5 | - 这里将记录一些正在开发或计划开发的内容,如果你有什么建议可至本文档的github留言
6 |
7 | #. 报错提示规范。
8 | #. 多国语言提示。
9 | #. 示例程序整理。
10 | #. 更多小模块的支持。
11 |
12 |
13 | ==========
14 | 更新记录
15 | ==========
16 |
17 |
18 | V0.6.0公测版
19 | ==============================
20 |
21 | .. 注意:: 重要版本变化。
22 |
23 | #. 行空板主板控制方式由firmata方案改为Linux设备方案
24 | #. 优化begin连接及I2C通讯稳定性
25 | #. 其他优化
26 |
27 | V0.4.2~V0.5.2公测版
28 | ==============================
29 | #. 增加行空板主板的支持
30 | #. 增加小模块的支持
31 | #. 其他优化
32 |
33 | V0.4.2公测版 20210820
34 | ==============================
35 |
36 | #. 重构handpy板载传感器的调用接口为micropython语法
37 | #. 增加handpy、micro:bit对外接传感器模块的支持
38 | #. 增加哪吒板的支持
39 | #. 解决发现的bug
40 |
41 |
42 | V0.3.5公测版 20210407
43 | ==============================
44 |
45 | #. 支持传感器12位DA转换模块
46 | #. 支持传感器bmi160 6轴传感器
47 | #. 支持RGB LED点阵表情包
48 | #. 支持实时时钟SD2405
49 | #. 支持TM1650四位数码管
50 | #. 支持SHT31数字温度传感器
51 | #. 支持臭氧传感器
52 | #. 电容式指纹识别传感器
53 | #. 解决发现的bug
54 |
55 | V0.3.4公测版 20201231
56 | ==============================
57 |
58 | #. 解决uno、leonardo pwm问题
59 | #. 新增microbit板载资源支持
60 | #. 新增handpy板载资源支持
61 | #. 新增bme680支持(环境传感器)
62 | #. 新增max17043支持(3.7V锂电池电量计)
63 |
64 | V0.3.3公测版 20201116
65 | ==============================
66 |
67 | #. 支持DS18B20(温度传感器)传感器
68 | #. 支持音频分析模块
69 | #. 支持HX711(重量传感器)传感器
70 | #. 支持TDS(测量水的TDS)传感器
71 | #. 支持心率传感器
72 | #. 支持BME280(环境传感器)传感器
73 | #. 支持VL53L0(激光测距)传感器
74 | #. 支持LIS2DH(三轴加速计)传感器
75 | #. 支持BMP388(气压传感器)传感器
76 | #. 支持INA219(数字功率计)传感器
77 | #. 支持CCS811(空气质量)传感器
78 | #. 支持ADS1115(16位AD转换模块)传感器
79 | #. 支持huskylens(哈士奇)
80 |
81 | V0.3.2公测版 20200929
82 | ==============================
83 |
84 | #. 增加树莓派、掌控板(handpy)以及micro:bit板的支持(当前仅支持数字模拟读写及舵机控制功能)。
85 | #. 新增扩展库:BNO05510DOF绝对定向传感器、BMP280气压传感器、NFC模块、PAJ7620U2手势识别模块、DS1307实时时钟模块、RPI TLC_10bit_adc树莓派10位adc模块、PRI pca_9685树莓派16路pwm模块。
86 |
87 |
88 | V0.3.0公测版 20200727
89 | ==============================
90 |
91 | .. 注意:: 重要版本:API重做最终版本,后续API将不再进行修改,可用于教程编写。
92 |
93 | #. PinPong类名替换为Board类名便于理解
94 | #. 初始化方式修改,使用Board及begin()函数
95 | #. 增加默认板,无需给所有函数输入board参数
96 | #. 将常用库放入Board中,导入更方便
97 |
98 |
99 |
100 | V0.2.2公测版 20200715
101 | ==============================
102 |
103 | #. Pin类增加基础函数:
104 | #. read_digital()
105 | #. write_digital(v)
106 | #. read_analog()
107 | #. write_analog(v)
108 | #. 详细用法见“PinPong示例”。
109 |
110 |
111 | V0.2.0公测版 20200625
112 | ==============================
113 |
114 | #. 语法及库名称规范完成
115 | #. 增加常见扩展硬件库的支持
116 | #. 增加自动识别串口功能
117 |
118 |
119 | V0.1.x内测版
120 | ===============
121 |
122 | ::
123 | 功能开发及内测版本,仅供测试,代码与V0.2.0可能存在不兼容.
124 |
125 |
--------------------------------------------------------------------------------
/source/5.FAQ常见问题/index.rst:
--------------------------------------------------------------------------------
1 | ========
2 | 常见问题
3 | ========
4 |
5 | 使用行空板出现错误怎么办?
6 | -----------------------------------------------------------------
7 | 可以直接查看行空板官方文档的常见问题目录:https://www.unihiker.com.cn/wiki/FAQ
8 |
9 |
10 | 虚谷号上出现错误:ImportError: cannot import name 'Pin'
11 | -----------------------------------------------------------------
12 |
13 | #. 尝试先重启虚谷号
14 | #. 重启后如果依然出现,则先尝试更新pinpong库,终端运行: pip install -U pinpong
15 | #. 如依然出现,则尝试卸载重装pinpong库,终端运行: pip uninstall pinpong ,然后重启虚谷号后重新安装: pip install pinpong
16 |
17 |
18 | 使用pinpong库控制的硬件可以脱离电脑运行吗?
19 | -----------------------------------------------------------------
20 |
21 | #. pinpong是一个Python库,主要实现硬件与Python的交互,因此只有能运行Python(注意: Python和microPython_ 不一样 )的设备才可以使用,因此如果要脱离PC,可以使用树莓派、行空板等可以运行操作系统的板子。
22 | #. 使用实时通信的方式与Python交互运行,后续将考虑开发通过网络的方式进行通信以实现在电脑上运行pinpong(Python),通过网络实时控制带网络功能的硬件设备。
23 |
24 | .. _Python和microPython: https://www.baidu.com/s?ie=UTF-8&wd=micropython%E5%92%8Cpython
25 |
26 |
27 | 运行程序时出现SerialExcedption: could not open port 'COM': PermissionError(13,'拒绝访问。',None,5 怎么办?
28 | --------------------------------------------------------------------------------------------------------------------------
29 |
30 | #. 此错误说明有设备占用了串口,或上一次程序没有正常关闭,或当前识别的串口错误。
31 | #. 如果是以前可以正常使用而本地运行无法使用则一般为串口被占用了,则可以尝试关闭上一次的程序及其他占用串口的软件,或重新插拔USB口及重启电脑。
32 | #. 如果是第一次使用这个主控板,则可能为串口没有安装驱动,需要安装一次驱动(推荐使用Mind+内置的一键安装驱动功能),或打开设备管理器查看是否有端口(COM)。
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/source/bilibili.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/DFRobot/pinpong-docs/8199bfc9f038bba4b033054aa54ccd95db2a468e/source/bilibili.jpg
--------------------------------------------------------------------------------
/source/conf.py:
--------------------------------------------------------------------------------
1 | # Configuration file for the Sphinx documentation builder.
2 | #
3 | # This file only contains a selection of the most common options. For a full
4 | # list see the documentation:
5 | # https://www.sphinx-doc.org/en/master/usage/configuration.html
6 |
7 | # -- Path setup --------------------------------------------------------------
8 |
9 | # If extensions (or modules to document with autodoc) are in another directory,
10 | # add these directories to sys.path here. If the directory is relative to the
11 | # documentation root, use os.path.abspath to make it absolute, like shown here.
12 | #
13 | # import os
14 | # import sys
15 | # sys.path.insert(0, os.path.abspath('.'))
16 |
17 |
18 | # -- Project information -----------------------------------------------------
19 |
20 | project = 'pinpong'
21 | copyright = '2020, DFRobot'
22 | author = 'DFRobot'
23 |
24 | # The full version, including alpha/beta/rc tags
25 | release = '0.1'
26 |
27 |
28 | # -- General configuration ---------------------------------------------------
29 |
30 | # Add any Sphinx extension module names here, as strings. They can be
31 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
32 | # ones.
33 | extensions = [
34 | ]
35 |
36 | # Add any paths that contain templates here, relative to this directory.
37 | templates_path = ['_templates']
38 |
39 | # The language for content autogenerated by Sphinx. Refer to documentation
40 | # for a list of supported languages.
41 | #
42 | # This is also used if you do content translation via gettext catalogs.
43 | # Usually you set "language" from the command line for these cases.
44 | language = 'zh-cn'
45 |
46 | # List of patterns, relative to source directory, that match files and
47 | # directories to ignore when looking for source files.
48 | # This pattern also affects html_static_path and html_extra_path.
49 | exclude_patterns = []
50 |
51 |
52 | # -- Options for HTML output -------------------------------------------------
53 |
54 | # The theme to use for HTML and HTML Help pages. See the documentation for
55 | # a list of builtin themes.
56 | #
57 | html_theme = 'sphinx_rtd_theme'
58 | #html_theme = 'default'
59 |
60 | # Add any paths that contain custom static files (such as style sheets) here,
61 | # relative to this directory. They are copied after the builtin static files,
62 | # so a file named "default.css" will overwrite the builtin "default.css".
63 | html_static_path = ['_static']
64 |
65 | master_doc = 'index'
--------------------------------------------------------------------------------
/source/index.rst:
--------------------------------------------------------------------------------
1 |
2 | .. pinpong documentation master file, created by
3 | sphinx-quickstart on Fri May 22 22:20:20 2020.
4 | You can adapt this file completely to your liking, but it should at least
5 | contain the root `toctree` directive.
6 |
7 | 欢迎访问 PinPong Python库教程文档!
8 | ===================================
9 |
10 |
11 | PinPong库是一套控制开源硬件主控板的Python库,支持上百种开源硬件电子模块,5分钟即可让你上手使用Python控制开源硬件。
12 |
13 | 借助于PinPong库,直接用Python代码就能给各种常见的开源硬件,例如Arduino、树莓派、行空板。其原理是给开源硬件烧录一个特定的固件,使开源硬件可以通过串口与电脑通讯,电脑端有一套统一的Python接口库。
14 |
15 | PinPong库的名称由“Pin”和“Pong”组成,“Pin”指引脚,“PinPong”为“乒乓球”的谐音,指信号的往复。
16 |
17 | pinpong库的设计,是为了让开发者在开发过程中不用被繁杂的硬件型号束缚,而将重点转移到软件的实现。哪怕程序编写初期用Arduino开发,部署时改成了行空板,只要修改一下硬件的参数就能正常运行,实现了“一次编写处处运行”。
18 |
19 | .. 注意:: 当前PinPong库正在快速更新中,已支持Arduino系列uno、leonardo、mega2560,ESP32系列掌控板(handpy),micro:bit(microbit),行空板(unihiker),传感器支持50+,其他主控板及更多扩展库将逐步支持。
20 |
21 |
22 | 本文档推荐阅读流程:
23 |
24 | #. 查看安装教程进行准备
25 | #. 查看示例快速上手测试
26 | #. 查看教程进行系统学习
27 |
28 |
29 | 点击观看pinpong入门视频互动教程:https://www.bilibili.com/video/BV17K4y1T7MF
30 |
31 |
32 |
33 | .. image:: bilibili.jpg
34 |
35 |
36 |
37 | .. toctree::
38 | :maxdepth: 2
39 | :caption: pinpong介绍
40 |
41 |
42 | 0.pinpong介绍/简介.rst
43 | 1.pinpong教程/安装教程/index.rst
44 |
45 |
46 |
47 | .. toctree::
48 | :maxdepth: 2
49 | :caption: pinpong示例
50 |
51 | 2.pinpong示例/index1.rst
52 | 2.pinpong示例/index2.rst
53 | 2.pinpong示例/index3.rst
54 | 2.pinpong示例/indexunihiker.rst
55 | 2.pinpong示例/indexhandpy.rst
56 | 2.pinpong示例/更多示例.rst
57 |
58 |
59 |
60 | .. toctree::
61 | :maxdepth: 2
62 | :caption: pinpong教程
63 |
64 | 1.pinpong教程/进阶教程/index.rst
65 | 1.pinpong教程/经典案例/index.rst
66 |
67 |
68 |
69 | .. toctree::
70 | :maxdepth: 2
71 | :caption: pinpong类库
72 |
73 |
74 | 3.pinpong类库/API列表-Board类.rst
75 | 3.pinpong类库/API列表-Pin类.rst
76 | 3.pinpong类库/API列表-ADC类.rst
77 | 3.pinpong类库/API列表-PWM类.rst
78 |
79 |
80 | .. toctree::
81 | :maxdepth: 2
82 | :caption: pinpong更新记录
83 |
84 |
85 |
86 | 4.pinpong更新记录/index.rst
87 |
88 |
89 | .. toctree::
90 | :maxdepth: 2
91 | :caption: FAQ常见问题
92 |
93 |
94 | 5.FAQ常见问题/index.rst
95 |
96 |
97 |
98 | ------------------
99 |
100 | 索引
101 | ==================
102 |
103 | * :ref:`genindex`
104 | * :ref:`modindex`
105 | * :ref:`search`
106 |
--------------------------------------------------------------------------------
/source/note.md:
--------------------------------------------------------------------------------
1 | # 步骤
2 | - 安装python环境
3 | - 安装sphinx、rest、rtdtheme
4 |
5 | ```bash
6 | pip install sphinx
7 | pip install restructuredtext-lint
8 | pip install sphinx_rtd_theme
9 | #修改conf.py配置主题 html_theme = 'sphinx_rtd_theme'
10 |
11 | ```
12 | - 实时预览
13 | ```bash
14 | pip install sphinx-autobuild
15 | sphinx-autobuild source build/html
16 | #127.0.0.1:8000
17 | ```
18 |
19 | - 编译
20 |
21 | ```bash
22 | make clean
23 | make html
24 | ```
--------------------------------------------------------------------------------