LED 是一种通电后会发光的电子零件,可以发出特定颜色的光,多色 LED 甚至可以发出各种颜色的光。树莓派 Pico 的上面有一颗亮起后发出绿色光的 LED ,它的位置在 Micro USB 接口的旁边,有标识 LED 字样。 他亮起来的样子如下图:
是的,那个亮起来的绿色方块就是LED了。 它默认是不会亮起来的,需要用python命令去点亮它。
点亮LED
将 Pico 连接电脑后,启动 Thonny 并成功连接 Pico 后,在 Thonny 下方的 Shell 窗口内输入如下3条命令,就可以点亮绿色 LED :
from machine import Pin
led = Pin(25, Pin.OUT)
led.value(1)
第1句命令的意思是调用点亮 LED 所需要的指令所在的程序库;
第2句命令是指定控制LED的芯片接口;
第3句命令是点亮 LED 的命令。
相对的,如果要熄灭 LED,执行下面的命令即可,也就是将上面的第3句中的1
改为0
:
led.value(0)
对于python命令,有几点需要注意:
- 命令不可以用空格或其他空白开头,命令开头的空格(空白)有特殊含义
- 注意大小写,比如上面的 Pin 如果写成 pin 是会报错的
- 使用中文的我们,特别需要注意半角和全角字符,python命令应该都用半角,比如
()
和()
不一样,,
和,
不一样,:
和:
不一样,能看出他们的区别吗? - python命令和程序,一句一行,不可以一句两行或多行,行结尾也没有结束符
前面的3条命令就可以点亮Pico上的LED。
但是,我们不能干什么都要把命令一句一句执行啊,这样太麻烦了! 于是我们来试试Pico第一个程序。
第一个程序 - 开发板的Hello World
在 Thonny 软件窗口中部的代码编辑区输入(或拷贝粘贴)如下程序代码:
from machine import Pin
import time
led = Pin(25, Pin.OUT)
while True:
led.value(1)
time.sleep(0.5)
led.value(0)
time.sleep(0.5)
然后点击菜单 文件
- 保存
, 然后在稍后弹出的窗口选择 Raspberry Pi Pico
,在之后窗口的 File name:
后面填入文件名,比如: led.py
, 注意一定不要漏掉后缀 .py
,否则程序不能被识别 。
然后点击工具栏的绿色按钮。
之后应该可以观察到 Pico 上的 LED 闪烁起来了。
可以看到,这段程序代码的第一行,就是之前3条命令的第1条;
第2行,是引用time
模块,以方便调用时间相关的命令;
第4行,就是之前3条命令的第2条;
第6行,while True:
的意思是这一句后面以4个空格
缩进的程序代码,反复执行
第7-10行,是将 LED 点亮后,等待0.5秒,再将LED熄灭,再等待0.5秒,然后按照第6行的意思,一直循环这一过程。
所以,程序命令开头有空格的意思是,如果连续多条命令有相同的空格缩进,即表示他们在同一个代码块,而在他们之前的一个命令,往往是 if
, while
, for
, def
等语句。
这不是死循环吗? 没错,大部分单片机嵌入式系统的主程序,就是个死循环。这段程序在单片机的世界里,相当于打印 “Hello, World!”
如何停止这个永远在循环的程序? 点击工具栏里那个红色的STOP
按钮。