作 者:莫雨 编著* N- O; ~0 ^! w% M7 ^3 P: H+ P1 b 出 版 社:北京航空航天大学出版社 出版时间:2012-4-1 $ U0 Y7 K6 [# v! l8 W 内容简介 《玩转.NET Micro Framework移植--基于STM32F10x处理器(工程师经验手记)》(作者莫雨)循循善诱,带领大家进入.NET Micro Framewoik移植这个神奇的领域。《玩转.NET Micro Framework移植--基于STM32F10x处理器(工程师经验手记)》内容总体上分为三个部分: 第一部分介绍.NET Micro Framework的基本概况,比如应用领域、发展前景、嵌入式系统的对比等,让读者大致了解它所处的地位; 第二部分是熟悉开发环境,比如需要什么开发工具、如何编译代码、如何调试等,让读者了解移植所需要做的准备工作; 第三部分是全书之重,主要介绍如何将.NET Micro Framework移植到STM32F103ZE处理器上及需注意的要点,内容涉及向量表、USB驱动、FLASH驱动等,让读者明白如何从无到有进行移植。- o' b5 \. k9 @3 q: S- b 本书附录中有“快速上手指南”,读者可根据其中的步骤快速地进行系统编译。本书共享书中所有源代码,请到作者博客或北京航空航天大学出版社网站下载。本书的读者对象是:对.NET Micro Framework移植非常感兴趣的朋友,只要具备基础的C++知识,就能根据书中的内容一步一步实现移植;对于想了解和使用STM32F10x的读者,也具备一定的参考价值;当然,还有对嵌入式开发有着浓厚兴趣,一直支持norai的朋友们。 目录! S M8 v$ s* t/ _# Q 第1章 概述 ; x' q% u* G( {; G, Y 1.1 什么是.NET Micro Framework 1 p+ u& f! L& Z7 c 1.2 .NET Micro Framework的架构 1.2.1 Hardware Layer(硬件层) 9 M6 X: e1 C/ ~) k8 _$ G4 W0 R 1.2.2 Runtime Component Layer(执行组件层) 0 b3 D r6 I+ f0 L5 @3 X3 P 1.2.3 Class Library Layer(类库层) 9 w; P! ~- e1 t/ S$ I0 T: w 1.2.4 Application Layer(应用层) + s; i& N7 J! Q& {+ d$ t9 ?. v 1.3 .NET Micro Framework与嵌入式系统的比较 6 Y1 |! [9 x* ^" T; D! S 1.4 .NET Micro Framework与其他.NET平台的比较 1.5 开发工具 ' n% R9 L& p: e! w" q: Z& b! V 1.5.1 Visual Studio 1.5.2 RealView MDK 1.6 硬件平台 1.7 闲谈.NET Micro Framework的适用范围+ ^3 O. X: a+ [) h" ^3 D - Q6 t$ z$ i* X+ c 第2章 开发环境 $ @* N8 P% k) e: y* H; u: [ 2.1 .NET Micro Framework Porting Kit概述 7 T2 K: N% M; l 2.2 安装.NET Micro Framework Porting Kit 2.3 了解文件类型 2.3.1 命令文件:*.cmd 2.3.2 工程文件:*.proj. 2.3.3 分散加载文件:*.xml ' x5 J6 q% n; t 2.3.4 源代码文件:*.S,*.e,*.cpp,*.h # \7 |& x: E+ }! c; M& @- M( U' F 2.4 编译MFDeploy 2.5 C#程序开发 2.5.1 安装SDK 2.5.2 第一个C#程序 2.5.3 查看帮助文档 第3章 移植初步 + w) d. `" o. H: ?- F 3.1 Solution Wizard创建新方案 3.2 探究处理器数值设置 3.3 .NET Micro Framework工程 ) E* `& i' w- M6 ^7 n 3.3.1 典型工程概述 * Z2 c; k" D7 M 3.3.2 断点调试NativeSampie 3.4 ST函数库6 ?3 o6 |4 O+ B0 Z 第4章 向量表和启动 3 Z) v1 U, ]( }" i& m 4.1 向量表 4.2 启动代码 4.3.NET Micro Framework的启动流程 9 h# Z* f1 h. _ n, i: a0 p! F 4.4 修改.NET Micro Framework的启动流程 4.5 使向量表正常工作 4.6 将向量表移至内存 4.7 不可或缺的PreparelmageRegio * g* a0 k5 R! t g( d$ R% T1 n 4.8 修正PreparelmageRegio 4.9 INTC驱动 4.9.1 驱动概述 4.9.2 搭建工程 4.9.3 动态设置中断函数 3 r( s. W3 f) K1 ]: f 1 R8 W5 w9 w1 i& W3 I 第5章 SysTick驱动 5.1 驱动概述 2 i0 [1 y5 M) @) H% j 5.2 建立工程 ( u2 k8 V+ ^, _$ f* C( d 5.3 使用sT函数库的定时器 5.4 驱动实现 ! E4 q, C& J! l# Y9 r 5.5 中断函数第6章 串口驱动 6.1 驱动概述 6.2 建立工程 & i# r. w, m8 ^3 o 6.3 寄存器概述 6.4 ST函数库的使用 9 n4 N& {! `: ^) u7 h8 S$ j 6.5 中断函数 6.6 PAL层驱动 6.7 NativeSample测试第7章 USB驱动 7.1 驱动概述 / O8 p. A5 p) \, y9 r2 h1 X 7.2 PC端驱动 " ]) C) R+ E6 O- x7 @ 7.3 建立工程 7.4 插入检测 7.5 EndpointO的设备枚举 % u( q6 t* }1 T# P5 g( N' S 7.5.1 设备描述符 . }* q4 f, R9 P' r( k2 }1 j 7.5.2 初始化 7.5.3 中断函数 7.5.4 控制传输 4 c W! U/ |# @7 J' ^. p/ u 7.5.5 安装PC端驱动程序 7.6 Endpointl和Endpoint2的数据传输 6 w9 w; @5 m) E9 i 7.7 MFDeploy测试 0 \: D% @, K: K 第8章 FLASH驱动 : X- i, K2 Z2 A) `; ~+ M' l) g" s% v$ | 8.1 驱动概述 : {# E- N9 u3 i ~" \ 8.2 增加NAND FLASH设备 * F$ X0 Z* Y9 J7 ] 8.2.1 建立工程 8.2.2 添加设备的代码 & A$ C+ I' U& F7 ]0 C! Z* n. c 8.2.3 初始化BLOCK—CONFIG 7 ]# W: f t* d, F 8.2.4 初始化BlockDevicelnfo - o }, i- f; d0 E5 S c+ j 8.2.5 初始化BlockRegionlnfo 6 c* [% V* B& U7 i 8.2.6 初始化BlockRange ; c, r! C9 d- ]1 d 8.3 FSMC NAND / D, k H. A3 K8 p' B' D) l: a4 m 8.3.1 FSMC简介 ( c' W. F3 P% I, _0 A; p7 x+ m6 r 8.3.2 建立工程 1 U- L: p: C- h* P, v" C 8.3.3 适用性判断 8.4 NAND FLASH驱动 ; `2 D0 [. g. d- { 8.4.1 建立工程 - {1 e- k% ]" h3 a 8.4.2 代码概述 8.4.3 地址转换 9 A! |" p% H/ I5 X# z/ ` 8.4.4 读取 8.4.5 写入 - s* e6 y4 f; u2 Z3 q 8.5 增加NOR FLASH设备 8.5.1 建立工程和增加设备 / p) c& J3 |- ^0 v% P7 N; j0 b, _ 8.5.2 初始化信息 ' V3 M; B% \3 z4 B- q 8.6 FSMC NOR ; d* I6 n+ C3 c: k7 P 8.7 NOR FLASH驱动 8.7.1 读取 8.7.2 写入 & r1 s u$ P1 s* v$ @! n* p( n 8.8 NativeSample程序验证2 f; E% ^! p9 [- f" o/ b 第9章 Power驱动 9 R3 X# L+ p4 a7 V7 X 9.1 驱动概述 1 t% X5 ?( r' K; ~6 r0 \ 9.2 建立工程 0 {0 X J+ g7 y9 t- a 9.3 驱动实现 / \1 J. l4 T% b! Q* Q6 N 9.4 调试C#程序 - }1 L3 x% H. g2 u* e4 T5 I 9.5 调试探秘第10章 GPIO驱动 10.1 驱动概述 10.2 建立工程 10.3 ST函数库的使用 7 s/ J' N0 R" j* j- F/ g0 p 10.4 外部中断释疑 " m+ R, P. n: a9 F& o+ X 10.5 中断函数 1 z( G0 w: ?- d" Y! W7 x 10.6 NET Micro Framework和ST函数库的GPI()标识映射 6 T* _* B3 |- X3 a 10.7 在C#程序中调用GPIO- y9 x. d; h" Y+ b" c2 p 2 n8 W. q# K/ ~/ M3 Y 第11章 LCD驱动 : O5 f4 O+ K7 ?! u& H- q 11.1 驱动概述 11.2 控制器驱动 7 B& I( K5 `, b! x7 d 11.2.1 建立工程 R" k2 Z* r' ?- v2 k 11.2.2 范例函数 11.2.3 硬件设计 11.2.4 字体 11.2.5 代码完善 11.3 显示驱动 11.3.1 建立工程 ( b, l b* |' R! ?0 b$ Y 11.3.2 代码完善 # x! p! k- w# x/ Z 第12章 调试异常与解决 12.1 CheckMultipleBlocks函数引发的异常与解决 6 K: Z# i2 B, \1 O 12.2 TinyCLR的this赋值语句的缘起与解决 12.3 MI)K指针赋值操作的bug 12.4 8LLoad$$ER—RAM$$Base赋值语句的崩溃 12.5 闲谈赋值的出错 12.6 灵活使用ARM汇编的WEAK关键字 ' B) n7 a! _' |' X' z3 x7 \ 附录A 代码包快速上手指南 附录B BIN文件的烧录参考文献2 s. s- [: F" r* \ p 后记 : T O* o# X2 O% T; t 授之于渔:写在.NET Micro Framework 4.2 RC发布之际 7 |- E+ s. Z) F4 v# I: @ {. q |
RE:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
RE:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
回复:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
RE:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
回复:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
回复:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
RE:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
回复:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
回复:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》
RE:【STM32图书分享之十】—《玩转.NET Micro Framework 移植-基于STM32F10x处理器》