我是靠谱客的博主 背后小甜瓜,最近开发中收集的这篇文章主要介绍micropython开发教程 1 - 开发工具基础配置写在前面环境配置基础,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

写在前面

人生苦短,我用Python!
Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。

Web 和 Internet开发用Python
科学计算和统计用Python
人工智能用Python
桌面界面开发用Python
软件开发用Python
后端开发用Python
网络爬虫用Python

MicroPython 是Python 3编程语言的一种精简而高效的实现,它包含Python标准库的一个小子集,并且经过优化,可以在微控制器和受限环境中运行。MicroPython包含了许多高级特性,比如交互式提示符、任意精确整数、闭包、列表理解、生成器、异常处理等等。但是它足够紧凑,可以在256k的代码空间和16k的RAM中运行。MicroPython的目标是尽可能与普通Python兼容,允许您轻松地将代码从桌面转移到微控制器或嵌入式系统。

本节将介绍micropython编译开发使用的工具,为后续移植micropython做准备,让python的优点进入到单片机,进入到嵌入式程序开发层次!

环境配置基础

首先笔者使用的实验环境为WIN10+Ubuntu16.04(双系统、或两台独立电脑,安装了python2.7 、python3.5)。所用到的工具有STM32 ST-LINK Utility v4.2.0,DfuSe_Demo_V3.0.5,PUTTY,TCP&UDP。

1.Ubuntu环境配置

系统镜像下载(清华源):https://mirrors.tuna.tsinghua.edu.cn/
将下载好的源解压到U盘,即可制作成U盘安装启动盘,进行系统安装。

这里不做详细介绍未安装过系统的朋友可参考以下博文

U盘启动盘制作

2.win10上准备工具

STM32 ST-LINK Utility v4.2.0工具下载:https://pan.baidu.com/s/16N5s3loSxiA7-G4AwJDAuQ
提取码:533z
Putty工具下载:https://www.putty.org/
DfuSe_Demo_V3.0.5工具下载:https://pan.baidu.com/s/1407zfN-ZDLfdJJItjYL3SQ
提取码:vytl

3.源码下载与编译

在Ubuntu系统下,确保电脑能连上网络

3.1 安装git

sudo apt-get install git

在这里插入图片描述

3.2 下载microPython源码(耐心等待,速度与网络速度有关)

git clone https://github.com/micropython/micropython

在这里插入图片描述
注:可以指定在文件目录下打开终端,将源码即下载到该文件目录下
下载完成后可以在指定的文件夹目录下看到多了一个micropython文件夹:
在这里插入图片描述
打开micropython文件夹(此路经为micropython根目录):

在这里插入图片描述简要介绍一下三个重要的目录,其他的请自行查看

mpy-cross/
相当于一个交叉编译器,把.py文件编译成.mpy文件,是个官方的工具
,编译整个项目前请先编译mpy-cross

lib/
该目录下存放各种库文件,比如后面要用到的STM32HAL库

ports/
硬件接口,与平台相关,支持stm32,esp系列等,移植时重点关注该目录

在ports/stm32/boards下看到micropython支持的处理器或开发板:
在这里插入图片描述先不要急着编译,还要把库文件下载下来:
进入micropython根目录
在这里插入图片描述

git init
git submodule update --init #跟网络速度有关,耐心等待完成

在这里插入图片描述跟网络速度有关,耐心等待完成,笔者电脑之前已初始化过,很快便完成了

3.3 编译

首先编译之前需要安装gcc和gcc-arm-none-eabi交叉编译器

sudo apt-get install gcc
sudo apt-get install gcc-arm-none-eabi

在这里插入图片描述

编译 mpy-cross
进入mpy-cross目录,直接make
在这里插入图片描述

cd mpy-cross/
make

静静等待编译完成就好了

进入stm32目录下编译执行,这里以编译PYBV11为例,生成我们所需要的固件DFU或者HEX形式的:
从micropython根目录输入以下命令进入

cd ports/stm32/
make BOARD=PYBV11

在这里插入图片描述
BOARD=PYBV11是用于指定要编译的开发板或处理器

make BOARD=PYBV11 PYTHON=python2 

PYTHON=python2用于指定系统python的版本的,如果安装的是python3,该参数可以省略(见redme.md文件)。笔者系统是Python3,所以省略了该参数

#########################python版本设置,此步为另外扩展内容,正常操作不必执行
注:如果你也和笔者一样安装有python2.7 、python3.5两个版本,可以用以下命令设置系统环境python版本

python --version #查看系统默认python版本
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
update-alternatives --list python #列出系统可用的python代替版本

--install 选项使用了多个参数用于创建符号链接。最后一个参数指定了此选项的优先级,如果我们没有手动来设置替代选项,那么具有最高优先级的选项就会被选中。这个例子中,我们为 /usr/bin/python3.5 设置的优先级为2,所以update-alternatives 命令会自动将它设置为默认 Python 版本
可参考:https://blog.csdn.net/fang_chuan/article/details/60958329
###################################python版本设置

在这里插入图片描述
编译成功将生成firmware.dfufirmware.hex这两个可用固件。

可以在stm32文件夹目录下新生成了一个build-PYBV11文件夹
在这里插入图片描述

感谢阅读,我是智科创玩,希望文章能够解决您的问题。
事为之,须极致!

最后

以上就是背后小甜瓜为你收集整理的micropython开发教程 1 - 开发工具基础配置写在前面环境配置基础的全部内容,希望文章能够帮你解决micropython开发教程 1 - 开发工具基础配置写在前面环境配置基础所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部