shaoziyang 发表于 2016-4-12 12:44:15

在STM32F746G-Disco开发板上玩MicroPython

MicroPython是个不错的方式,用python开发单片机程序,可以不用安装复杂的开发工具,用文本编辑器或者串口终端,就可以编程和控制。而STM32F746Disco开发板是一个不错的开发板,M7内核、大屏幕、大容量Flash和RAM,扩展性强。如果将STM32F746Disco和MicroPython结合起来一定非常不错。下面简单介绍在STM32F746Disco开发板上使用MicroPython的方法。



[*]首先要下载并安装GNU Tools for ARM Embedded Processors。
http://launchpad.net/gcc-arm-embedded
[*]下载MicroPython的源码,micropython-master.zip。
[*]展开MicroPython源码,打开 stmhal\ 目录
    [*]在命令行中输入
    make BOARD=STM32F746Disco
    [*] 如果编译出错,说明编译器没有加入系统路径,可以手工修过makefile文件。修改 CROSS_COMPILE = arm-none-eabi- 这一行,在 arm-none-eabi- 前添加编译器的实际路径,注意路径需要使用右斜杠
    [*]将编译后产生的hex文件用STM32 ST-LINK Utility下载到开发板。
    [*]使用macroUSB线连接到STM746Disco开发板的USB_FS上。如果不连接STlink,那么需要改变反面的电源跳线。
    [*]第一次在windows上使用时,会自动安装驱动,包括PYBFlash移动磁盘和虚拟串口,虚拟串口驱动可以在自动安装的PYBFlash磁盘上找到。
    [*]打开一个串口终端,推荐使用kitty或者xshell个人版,设置波特率为115200。

如果可以看到python的提示,就可以开始玩micropython了。
>>> MicroPython v1.6 on 2016-04-03; F7DISC with STM32F746
Type "help()" for more information.
>>>



先试试简单的计算:
>>> 1+2
3
>>> print(3*4)
12
>>> x=12
>>> x*3
36
>>>



控制LED,输入下面代码后,LED将闪10次。(只需要输入代码部分,>>>和...是系统自动产生的)
>>> for i in range(10):
...   pyb.LED(1).toggle()
...   pyb.delay(100)



用按键控制LED
>>> sw=pyb.Switch()
>>> while 1:
...   if sw():
...         pyb.LED(1).on()
...   else:
...         pyb.LED(1).off()


还可以控制定时器、I2C、串口等等,更多内容等以后在和大家进行讨论了。
如果觉得编译比较麻烦,可以直接将我编译好的文件下载下去。
**** Hidden Message *****

犹豫的大三 发表于 2016-4-13 08:40:47

这个怎么玩

creep 发表于 2016-4-12 14:19:53

玩Python的越来越多了!

chendiand 发表于 2016-4-12 18:38:09

顶一个e

sacq12 发表于 2016-4-12 19:26:26

看看。。。。。。

yu0405jie 发表于 2016-4-12 19:40:36

原来有大神在单片机里玩Lua,没想到还有python

yu0405jie 发表于 2016-4-12 19:52:30

还有这个怎么写驱动啊

shaoziyang 发表于 2016-4-12 20:19:36

yu0405jie 发表于 2016-4-12 19:40
原来有大神在单片机里玩Lua,没想到还有python

lua玩的人太少,大家还是一起来玩python吧

suoma 发表于 2016-4-12 21:42:14

谢谢分享学习一下

lkl0305 发表于 2016-4-12 22:03:36

不错,来学习一下
页: [1] 2 3 4 5 6 7
查看完整版本: 在STM32F746G-Disco开发板上玩MicroPython