• 物联网开发笔记(5)- 使用Wokwi仿真树莓派Pico实现LED灯交替闪烁(续)


    大家好,我们再来研究一下,LED交替闪烁。在前面的文章:笔记(2)我们已经实现了。这次我们换一种实现方法。

    一、目的

    实现两个LED连接到Pico,LED间隔500ms交互闪烁

    二、硬件连接

    LED分别连接到树莓派的Pico的GP7和GP8,通过限流电阻470欧姆电阻

    三、代码分析

    定义两个LED灯,通过两个GPIO控制,这里选择GPIO6和7。也可以选择其他GPIO口。

    main.py (方法一的代码,此处通过简单设置LED灯的状态来实现)

    1. # 这个例子是实现定时器
    2. from machine import Pin
    3. import utime
    4. purple_LED = Pin(6, Pin.OUT) # 紫色LED,端口6
    5. white_LED = Pin(7, Pin.OUT) # 白色LED,端口7
    6. while True:
    7. purple_LED.value(1) # 紫色LED亮
    8. white_LED.value(0) # 白色LED熄灭
    9. utime.sleep(1)
    10. purple_LED.value(0) # 紫色LED熄灭
    11. white_LED.value(1) # 白色LED亮
    12. utime.sleep(1)

    main.py (方法二的代码,此处通过设置flag的值来切换,设立flag是嵌入式开发常用的方法)

    1. # 这个例子是实现定时器
    2. from machine import Pin
    3. import utime
    4. purple_LED = Pin(6, Pin.OUT) # 紫色LED,端口6
    5. white_LED = Pin(7, Pin.OUT) # 白色LED,端口7
    6. flag = 1
    7. while True:
    8. if flag == 1:
    9. purple_LED.value(1) # 紫色LED亮
    10. white_LED.value(0) # 白色LED熄灭
    11. flag = 0
    12. print("flag: ",flag)
    13. else:
    14. purple_LED.value(0) # 紫色LED熄灭
    15. white_LED.value(1) # 白色LED亮
    16. flag = 1
    17. print("flag: ",flag)
    18. utime.sleep(1)

    diogram.json(方法一和方法二的电路连接是一样的)

    1. {
    2. "version": 1,
    3. "author": "Anonymous maker",
    4. "editor": "wokwi",
    5. "parts": [
    6. {
    7. "type": "wokwi-pi-pico",
    8. "id": "pico",
    9. "top": -52.98,
    10. "left": -5.98,
    11. "attrs": { "env": "micropython-20220117-v1.18" }
    12. },
    13. {
    14. "type": "wokwi-led",
    15. "id": "led1",
    16. "top": -3.71,
    17. "left": 117.56,
    18. "attrs": { "color": "white", "flip": "", "lightColor": "blue" }
    19. },
    20. {
    21. "type": "wokwi-resistor",
    22. "id": "r1",
    23. "top": 96.97,
    24. "left": 91.4,
    25. "rotate": 180,
    26. "attrs": { "value": "470" }
    27. },
    28. {
    29. "type": "wokwi-led",
    30. "id": "led2",
    31. "top": -12.42,
    32. "left": -109.82,
    33. "attrs": { "color": "magenta" }
    34. },
    35. {
    36. "type": "wokwi-resistor",
    37. "id": "r2",
    38. "top": 65.01,
    39. "left": -94.82,
    40. "attrs": { "value": "1000" }
    41. }
    42. ],
    43. "connections": [
    44. [ "led1:C", "r1:1", "green", [ "v35.22", "h26.2" ] ],
    45. [ "r1:2", "pico:GND.6", "green", [ "v0" ] ],
    46. [ "led1:A", "pico:GP7", "green", [ "v0" ] ],
    47. [ "led2:A", "pico:GP6", "green", [ "v0" ] ],
    48. [ "led2:C", "r2:1", "green", [ "v0" ] ],
    49. [ "r2:2", "pico:GND.3", "green", [ "v0" ] ]
    50. ]
    51. }

    大家学会了没,有问题请留言,或者加微信公众号,或者QQ群和大家多交流。谢谢!

  • 相关阅读:
    Linux基本工具——yum
    【Python】让Anaconda不再下载慢下载失败,Anaconda的下载源更换为国内源(保姆级图文)
    Unity延时函数
    Microsoft Office for Mac最新版本安装教程,亲测可用!!!
    神经系统疾病病人的护理
    中英文双语言海外微盘交易源码 微盘交易源码 虚拟币微盘交易系统源码 支持产品数据
    图书管理系统的测试
    基于微信小程序的高校餐厅食品留样管理系统设计与实现-计算机毕业设计源码+LW文档
    html中a标签的属性
    每日一题 300最长递增子序列(贪心+二分)(灵神模版)
  • 原文地址:https://blog.csdn.net/zhusongziye/article/details/126655923