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

在STM32F4 Discovery上用.net程序  

[复制链接]
nick_zhang 发布时间:2015-5-27 13:29
本帖最后由 nick_zhang 于 2015-5-27 13:33 编辑
" S8 f8 o" A+ t
* b, F9 U( \2 v' Y1 k说是.net,其实是.NET MicroFramework,一个给嵌入式设备用的精简版,好处是不需要操作系统,可直接在单片机上运行
! F9 w2 U; W7 X9 a& z6 w8 m* z% ?2 a你需要准备下面几个
& U2 z) J1 l: |: F1.当然,一块STM32F4 Discovery9 [" R  i/ z# T  v! C3 K
2.usb micro和usb mini线7 _! P, y6 x) k3 i  J! L( k
3.STM32 ST-LINK Utility 用来写bootloader到板上
$ x4 C2 N0 L, O6 N4. 下载 stm32f4discovery.zip and  STM32_WinUSB_drivers_(for_evaluation_purposes_only).ziphttp://netmf4stm32.codeplex.com/1 N6 {6 H2 V5 Y7 |: c
5.visual studio 2010, 2012?& M% |4 C3 e. N- c# A# F1 S: x
6. .NET MicroFramework SDK http://netmf.codeplex.com& ^2 t# n6 k5 I
装好所有软件,连接 usb mini线到电脑,接上F45 k7 }. E8 P! o4 w
打开STM32 ST-LINK Utility,它会安装板的驱动,并自动升级bootloader(联网),擦除所有东西
# }3 V' |7 ?; D, I2 C& H* n: M5 X8 s3 Q$ ^: O- T; M
解压 stm32f4discovery.zip 有三个文件: Tinybooter.hex, ER_Flash.hex and ER_Config.hex.5 h7 y2 ~3 |- V, Y# r: Q
, G, D" f1 [& w
选择Tinybooter.hex写入, u( f8 S9 T- @# B/ i4 N* e
1 `0 L8 L1 U0 V. q; a
1 T4 p( x" T3 A5 O8 c
. `6 s6 _0 I& I  n; r* r8 B9 t

) R, _. x; f, m1 h" z2 r4 c+ S2 |3 @
收藏 4 评论50 发布时间:2015-5-27 13:29

举报

50个回答
moyanming2013 回答时间:2015-5-30 16:53:38
moyanming2013 发表于 2015-5-30 16:34
. `; }# x7 C; z其实实时嵌入式用C++都费劲(程序员、硬件资源等等)更不用说用C#了。' H2 v6 v9 y0 r* Y4 h% S
个人认为,这个C#完全是个噱头!
- ~0 _( j$ d( j  J就 ...

" q3 |; o5 \# _0 g2 f" Z别搞C#了,简直是在浪费时间和精力。
. t* d8 C8 J+ O5 }* X( t/ m下图是.NET Micro Framework对硬件资源的最低要求(smallest form):
- s) t" p0 f( Q/ Y3 S QQ截图20150530164241.jpg
! x% I  m' e7 J最低要求64Kb RAM和256Kb的Flash存储,按照惯例此处的单位都是KByte,但随着该.NET的升级,最低要求还会升高。* \6 ?) g6 e' S: ~9 z/ h. L
当然,如果你要添加更多的特性,我估计对硬件的需求将会是成倍的增加(C#最简单的hello world二进制程序代码比最简单的C SDK版hello world多出若干倍的数量级,这只是程序代码,为了运行c#还需要.NET来支撑)!
4 E! G  H/ B' ^; E. G: m2 z+ H" D: NLZ使用的F4 DISCOVERY,具有192KB RAM, 1024KB FLASH,我估计添加一些基本的特性,就没空间了吧?那该如何添加应用呢?
8 t$ r* K0 R! F* K# _2 g( v# q( |对于低成本的STM32来说,C#就是无用的!
5 H8 _0 l! V& v# F! q
1 `6 t" z4 ~, P% j$ i2 c& N( B截图取自《.NET Micro Framework Porting Kit Version 4.2》(见附件),目前是最新的版本,可以在此处找到更新:
3 y5 T; W' N7 k7 mhttp://netmf.codeplex.com/documentation8 S% m5 q1 t, z5 N5 y# |, N& u
以及一个讨论列表:
8 {/ e' ~, {/ A. [, |/ thttp://netmf.codeplex.com/discussions) G4 v) h" X- a+ T6 x

1 P9 I$ a. G! B: d1 F/ D  w8 \& O- t4 c# H1 J# W

PortingKitDataSheet.pdf

下载

515.3 KB, 下载次数: 16

nick_zhang 回答时间:2015-5-27 13:52:13
本帖最后由 nick_zhang 于 2015-5-28 10:53 编辑   s4 ]) m6 N$ K( @" L( `

3 x+ _% t4 }! _# t  w, K这个是mf的固件,有好几个 STM32F4Discovery_Hex.zip (2.4 MB, 下载次数: 66)

STM32F4Discovery_Demo.zip

下载

2.14 MB, 下载次数: 42

nick_zhang 回答时间:2015-5-27 13:46:13
本帖最后由 nick_zhang 于 2015-5-28 10:36 编辑
& _- ^% o1 `* E3 t# s, ^6 U6 V# b; t' X
写入后重置板子,再连上microUSB线2 w% ~$ W( f6 w+ a/ X
插入电脑后windows发现新设备,安装STM32_WinUSB_drivers- R9 X3 e% \  x# I
现在微框架部署工具(MFDeploy)能看到板子了
7 ~1 V1 K! H9 O( G% {6 t; h/ a9 r, M* N6 B) a, o' B" A: i) q! Y
如上图 ping到板子后1 Z  F6 n/ \6 q: P4 l' X  ~  H+ p
2 a* t- X- F' b% i* K% w/ x
找的ER_CONFIG和ER_FLASH并部署到板上" {% p* B( O; M7 Y# m2 j( X
重置F4, {2 q: `* D. ]3 q, Z

; a9 ?; V8 R; u) a, f* H5 h接下来就可以用Visual Studio来写程序了,打开vs,我的是2012,新建一个mf工程,本例在单片机上无图形,所以选console application: P. ]  j2 D) I: o$ w
打开项目属性页 如图选择USB,写好程序就可以部署了,通过micro USB,mini USB也要插上为了供电% \- z  V" t7 l0 H, Z( [

+ t, d3 y1 e$ n2 {4 M0 D1 f
无标题.jpg
捕获1.JPG
qianfan 回答时间:2015-5-27 13:49:34
ST有一个专门的文档,说的很清楚了,不过没有Nucleo系列的包,只有429discovery的包。
nick_zhang 回答时间:2015-5-27 13:53:05
QianFan 发表于 2015-5-27 13:49/ M6 V. k# @' L4 [
ST有一个专门的文档,说的很清楚了,不过没有Nucleo系列的包,只有429discovery的包。 ...

. }6 B! }) v! M9 d& l. q1 g. @对呀,不过这个是407的,官方可没有
eurphan 回答时间:2015-5-27 14:20:23
那岂不是可以支持C#写的程序了
nick_zhang 回答时间:2015-5-27 14:23:48
eurphan 发表于 2015-5-27 14:20
% k/ G: s+ V! `, b7 a7 \那岂不是可以支持C#写的程序了

3 ?  Z; a1 z% \4 j6 D* Y没错,就是C#
eurphan 回答时间:2015-5-27 14:25:03
nick_zhang 发表于 2015-5-27 14:23! o5 K* @# N5 ~3 r( P
没错,就是C#
" i' Q  a4 d1 j% I
太爽了,有没有支持NUCLEO的呀
nick_zhang 回答时间:2015-5-27 14:33:59
eurphan 发表于 2015-5-27 14:25
* f3 B( Y) R: O  V8 Z6 i太爽了,有没有支持NUCLEO的呀
! `% o* k/ b& \/ S' C
NUCLEO没有407芯片的,不过你可以编译一个给401用的tinybooter,这有点麻烦
eurphan 回答时间:2015-5-27 14:36:10
nick_zhang 发表于 2015-5-27 14:33
3 q( @" O0 }; z" ^NUCLEO没有407芯片的,不过你可以编译一个给401用的tinybooter,这有点麻烦
  l4 W1 U+ Z& G$ y, T# S5 c
只有411                           
nick_zhang 回答时间:2015-5-27 14:44:51
eurphan 发表于 2015-5-27 14:36
: e+ g5 n+ J$ n, `2 F3 y只有411
/ }: ~1 C2 P8 D; V
NETMF是一套移植工具,你可以用Keil从源代码来编译核心,当然要做些修改
小小超 回答时间:2015-5-27 15:24:57
谢谢分享!
JackieLaura 回答时间:2015-5-27 15:39:18
用C#写程序,不错。可惜没板子。。
黑溱郎 回答时间:2015-5-27 15:48:53
我先看看,学一下。
awficel1 回答时间:2015-5-27 21:41:45
NET% J6 x. Y3 M8 f& t$ w0 ?1 L) j) T' g
0 Q  O: _# \$ `0 U
太爽了
1234下一页
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版