01 PyBoard Mini


淘宝购买到的《Python微控制器编程 从零开始》 ,其中提到了 pyBoard Mini 核心板的应用。今天购买到的PyBoard到货了。对其进行初步的实验测试。

1.pyBoard基本信息

(1)管脚定义

▲ PyBoard Mini的外管脚

▲ 外观与个管脚定义

(2)学习资料

通过和淘宝电商主沟通,获得相关的学习资料的下载链接:

资料链接: https://pan.baidu.com/s/11ZXjkUjAL-W2hd0thnzZ9w

提取码:1234

下载之后,存储在:

D:\zhuoqing\DesignCenter\MicroPython\PyBoard\MicroPython开发套件(基于pyboard STM32F05平台)配套资料_2021-2-5

其中包括如下目录:

  • 01-开发工具
  • 02-示例程序
  • 03-相关固件
  • 04-原理图&功能图
  • 05-芯片手册
  • 06-产品图片
  • 《MicroPython从0到1》基于pyBoard(STM32F405平台)_v1.0.pdf
  • 配套资料简介.txt

2.将PyBoard接入PC

(1)安装USB串口驱动

利用购买到器件中的Mini USB电缆将P有Board连入PC(Windows7)的USB,开始会出现如下未安装好驱动的虚拟串口:

PyBoard Virtual Comm Port In FS Mode

同时会出现名称为 PYBFLASH的磁盘。

根据 pyboard virtual comm port in fs mode 的解决问题 给出的解决方案,直接使用鼠标右键对出现的USB设备 选择 更新驱动软件,通过浏览计算机以查找驱动程序软件,选择PYBFLASH即可完成USB设备的安装。

▲ 安装完之后出现的 PyBoard USB Comm Port

在PyBoard加载到PC的USB端口出现的PYBFLASH中存在以下文件:

  • boot.py
  • dht.py
  • ds18x20.py
  • main.py
  • onewire.py
  • pybcdc.inf
  • README.txt
  • ssd1306.py

将其临时保存在:

D:\zhuoqing\DesignCenter\MicroPython\PyBoard\PYBFLASH

(2)与Thonny连接

根据 安装 Thonny 软件环境开发PI Pico 描述,下载安装Thonny IDE。

选择 Thonny中的Tools中的Options对话框,通过Interpreter中选择“MicroPython (Generic)”,然后在Port中选择PyBoard USB Comm Port(COM10)。

其中COM10需要根据计算机中PyBoard对应的USB串口的实际端口号而定。

▲ Thonny 的Options 对话框

在Thonny的Shells中输入如下简单的测试语句:

>>> from pyb import LED
>>> led = LED(1)
>>> led.toggle()

▲ Thonny Shells输入简单语句

观察到PyBoard上的LED被点亮:

▲ LED被点亮

下面的代码将四个板载的LED都点亮:

from pyb                    import LEDled = [LED(x+1) for x in range(4)]for l in led:l.toggle()

▲ 四个板载LED都被点亮

from pyb                    import LED,delayled = [LED(x+1) for x in range(4)]
print("LEDs flash")while True:for l in led:l.toggle()delay(250)

▲ PyBoard LEDs Flash

3.初步学习资料

《MicroPython从0到1》基于pyBoard(STM32F405平台)_v1.0.pdf

4.恢复PyBoard出厂设置

当 pyboard出现异常时,可以 出现异常时,可以 通过以下方式修改启动顺序或者 恢复出厂设置 , 方法如下:

按着 pyBoard上的 USER键不放,再按一下 键不放,再按一下 RST键, LED灯会持续交替闪烁 , 当闪烁达到你想要的模式时候,松开 当闪烁达到你想要的模式时候,松开 user键, LED灯会快速闪烁,板子接着重 会快速闪烁,板子接着重 会快速闪烁,板子接着重 新启动。

模式 1:只有绿灯亮 ,正常模式 :先启动 boot.py然后 main.py

模式 2:只有橙色灯亮 ,安全模式 ,安全模式 :启动时候不运行任何脚本。 (仅 1次有效 )

模式 3:绿灯和橙同时亮 ,文件系统重置 :文件系统恢复出厂状态,然后 :文件系统恢复出厂状态,然后 以安全模式启动。

注: 当编辑的程序存储在PYBFLASH中main.py时,下次系统板上电启动后,便运行main.py。

02 基本实验


1.LED测试

在pyb中封装的LED对象的相关函数为:

▲ LED 对象的相关函数

▲ 延迟相关的函数

(1)流水灯

from pyb                    import LED,delayled = [LED(x+1) for x in range(4)]
print("LEDs flash")count = 0while True:for l in led:l.on()delay(100)l.off()delay(100)

▲ 板载LED实现流水灯

注意:如果LED使用pyb.LED来定义的话,会出现软件不能够正常运行.

2.按键

▲ 按键相关的函数

from pyb                    import LED,delay,Switchdef func1():LED(4).toggle()sw = Switch()
sw.callback(func1)

▲ 使用按键切换LED(4)的状态

3.GPIO

▲ GPIO相关对象的函数

下面代码是通过USR板载按键控制板载LED(4)的状态。

from pyb                    import LED,delay,Switch,Pinp_out = Pin('B4', Pin.OUT_PP)
p_in  = Pin('X17', Pin.IN, Pin.PULL_UP)while True:if p_in.value() == 0:p_out.high()else:p_out.low()

演示效果:

▲ 使用板载的USR按键控制LED(4)

4.外部中断

▲ 外部IO中断对应的函数

from pyb                    import LED,delay,Switch,Pin,ExtIntcallback = lambda e: LED(4).toggle()ext = ExtInt(Pin('Y1'), ExtInt.IRQ_FALLING, Pin.PULL_UP, callback)

▲ 使用外部中断来切换LED(4)

5.实时时钟

▲ 始终相关的函数

from pyb                    import LED,RTC,Pinrtc = RTC()if rtc.datetime()[0] != 2019:rtc.datetime((2019,4,1,1,0,0,0,0))while True:print(rtc.datetime())pyb.delay(500)

▲ 实时时钟输出的字符

6.ADC

▲ ADC 对象相关的函数

(1)基本的ADC读取

from pyb                    import LED,RTC,Pin,ADCadc = ADC('X1')
while True:print(adc.read())pyb.delay(250)

▲ 通过电位器改变X1端口的电压

(2)改变LED亮度

from pyb                    import LED,RTC,Pin,ADCadc = ADC('X1')while True:adv = adc.read()intensity = int(adv / 16)for i in range(4):LED(i+1).intensity(intensity)pyb.delay(25)

▲ 通过ADC设置LED的亮度

7.DAC

注意,按照STM32F411CEU4的数据手册,它并没有DAC输出,可以按照实验参考书上介绍,它具有2个DAC,分别是X5,X6。其中X6连接了板上的无源蜂鸣器,因此只能使用X6。

▲ DAC 对象的相关函数

执行程序,会发现,其中并没有DAC模块。

from pyb                    import LED,RTC,Pin,ADC,DACdac = DAC(1, bits=12)dac.write(0x400)
print('DAC output 0x400')
Traceback (most recent call last):File "<stdin>", line 1, in <module>
ImportError: can't import name DAC

在相同的淘宝销售商,它给出的 PyBoard -STM32F405开发板 中带有DAC转换器。

8.UART

▲ F411模块只有两个UART端口

▲ UART对象

from pyb                    import LED,UARTuart = UART(1, 115200)print("Test UART.")while True:uart.write(b'\x55')pyb.delay(10)

▲ X9上的信号波形

▌结论


本文对于刚刚购置得到的 pyBoard Mini进行初步测试,验证了其中部分功能。

这个版块不具有DAC,这是它在之后的信号处理过程中有道一定的限制。

■ 相关文献链接:

  • 淘宝购买到的《Python微控制器编程 从零开始》
  • pyBoard Mini
  • pyboard virtual comm port in fs mode 的解决问题
  • 安装 Thonny 软件环境开发PI Pico
  • PyBoard -STM32F405开发板
  • 基于PI Pico一些基础实验

pyBoard Mini从安装到简单测试相关推荐

  1. tomcat9安装及其简单测试

    tomcat 9安装及其简单测试 1.安装 安装yum install -y wget 在官网下载tomcat 和jdk wget 下载地址(进行下载) 将下载的压缩包放到/usr/local mv ...

  2. jdbc驱动安装以及简单测试

    最近又需要写jdbc啦,正好顺便把下载配置教程整理一下 教程分三个部分 下载jdbc驱动 配置jdbc到项目 简单连接一下数据库 1. 下载jdbc驱动 下载网址 (https://dev.mysql ...

  3. Redis、Redis+sentinel安装(Ubuntu 14.04下Redis安装及简单测试)

    Ubuntu下Redis安装两种安装方式: 1.apt-get方式 步骤: 以root权限登录,切换到/usr目录下. 接下来输入命令,apt-get install redis-server,如图: ...

  4. DHCP的安装到简单测试(tar方式)

    今天继续写一篇以tar方式安装DHCP服务器的文章.为什么用tar方式不用rpm,主要是因为我发现到网站上下载安装文件的时候,很难见到有最新rpm包的(等不及了,哈哈),况且网上有很多以rpm安装文章 ...

  5. 北太天元——首款国产科学计算软件安装及简单测试

    今天看到很多群里的小伙伴都在交流数模国赛,说是取消了matlab创新奖,增加了北太天元奖.这便引得大伙对这款软件展开了不小的讨论. 真假与否暂且未知,但是作为"独立自主研发的国产通用型科学计 ...

  6. Spark 安装配置简单测试

    简介 Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce ...

  7. scapy 安装及简单测试

    关于scapy Scapy的是一个强大的交互式数据包处理程序(使用python编写).它能够伪造或者解码大量的网络协议数据包,能够发送.捕捉.匹配请求和回复包等等.它可以很容易地处理一些典型操作,比如 ...

  8. Windows tesseract-OCR 的安装和简单测试

    前言 本机操作系统:win10 企业版 参考文章: tesseract 安装及使用 Win10下安装CMake3.14.2以及CMake使用教程 64位OCR:Tesseract4.1+leptoni ...

  9. RabbitMQ 安装和简单测试

    2019独角兽企业重金招聘Python工程师标准>>> 最近好多项目都有需要是用MQ的场景,以下是在安装过程记录的一些知识点,安装MQ需要先安装依赖环境,erlang和socat. ...

最新文章

  1. Mysql备机复制到主机_mysql主从复制的实现
  2. 图解MySQL数据库的安排和把持-1
  3. [GRYZ2015]快排练习
  4. DCMTK:类DcmSigned64bitVeryLong的测试程序
  5. MongoDB入门_MongoDB安装与配置
  6. Open images from USB camera on linux using V4L2 with OpenCV
  7. C#几个经常用到的字符串的截取
  8. 实时体积云渲染(地平线):二.Perlin噪声和Worley噪声
  9. java option_option 的经典属性
  10. 小程序“成语猜题”部分答案,总共28667题
  11. 【阅读笔记】Inverting Gradients -- How easy is it to break privacy in federated learning?
  12. Python爬虫实战案例讲解——爬虫爬取地铁线路图
  13. 工控modbus协议fuzz测试验证小结
  14. 人脸识别概述-opencv中文文档
  15. 什么是跨境电商ERP系统
  16. 修改hosts文件破解IDM和acrobat xI
  17. Android 图片弹跳动画
  18. 测控计算机三级有用吗,测控专业与计算机三级
  19. 拼多多新手卖家必备知识,你掌握了几点?
  20. (附源码)SSM医疗门诊管理系统JAVA计算机毕业设计项目

热门文章

  1. javaWeb学习总结(4)- HttpServletResponse
  2. 人会成为虚拟现实中的“机器人代码”吗?
  3. AndroidManifest.xml配置详解
  4. ES6解构赋值学习总结
  5. Lifecycle Activity和Fragment生命周期感知组件 LifecycleObserver MD
  6. [RK3288][Android6.0] 调试笔记 --- 软硬键盘同时使用【转】
  7. Linux下MySQL的几种安装方式
  8. 程序升级触发阿里云自身安全机制导致的莫名问题
  9. MySQL性能优化的21条最佳经验
  10. 奥鹏数据库应用系统设计下列关于php_南开19秋学期(1709、1803、1809、1903、1909)《数据库应用系统设计》在线作业【标准答案】668...