“PYNQ-2018秋-第⑨组”版本间的差异
来自iCenter Wiki
FUcreature(讨论 | 贡献) (→成员) |
FUcreature(讨论 | 贡献) |
||
第4行: | 第4行: | ||
# 刘川楷 | # 刘川楷 | ||
# 左都云 | # 左都云 | ||
+ | == PYNQ板使用心得 == | ||
+ | 相比树莓派,粉板预置了更多的基础设施如Jupyter Notebook服务端和一些可参考的代码,相比树莓派能够更快地投入实践当中。 | ||
+ | |||
+ | 粉板上预置了一些小型硬件如按钮、LED灯,通过参考代码可以很快地学会其调用方法,我们简单写了一段代码。 | ||
+ | |||
+ | <pre> | ||
+ | from time import sleep | ||
+ | from pynq.board import LED | ||
+ | from pynq.board import RGBLED | ||
+ | from pynq.board import Button | ||
+ | btns = [Button(index) for index in range(4)] | ||
+ | leds = [LED(index) for index in range(4)] | ||
+ | |||
+ | while True: | ||
+ | if (btns[0].read()==1): | ||
+ | leds[0].toggle() | ||
+ | leds[1].toggle() | ||
+ | if (btns[1].read()==1): | ||
+ | leds[0].toggle() | ||
+ | leds[1].toggle() | ||
+ | leds[2].toggle() | ||
+ | if (btns[2].read()==1): | ||
+ | leds[1].toggle() | ||
+ | leds[2].toggle() | ||
+ | leds[3].toggle() | ||
+ | if (btns[3].read()==1): | ||
+ | leds[2].toggle() | ||
+ | leds[3].toggle() | ||
+ | sleep(0.2) | ||
+ | </pre> | ||
+ | 效果很简单,就是按某个按钮时同时改变相邻的2~3盏灯的开关,有点像某种Puzzle游戏的感觉。 | ||
+ | |||
+ | 不过没有做好运行结束的处理,所以多写了一个Cell用来关灯。 | ||
+ | <pre> | ||
+ | for led in leds: | ||
+ | led.off() | ||
+ | </pre> |
2018年10月16日 (二) 08:41的最后版本
成员
- 蔡东龙
- 安昊
- 刘川楷
- 左都云
PYNQ板使用心得
相比树莓派,粉板预置了更多的基础设施如Jupyter Notebook服务端和一些可参考的代码,相比树莓派能够更快地投入实践当中。
粉板上预置了一些小型硬件如按钮、LED灯,通过参考代码可以很快地学会其调用方法,我们简单写了一段代码。
from time import sleep from pynq.board import LED from pynq.board import RGBLED from pynq.board import Button btns = [Button(index) for index in range(4)] leds = [LED(index) for index in range(4)] while True: if (btns[0].read()==1): leds[0].toggle() leds[1].toggle() if (btns[1].read()==1): leds[0].toggle() leds[1].toggle() leds[2].toggle() if (btns[2].read()==1): leds[1].toggle() leds[2].toggle() leds[3].toggle() if (btns[3].read()==1): leds[2].toggle() leds[3].toggle() sleep(0.2)
效果很简单,就是按某个按钮时同时改变相邻的2~3盏灯的开关,有点像某种Puzzle游戏的感觉。
不过没有做好运行结束的处理,所以多写了一个Cell用来关灯。
for led in leds: led.off()