linux和micropython的关系

python真得使用越来越广泛了,记得我在6年前学习python时,当时还只是把它做为一个脚本语言来看,没事学着大神们搞搞网络安全的相关知识。然后,几年用python的应用遍地都是,让人更加吃惊的是,python都可以用于硬件开发了。说到这里,很多人可能想到的是树莓派、香蕉派,因为支持linux系统,可以进行硬件编程,同时带了rpi等python库,让你可以用python控制硬件的gpio口等。实现上,python已经完全可以脱离系统,直接进行单片机的开发了。
MicroPython是在单片机上可以跑的Python,也就是说,你可以通过Python脚本语言开发单片机程序。它遵守MIT协议开源,被授权人拥有复制、修改、发行和再授权的权利。由剑桥大学的理论物理学家乔治•达明设计。和Arduino类似,但MicroPython更强大。它的语法跟Python3基本一致,拥有自家的解析器、编译器、 虚拟机和类库等。目前它支持基于32-bit的ARM处理器,比如STM32F405、STM32f407等,也就是说ARM处理器STM32F405上直接可运行Python语言,用Python语言来控制单片机。当然还有大名鼎鼎的esp32单片机
1 Micropython开发板
Micropython从诞生的那一刻起,就被很多人关注,相应的开发板也迎运而生。
pyboard官方版
当前,支持的开发板有很多,如官方的pyboard,已经有pybv10和pybv11两个版本。该版本又被称为micropython的初型,以stm32f405为mcu,1024KiB flash ROM and 192KiB RAM,带有一个tf卡槽。官方网站为www.micropython.org

1.2 tpyboard国内版

Tpyboard几乎是国内最早支持micropython的专用开发板,官方网站为www.tpyboard.com。据了解已有基本版V0X,wifi版V202,lan版V201以及GPRS和GPS版V70X等。同时,该网站还发布了较为完整的tpyboard和micropython中文文档(http://docs.tpyboard.com/zh/latest/

V0X

支持wifi的esp8266版

支持lan版本

支持gprs和gps版本

1.3 openmv

随着micropython的发展,一些专用开发板出现,如openmv,带摄像头的支持micropython的开发板,此开发板采用的是STM32f7系列的mcu,对图像的处理能力更强,你可以用几句python代码就能完成一个可控制的摄像头。

openmv

1.4 lopy

lopy是基于micropyhton支持LoRa, WiFi 和 Bluetooth 三种无线方式的开发板,它可以用于微型无线网关、报警器、机器人控制等,支持arduino IDE、Pymakr IDE(没有找到是什么软件),以及支持Microsoft Azure的云服务。

lopy

     除了以上版本外,当前还有pycom等其它版本,这里就不一一描述了。

2、micropython能干什么

既然micropython是用Python语言能来控制单片机,那么单片机能做什么基本能反映出它能做什么。还是让我们一起看一下单片机能干什么?

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:

2.1 智能仪器

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。   例如精密的测量设备(电压表、功率计,示波器,各种分析仪)。

2.2 工业控制

单片机具有体积小、控制功能强、功耗低、环境适应能力强、扩展灵活和使用方便等优点,用单片机可以构成形式多样的控制系统、数据采集系统、通信系统、信号检测系统、无线感知系统、测控系统、机器人等应用控制系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。

2.3 家用电器

现在的家用电器广泛采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备和白色家电等。

2.4 网络和通信

现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。

2.5 医用设备领域

单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。

2.6 模块化系统

某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。   在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。

2.7 汽车电子

单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN总线的汽车发动机智能电子控制器、GPS导航系统、abs防抱死系统、制动系统、胎压检测等。

2.8 此外,单片机在工商、金融、科研、教育、电力、通信、物流和国防航空航天等领域都有着十分广泛的用途。

3 向世界说“Hello world”(以tpyboard为例)

3.1 基本的连接方法

程序调试的连接方法:通过 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连接供电。

3.2 点亮板载LED 向世界说”Hello“

学习语言首先要做的就是学会hello world,同样学习单片机首先要做的就是点亮第一盏灯。这里我们来看看如何点亮tpyboard板子上本身带的灯,板子上共有4个LED,分别从里到外是LED1、LED2、LED3、LED4。这里我们以点亮LED3为例。直接修改main.py文件,代码如下:

main.py -- put your code here!

import pyb
pyb.LED(3).on()

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,176评论 5 469
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,190评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,232评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,953评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,879评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,177评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,626评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,295评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,436评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,365评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,414评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,096评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,685评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,771评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,987评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,438评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,032评论 2 341

推荐阅读更多精彩内容