《玩转.NET Micro Framework 移植-基于STM32F10x处理器》--微软中国.NET Micro Framework项目组工程师所作之序

仰欣悦
2023-12-01

                              序


    2006年才偶然知道.NET Micro Framework,那是无意间翻阅一本当年的《程序员》杂志,发现有一篇马宁所写的.NET Micro Framework的介绍文章。文章称.NET Micro Framework不仅可以自启动,所提供的托管代码库还可以非常方便的操作硬件,比如操作GPIO、串口、USB和以太网之类的接口,一下子就把仅有Windows编程和工控经验的我深深吸引住了。


    也就是在同一年,微软中国和CSIP(工业和信息化部软件与集成电路促进中心)签署合作备忘录。2007年9月18 日,微软中国与CSIP联合主办的.NET Micro Framework技术大会在京隆重召开,正式把.NET Micro Framework引入中国。


    从那个时候开始,我便着手研究.NET Micro Framework,并写一些关于.NET Micro Framework的技术文章,在积极推进当时我所在公司和CSIP合作开发.NET Micro Framework项目未果的情况下,在马宁的引荐下,2008年我加入了微软中国.NET Micro Framework项目组,从而得以进入嵌入式领域,开始了我的ARM开发生涯。


    虽然从2007年开始,CSIP和微软中国便大力推广.NET Micro Framework,但是定位仅仅是和高校合作,其推出的近乎天价的几万元的双子星教育箱,也只有高校可以买单,一般嵌入式爱好者是无缘使用的。而国外推出的.NET Micro Framework开发板,动不动几千元的价格,也不是一般爱好者所能接受的。此外更致命的是,.NET Micro Framework Porting Kit不仅TinyCLR不开源,并且还收取600美金的授权使用费用,所以更限制了.NET Micro Framework在中国,乃至世界的推广。


    直到2009年,微软才幡然醒悟,不仅.NET Micro Framework Porting Kit完全免费,此外还以更为彻底的源代码授权方式(Apache 2.0 license)全部开源了.NET Micro Framework代码,并且源代码也交予社区进行开发维护。


    当此时也,物联网风起云涌,ARM推出了Cortex系列的芯片,各大厂商的云计算平台更是甚嚣尘上,而恰恰最重要的“端”这个依托平台正是.NET Micro Framework最适合的施展舞台。


    为了顺应这个发展潮流,我以个人之粗见,尽微薄之力,推出了全球第一款基于Cortex-M3的.NET Micro Framework开发板,使.NET Micro Framework爱好者能用较低的代价,便可以进入.NET Micro Framework学习的殿堂。


    也就是在那个时候,我结识了来自深圳的莫雨,他采用了自己的方式,用了近半年的时间,一步步,认认真真地完成了.NET Micro Framework的移植工作,难能可贵的是,他把自己的移植过程,结集成书,使有心进行.NET Micro Framework的移植的网友,多了一个指路明灯。尤值得一提的是,莫雨的这部大作,应该是全球第一部写.NET Micro Framework底层移植的书。


    需要指出的是,.NET Micro Framework应该是没有多少嵌入式基础的读者进入嵌入式开发殿堂,最好的切入点,为什么这么说呢?因为.Net MF相对其它嵌入式系统,即不简单(相对于UC/OS-II)也不复杂(相对于WinCE,嵌入式Linux),并且包略万象,知识面涉及很广,不仅包含一个小巧的操作系统,还包括CLR的精简运行时,更包含一个强大的在线调试系统,真可谓 “麻雀虽小,五脏俱全”。


    此外学习.Net Micro Framework也是Windows平台开发的人员顺利的过渡到真正嵌入式开发的最佳渠道,从这一点出发,你很容易过渡到其它嵌入式系统上来,如UC/OS-II,ucLinux、嵌入式Linux等系统;而WinCE则不然,学过WinCE的人都知道,WinCE开发比较难的就是驱动开发和平台移植,而这种代码编写、编译和调试都是基于微软自己的PB开发环境(目前已作为插件成为Visual Studio的一部分),你很难接触到什么MDK、RVDS、GCC等等开发工具,你为学WinCE而WinCE,你将被绑定,很难转入到其它嵌入式系统,至于WinCE应用开发,那和PC平台开发几乎没有什么区别,也许你已经开发了几年的WinCE应用开发,严格意义上讲,你仍不是一个真正的嵌入式开发人员。当然如果仅仅学习嵌入式Linux的应用开发,那么你也称不上一个真正的嵌入式开发人员,真正的嵌入式开发人员至少要有和中断和芯片的寄存器打交道的经历。


    总之一句话,如果你学习了一阵子.Net Micro Framework应用开发,已经不满足当前所学,想进一步深入研究和开发.Net Micro Framework,那么莫雨的这部关于底层移植的书,你不得不读,他会给你拨开底层移植的层层迷雾,让你尽享.Net Micro Framework底层移植的快乐。


                                                                                                                                                刘洪峰(网名:叶帆) 于 北京
                                                                                                                                                                  2011年8月18日



 类似资料: