你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

让Arduino IDE开始支持你的STM32 arm芯片

[复制链接]
Paderboy 发布时间:2015-5-14 20:53

: n5 S3 Q. k! Z  \& i' {2 p[Arduino STM32] 03:OLED 驱动/ E+ y6 l, a) G# V( J

6 M  a5 l  j/ P, p# p# BArduino移植笔记,让Nucleo在Arduino下工作
# x% [6 M4 H4 q, A
0 `! i; H& a- R( A8 q" ^; g0 C$ B$ h# R
STM32 芯片的性价比就不用说了。几乎甚至低于Arduino板子上用的AVR单片机。
& o. q+ A& C. @) U7 ^- K: D8 b+ z6 Y  t# F
所以搞了个Arduino IDE的core文件,从此可以让Arduino IDE支持STM32F103的中密度、高密度全系列芯片(其它型号稍作改动也可支持)。
4 R, h5 O7 v( m8 U( y5 B7 V说明:只支持Arduino IDE 1.5以后的版本。
2 s! |1 O/ K4 c8 y7 C
( M1 |( o2 w1 O开源
* V2 a1 P$ }# A( `$ `" |( Gcore文件代码是开源的,欢迎大家使用,本人水平有限,也希望大家一起来开发优化,以及对第三方库的移植。
5 F* L) F) \" s# b) T6 {0 W
% x8 V" o# K! o源码地址:http://github.com/MakerLabMe/MakerLabBoard* V) a6 ]2 `( g4 J0 v
3 ^/ }4 e6 d  L# f; {! r4 o
如何使用
3 R9 h7 K) R5 o6 A
; U) B- w' O9 r# |5 z1、下载Arduino IDE

Arduino IDE是非常棒的编程工具,我没有必要重新创造轮子,所以下载官方Arduino IDE(`需要1.5版本以后)就可以,并且原生支持中文。下载地址:
& R! g3 q% x+ _9 [1 o" Z& U. xwindows版本:http://downloads.arduino.cc/arduino-1.5.5-windows.exe. z* F( ~" m# r
Mac OS版本:http://downloads.arduino.cc/arduino-1.5.5-macosx.zip
3 v( Y% Q; i. klinux版本:32位64位

下载后安装即可。

2、下载STM32 Core文件及安装

为了让Arduino IDE支持STM32单片机及开发板,你需要下载由MakerLab开发的STM32文件。Github地址:& ]9 T( G+ J. }. f5 p! ~: g- Q
http://github.com/MakerLabMe/MakerLabBoard

http://github.com/MakerLabMe/STM32_Arduino_Cores
- n, w( R+ Y# r- W8 T7 p

直接下载zip压缩包
) B% N5 p1 Z% ~1 L& }2 ?4 t" E( J3 J首先找到Arduino的安装目录,windows系统的默认安装目录是C:\Program Files\Arduino,然后依次进入hardware》arduino目录;
6 q" b- u9 Y" b) J" EMac系统下是在Applications目录下或其它你安装的位置下,名称位Arduino.app的程序,然后右键点击该程序,选择Show Package Contents弹出新的目录,再一次进入Contents/Resources/Java/hardware/arduino目录;; C( H0 @; U+ t2 l' O9 w# A
然后下载ZIP压缩包( http://github.com/MakerLabMe/MakerLabBoard/archive/master.zip ),解压到上面提到的目录中,文件名称必须是stm32,安装完成后的目录结构应该是:6 R" D. o1 d' o; `" y0 ?9 J; B3 O

hardware/arduino目录下包含三个文件夹,分别是:avr 、sam和stm32,其中stm32文件夹内就是刚刚解压的core文件。 如图:
) s$ d) t" E& X) E' q8 Z3 e1 ~
# S6 }" `( M  t- p! p6 k/ d使用Git安装
8 u4 [+ y- ]+ X; i, `0 m( x: N#首先来到Arduino的安装目录然后git clone:   hardware/arduino > git clone http://github.com/MakerLabMe/MakerLabBoard.git stm32hardware/arduino > cd stm32#完成后,stm32文件夹内应该是这样的:   hardware/arduino/stm32 > lsfirmwares   programmers.txt systemboards.txt  libraries   readme.md   variantscores       platform.txt    sloadhost    sloadhost.exe

如果操作正确,打开或重启Arudino IDE后你就可以看到在Tools(工具)->Boards(板)菜单下多了几个栏目,类似于下图,IDE在各系统下的显示有所不同:
3 I+ n- o  }4 C( Y

如果你可以看到多出的几个板子类型(板子数量和名称可能有差异),说明安装成功。可以开始你的编程之旅了。

下面的板子是MakerLab Sun R1板子,板子接口/IO与Arduino 的Mega及Due板子兼容。
" x% P# X5 e9 b8 }% @  V7 w点击图片查看高清大图。STduino Sun Pinout.

另一个板子,与Uno尺寸兼容5 _! W( K  c3 R2 d4 T& r' z8 G
+ ?8 V4 G; k/ D9 w0 M* _8 B

. L* l2 Y; `  m0 M( Q# h
' R3 ]9 E" G: s* P" z/ w实际板子图片,oops,一条线忘了布6 `0 M+ q& j! u  F
, K4 r7 s1 h5 A; d7 g5 c; ~
下面是简单Blink演示& r8 i. R- @  W7 m. N9 B

' [  \$ e' b$ T. V/ h+ Q
打开Arduino IDE选择MakerLab板子类型,如图:" h' u' b% R7 Y2 A

3 F3 C3 B( S3 p; I' x选择板子所在的串口,如图:
) D+ w* k/ P, T, q5 E0 n! i1 y: b* ]# [& S( R* c
打开Arduino IDE自带的例子,Blink(闪烁LED),如图:* u* c$ ~, s% s! g
, c* j, c( I3 Y2 ~$ t& y
无需做任何编辑,直接点击=>向右箭头上传到板子,如图正在上传中:
) Y# j4 Q& B( f* |) S% {# E2 Q$ K% |& t
; G3 N- K+ o* l5 P' E! }上传完成,没有任何错误,如果有错误根据错误信息排查,一般为串口号不对,或STM32 core文件放置错误。
* J$ s! |1 K2 _2 w/ z
$ V8 t  q* g. a$ s3 s看板子上的LED已经开始闪烁了,Oh,yeah!!2 s7 z5 E; ~$ ~6 E8 J, b
4 D  G+ {! ~! H0 C  `$ r2 B
收藏 评论14 发布时间:2015-5-14 20:53

举报

14个回答
lkl0305 回答时间:2015-5-15 00:41:26
多谢分享,学习
aoxiangwode2008 回答时间:2015-5-15 08:25:44
很好,学习了。0 O! j2 P" t0 ?+ `
wyxy163@126.com 回答时间:2015-5-15 09:11:35
提示: 作者被禁止或删除 内容自动屏蔽
sfee2002 回答时间:2015-5-15 09:39:02
感觉还行学习一下
Paderboy 回答时间:2015-5-15 10:01:02
数码小叶 发表于 2015-5-15 09:11
; ~+ n3 g  ?) v. b% d. H. {学习了,移植个072的吧,大家手里都有
$ H0 k" R! x* E& W' M  b
论坛里有高手已经在移植https://www.stmcu.org.cn/module/ ... p;highlight=arduino。。。 我是个新手,没那个能力。。。。
lcdi 回答时间:2015-5-15 10:49:48
回头抽时间试试,早就想看看arduino的魅力了,现在stm32也有了,编程就更容易了~
Paderboy 回答时间:2015-5-15 16:19:19
lcdi 发表于 2015-5-15 10:497 D- j) r5 J1 U- j) }; Q5 w; s
回头抽时间试试,早就想看看arduino的魅力了,现在stm32也有了,编程就更容易了~ ...
9 U- P9 H  t9 p6 A* s7 j
Arduino 可以玩玩,确实简单很多
为什么是EEFOCUS小白 回答时间:2015-5-15 16:19:51
谢谢分享
wz002 回答时间:2015-5-15 16:24:40
mark0668 回答时间:2015-5-16 00:21:02
谢谢分享
Lovely_STM32 回答时间:2015-5-16 07:50:12
有心!谢谢!
JackieLaura 回答时间:2015-8-11 10:25:01
不错的资料,谢谢楼主分享
gdyn2 回答时间:2017-8-22 12:35:56
多谢分享
無痕无痕 回答时间:2020-9-14 16:35:31
大神,请接受我的膜拜

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版