[TPYBoard - Micropython之会python就能做硬件 1] 运行第一个脚本——点亮LED

简介: 转载请注明:@小五义http://www.cnblogs.com/xiaowuyi  QQ群:64770604 会python就能做硬件! 一、TPYBoard V102开发板         TPYBoard V102开发板MCU使用的是stm32F405RG,存在一个sd卡插槽、4个leds,1个复位按钮,1个通用按钮以及2个I2C,2个SPI和5个USART接口。

转载请注明:@小五义http://www.cnblogs.com/xiaowuyi  QQ群:64770604

会python就能做硬件!

一、TPYBoard V102开发板

        TPYBoard V102开发板MCU使用的是stm32F405RG,存在一个sd卡插槽、4个leds,1个复位按钮,1个通用按钮以及2个I2C,2个SPI和5个USART接口。具体参数见下表:

STM32F405RG MCU。
168 MHz Cortex-M4 CPU with 32-bit hardware floating point。
1 MiB flash storage, 192 KiB RAM。
USB口, 支持 串口,通用存储,HID协议。
SD卡插槽。
MMA76603轴加速度计。
4 LEDs, 1复位按钮, 1通用按钮。
3.3V0.3A板载 LDO , 可从USB口或者外置电池供电。
实时时钟。
30个通用IO口,其中28个支持5V输入输出。
2个 SPI接口, 2个 CAN接口, 2个I2C接口, 5个USART接口。
14个 12-bit ADC引脚。
2个DAC 引脚。

        具体引脚如下:

       

具体实物图如下:

二、开发板的连接方法

       程序调试的连接方法:通过 USB 线连接开发板的microusb口与你的 PC 机(windows,mac,linux皆可)的usb口。当连接成功后开发板将上电和进入开机程序,绿色的 LED 灯应该在半秒或更少的时间内亮起,当其熄灭时意味着开机程序已完成。此时,电脑会出现一个u盘设备,容量97K左右。该u盘里存在4个文件:

       boot.py 启动文件,确定启动方式,类似引导文件

       main.py  主程序,boot.py默认引导启动的程序,也就是你的python代码主要是写在这里。

       pybcdc.inf 驱动程序,win7以上基本不需要驱动,个别精简系统需要安装驱动。如果确实需要安装,请参考http://www.micropython.net.cn/support/tutorial/222.html

       Readme.txt 

       使用的连接方法:使用时其实就是给该开发板供电,供电也是用microusb,直接将5V电源通过该口引入,如你可以使用充电宝、pc等具有供电能力的设备,利用usb连接供电。

三、第一个简单程序——点亮板载led3

  直接修改main.py文件,代码如下:

# main.py -- put your code here!
import pyb
pyb.LED(3).on()

  修改完,点击保存时,板载的第一个灯会亮起,此时一定要等灯熄灭以后,才能按rst键或者是拨出usb。灯亮的过程表示正在存储,因为此时是存在mcu的flash中,所以速度略慢一点。如果后面我们讲了如何使用tf卡后,就会发现不存在这个过程。

   重新给板子上电,此时会发现led3亮了。

四、让板载led3闪烁

将main.py改为以下代码:

led = pyb.LED(2)
while True:
   led.toggle()
   pyb.delay(1000)

  再次给板子通电,会发现,led3每秒闪一次。

   关键代码分析:

   pyb.LED这个类有三个函数:

      on( )表示开;

      off( ) 表示关;

      toggle( )表示闪烁

   pyb.delay( ) 仅是一个简单的毫秒级别的延时。pyb.delay(1000)表示1000毫秒。

五、点亮外壳led灯

    1、硬件连接方法

     取三个led灯(红绿黄)分别接在板子对应gpio为Y1、Y2、Y3的口上。如下图:

     2、代码

# main.py -- put your code here!
import pyb
led1 = pyb.Pin("Y1",pyb.Pin.OUT_PP)
led2 = pyb.Pin("Y2",pyb.Pin.OUT_PP)
led3 = pyb.Pin("Y3",pyb.Pin.OUT_PP)
While True:
     led1.value(1)
     led2.value(1)
     led3.value(1)

  3、实现效果

      三个led亮起。

讲到这里,后面大家就可以自己试着去做流水灯了。

目录
相关文章
|
2月前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
30 1
|
5天前
|
测试技术 Python
python运行集成测试
【4月更文挑战第22天】
7 1
|
6天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
15 3
|
6天前
|
XML 测试技术 持续交付
python运行集成测试
【4月更文挑战第21天】
15 2
|
18天前
|
Python
Pycharm运行提示(运行‘Python测试(00.py内)‘(u)
Pycharm运行提示(运行‘Python测试(00.py内)‘(u)
|
25天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
1月前
|
数据采集 Java Python
python并发编程:Python在FastAPI服务中使用多进程池加速程序运行
python并发编程:Python在FastAPI服务中使用多进程池加速程序运行
53 0
|
1月前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
1月前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
|
2月前
|
缓存 NoSQL Redis
在Python Web开发过程中:数据库与缓存,除了Redis是内存数据库以外,还有哪些原因使其运行速度快?
Redis在Python Web开发中快速的原因:内存存储、多样化数据结构(如字符串、哈希、列表等)简化数据模型,单线程处理提高效率,结合非阻塞I/O;RDB和AOF提供持久化保障;TCP+二进制协议减少网络开销;管道技术提升通信效率。这些设计使Redis能高效处理高并发请求。
19 3