MicroPython:STM32 上 的 Python 开发

简介:

虽然Python在国外是一门非常火的语言,在黑客界更是赫赫有名,然而中国的大学却极少开设 Python 课程,故而国内 Python 程序员多属自学。而一个没有MCU编程经验的初学者,要想让芯片跑起来,出现问题有时候要对照一两千页的英文文档来排查,这也绝非一天两天可以打下坚实的基础。

Python是一门适合初学者的语言

相比于目前不少主流的编程语言,Python拥有更好的可读性,因此非常适合初学者。Python本身自带的各种模块加上丰富的第三方模块,免去了很多“重复造轮子”的工作,节省了不少开发时间。Python的配置环境也不复杂,mac和linux都内置了python。Python的这一特点也让国内不少高校开始选择它作为程序设计课程来教授。

MicroPython:跑在微控制器上的Python

MicroPython顾名思义就是可以跑在微处理器上面的python。通过Python语言只需要用文本编辑器打开main.py文件。写几行代码,保存一下。单片机就可以跑起来。MicroPython用起来很简单,借助Micro Python,用户完全可以通过Python脚本语言实现硬件底层的访问和控制,比如说控制LED灯泡、LCD显示器、读取电压、控制电机、访问SD卡等。

MicroPython的STM32分支简介

MicroPython中功能最强,速度最快,资源最丰富的是STM32系列,支持的芯片型号最多,适应性最好,它的库也是最全面的。目前STM32分支支持STM32F4/F7/L4系列下的数十种型号芯片和开发板,是DIY的最佳选择,比如说STM32F405。也就是说ARM处理器STM32F405上直接可运行Python语言,Python语言来控制单片机。

应用范围:

l  教育、学习

l  电子竞赛

l  机器人

l  智能硬件

l  物联网开发

l  快速原型设计

l  创客、DIYer 

Python可以做哪些事情?
Python可以开发计算机桌面软件,例如pyqt。不仅可以开发windows还可以开发linux

Python可以用来做网站后台,豆瓣网就是用python做的

Python可以写网络爬虫,抓取网络信息。

Python 开发游戏。

Python 现在可以作为创客开发语言,树莓派,stm32……

一款专用的STM32+Python开发板

TPYBoard开发板是一款由国内TurnipSmart公司遵照MicroPython的MIT协议研发的一款MicroPython开发板,搭载STM32F405芯片。TPYBoard在保持原来所有硬件特点的基础上增加了SWD接口,方便烧写TPYBoard的固件(兼容MicroPython的固件)。它能运行Micro Python,是Python语言的一种精益和快速的实现,将Python经过优化运行在微控制器上。使用常规的Python 3.0,你可以毫不费力地运行你的下一个DIY项目。

TPYBoard开发板相比于其他微控制器板子的优势在哪?

相比于目前非常火爆的Arduino,TPYBoard更强、低能耗、易编程。并且PC端不需要编译器。相比于树莓派,TPYBoard更小巧、更简单、更便宜。

当然MicroPython支持多种开发板,除了官方标准的基于STM32F405RGT6,还支持Espruino Pico、STM32F4 Discovery(STM32F407)等开发板。

文章转载自 开源中国社区 [http://www.oschina.net]

目录
相关文章
|
10天前
|
算法 测试技术 开发者
性能优化与代码审查:提升Python开发效率
【4月更文挑战第9天】本文强调了Python开发中性能优化和代码审查的重要性。性能优化包括选择合适数据结构、使用生成器和避免全局变量,而代码审查涉及遵循编码规范、使用静态代码分析工具和编写单元测试。这些实践能提升代码效率和可维护性,促进团队协作。
|
2月前
|
前端开发 关系型数据库 MySQL
基于python+django+vue.js开发的社区养老管理系统
基于python+django+vue.js开发的社区养老管理系统
92 1
|
2月前
|
机器学习/深度学习 设计模式 Java
Python潮流周刊#10:Twitter 的强敌 Threads 是用 Python 开发的!
Python潮流周刊#10:Twitter 的强敌 Threads 是用 Python 开发的!
28 2
|
4天前
|
前端开发 数据挖掘 API
使用Python中的Flask框架进行Web应用开发
【4月更文挑战第15天】在Python的Web开发领域,Flask是一个备受欢迎的轻量级Web框架。它简洁、灵活且易于扩展,使得开发者能够快速地构建出高质量的Web应用。本文将深入探讨Flask框架的核心特性、使用方法以及在实际开发中的应用。
|
9天前
|
JavaScript 前端开发 Docker
全栈开发实战:结合Python、Vue和Docker进行部署
【4月更文挑战第10天】本文介绍了如何使用Python、Vue.js和Docker进行全栈开发和部署。Python搭配Flask创建后端API,Vue.js构建前端界面,Docker负责应用的容器化部署。通过编写Dockerfile,将Python应用构建成Docker镜像并运行,前端部分使用Vue CLI创建项目并与后端交互。最后,通过Nginx和另一个Dockerfile部署前端应用。这种组合提升了开发效率,保证了应用的可维护性和扩展性,适合不同规模的企业使用。
|
16天前
|
前端开发 测试技术 数据库
【python】为什么使用python Django开发网站这么火?
【python】为什么使用python Django开发网站这么火?
|
30天前
|
SQL 关系型数据库 API
Star 4.7k!高效SQL Parser!纯Python开发!自称目前最快的纯Python SQL解析器!
Star 4.7k!高效SQL Parser!纯Python开发!自称目前最快的纯Python SQL解析器!
|
1月前
|
前端开发 API 网络架构
Python 如何开发出RESTful Web接口,DRF框架助力灵活实现!
Python 如何开发出RESTful Web接口,DRF框架助力灵活实现!
|
1月前
|
应用服务中间件 nginx Docker
简述 Docker 在 Python WEB 开发中的作用。
【2月更文挑战第27天】【2月更文挑战第95篇】简述 Docker 在 Python WEB 开发中的作用。
|
1月前
|
安全 测试技术 API
请描述在 Python WEB 开发中常用的测试方法。
请描述在 Python WEB 开发中常用的测试方法。
16 0