8789|8

1万

帖子

25

TA的资源

版主

楼主
 

【MicroPython】使用指南 [复制链接]

 
当第一次使用装载了MicroPython的pyboard时,我们只要一根安卓手机的数据线(macroUSB)就足够了。当连接了macroUSB线后,在windows中会自动安装移动磁盘驱动和虚拟串口驱动。移动磁盘的驱动系统自带了,可以自动识别出来,而虚拟串口的驱动可以在这个移动磁盘中找到。在Linux和MacOS下,无需另外安装驱动。

移动磁盘中默认会有4个文件,它们分别是:
  • main.py,开机自动运行文件,可以将自己的代码放在里面
  • boot.py,开机引到文件,由它加载main.py
  • pybcdc.inf,windows下的虚拟串口驱动文件
  • readme.txt,简要说明



我们可以在main.py中增加代码,加入需要开机自动完成的功能。EEWORLD版的pyboard中,我在main.py中增加了一小段代码,用于LED自检,然后用LED3(橙色)做呼吸灯。
  1. from pyb import Timer

  2. # LED loop test
  3. def LED_loop_test():
  4.     for i in range(1, 5):
  5.         pyb.LED(i).on()
  6.         pyb.delay(100)
  7.         pyb.LED(i).off()
  8.         pyb.delay(100)

  9. LED_loop_test()

  10. # LED3 breathing lamp
  11. ia = 1
  12. da = 1
  13. def fa(t):
  14.     global ia, da
  15.     if (ia==0)or(ia==255):
  16.         da=256-da
  17.     ia=(ia+da)%256
  18.     pyb.LED(3).intensity(ia)

  19. tm=Timer(1, freq=200, callback=fa)
复制代码

连上开发板后,我们需要一个支持串口功能终端软件,推荐使用puttykitty和winxp下的超级终端,它们都可以很好的支持micropython。putty和kitty还支持多种操作系统。

设置串口波特率为115200,连接到pyboard,可以看到提示画面,可以直接在命令行中输入指令和代码,运行程序,和在标准的python软件环境下一样,可以输入help()查看简单的帮助。

上下键可以切换历史命令,鼠标右键可以复制剪贴板的内容。按下Ctrl+C可以中止当前程序,Ctrl+D软复位,通常情况下不要按pyboard板子上的复位键,因为这样会丢失串口连接,使终端软件无法连接到开发板。

如果程序较长和复杂,在命令行方式编写就不方便,可以用其他编辑器编写文件,然后复制到pyboard的磁盘中在运行。复制文件后一定要安全退出磁盘,不然pyboard上的文件系统很可能会被破坏,需要进行恢复出厂设置。



对于micropython的初学者,如果对python语言还不熟悉的,需要先看看python的基本教程,然后在开始。python比C语言简单一些,通常花一两天掌握初步的语法就可以开始玩了。如果对python比较了解,那么可以直接开始,看看LED、按键、定时器、串口的用法,很快就可以掌握基本方法。

MicroPython的作者非常勤奋,软件升级也很快。我在调试和烧写固件时,版本是pybv10-2016-03-28-v1.6-310-g1937953.dfu,而写这个帖子的时候,固件已经升级到pybv10-2016-04-07-v1.6-379-g5e7fa7c.dfu。如果需要升级固件,可以参考一下教程中的【MicroPython】怎样升级固件。如果是在Linux下,参考这里 https://github.com/micropython/micropython/wiki/Pyboard-Firmware-Update。如果你的pyboard没有正常运行,可以先尝试恢复出厂设置,如果连移动磁盘都无法识别出来,可以重新下载一下固件。

pyboard支持TF卡,如果没有插入TF卡,系统是从内部flash启动;如果插入TF卡并能识别出来,就将TF卡做为默认的磁盘。pyboard使用SDIO方式驱动TF卡,速度比SPI方式快很多。可以将pyboard做为TF读卡器,虽然速度不是很快(约450K/s),应急还是不错的。

硬件上,EEWORLD版本的pyboard是以官方的pyboard v1.0为基础修改而来,具体的改进和一些问题请参考《EEWORLD版pyboard说明》。

使用过程中我们都会遇到一些问题,很多问题可以在 【MicroPython】教程 中找到解决方法。如果没有找到的,可以提出来大家一起讨论。










最新回复

请问micropython的软件sp或是硬件spi,怎么都没有配置片选引脚的参数  详情 回复 发表于 2018-5-15 11:25
点赞 关注(1)
 
 

回复
举报

81

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
这个和之前网上原版的板子电路设计都一样,完全兼容吗?

点评

和pyboard v1.0是兼容的,除了没有加速度传感器MMA7660。GPIO、LED、按键都是完全一样的。  详情 回复 发表于 2016-4-7 23:59
 
 
 

回复

1万

帖子

25

TA的资源

版主

板凳
 
windworld 发表于 2016-4-7 23:55
这个和之前网上原版的板子电路设计都一样,完全兼容吗?

和pyboard v1.0是兼容的,除了没有加速度传感器MMA7660。GPIO、LED、按键都是完全一样的。

点评

嗯嗯 明白了。下载程序采用什么方式呢?  详情 回复 发表于 2016-4-8 12:12
 
 
 

回复

6069

帖子

4

TA的资源

版主

4
 
谢谢
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

5
 
dcexpert 发表于 2016-4-7 23:59
和pyboard v1.0是兼容的,除了没有加速度传感器MMA7660。GPIO、LED、按键都是完全一样的。

嗯嗯 明白了。下载程序采用什么方式呢?

点评

推荐使用USB,通过DFU模式下载。参考一下教程中的写入固件那一篇。  详情 回复 发表于 2016-4-8 12:16
 
 
 

回复

1万

帖子

25

TA的资源

版主

6
 
windworld 发表于 2016-4-8 12:12
嗯嗯 明白了。下载程序采用什么方式呢?

推荐使用USB,通过DFU模式下载。参考一下教程中的写入固件那一篇。

点评

好的 我看下,谢谢了  详情 回复 发表于 2016-4-8 12:17
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

7
 
dcexpert 发表于 2016-4-8 12:16
推荐使用USB,通过DFU模式下载。参考一下教程中的写入固件那一篇。

好的 我看下,谢谢了
 
 
 

回复

5

帖子

0

TA的资源

一粒金砂(中级)

8
 
请问micropython的软件sp或是硬件spi,怎么都没有配置片选引脚的参数

点评

目前SPI还不支持硬件片选功能,需要单独设置一个引脚做CS。这样的速度肯定没有硬件片选快,但是好处是更加灵活。  详情 回复 发表于 2018-5-15 17:26
 
 
 

回复

1万

帖子

25

TA的资源

版主

9
 
balabalaxiao 发表于 2018-5-15 11:25
请问micropython的软件sp或是硬件spi,怎么都没有配置片选引脚的参数

目前SPI还不支持硬件片选功能,需要单独设置一个引脚做CS。这样的速度肯定没有硬件片选快,但是好处是更加灵活。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表