ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

我用树莓派Pico学Python (2) - 点亮LED 以及 第一个程序

2021-07-22 13:34:00  阅读:263  来源: 互联网

标签:树莓 LED Pin 点亮 Python 命令 Pico led


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命令,有几点需要注意:

  1. 命令不可以用空格或其他空白开头,命令开头的空格(空白)有特殊含义
  2. 注意大小写,比如上面的 Pin 如果写成 pin 是会报错的
  3. 使用中文的我们,特别需要注意半角和全角字符,python命令应该都用半角,比如 ()()不一样,, 不一样, : 不一样,能看出他们的区别吗?
  4. 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行的意思,一直循环这一过程。
所以,程序命令开头有空格的意思是,如果连续多条命令有相同的空格缩进,即表示他们在同一个代码块,而在他们之前的一个命令,往往是 ifwhilefordef 等语句。

这不是死循环吗? 没错,大部分单片机嵌入式系统的主程序,就是个死循环。这段程序在单片机的世界里,相当于打印 “Hello, World!”

如何停止这个永远在循环的程序? 点击工具栏里那个红色的STOP按钮。
在这里插入图片描述

标签:树莓,LED,Pin,点亮,Python,命令,Pico,led
来源: https://blog.csdn.net/zhufu86/article/details/118996053

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有