
STM32嵌入式系统开发实战指南附光盘FreeRTOS与LwIP联合移植$ h2 V: K/ y3 Q* j1 G: N; T 作 者:李志明//檀永//徐石明//丁孝华//桑林7 Z4 Y; d7 u( k 出 版 社:机械工业( W( S- W5 R/ F2 s( W 出版时间:2010-05-011 ], z/ O. _9 t8 r& J ![]() 内容推荐* o) b& k( \0 ^5 m 嵌入式实时操作系统可以将产品的应用开发和底层开发有效分层,这样在产品更新的过程中,仅仅需要更改底层接口。这样做不仅可以增强代码可读性,而且可以加快产品的开发周期。因此。掌握嵌入式实时操作系统和网络应用开发相关技术已经迫在眉睫。 《STM32嵌入式系统开发实战指南》以业界最流行的微处理器STM32为平台,详细剖析了开源嵌入式实时操作系统FreeRTOS和TCP/IP开源协议栈LwIP的移植过程,为想要学习嵌入式系统开发的读者扫清了学习这两门关键技术的障碍。本书由李志明,檀永,徐石明,丁孝华,桑林编著。 目录( r# C1 o9 v3 a$ A# H5 D( b! _5 @ 序言 前言 第一篇 平台篇 第1章 ARM处理器简介 1.1 ARM内核处理器沿革+ \ I- X& T, J1 x( } 1.1.1 传统ARM处理器 1.1.2 Cortex内核处理器5 X# }2 ^1 O0 `4 n! ^ 1.2 Cortex内核系列处理器技术特点 1.2.1 ARM Cortex-M系列处理器5 f8 B8 r* C7 q" E 1.2.2 ARM Cortex-R系列处理器3 O$ j$ e* d7 G% S+ ]. q/ |! ? 1.2.3 ARM Cortex-A系列处理器2 K8 i+ V+ n2 e6 O 1.3 STM32互联型嵌入式控制器 1.4 微控制器选型 1.4.1 选型因素 1.4.2 选型示例 第2章 基于STM32F107的开发板 2.1 STM32F107开发板% |2 Y, D* E/ M# h4 L3 z 2.2 主要板载资源* c# k) m# A4 Z2 S4 m 2.2.1 10/100M以太网接口9 F3 N5 h4 o, O8 {0 O5 |1 \. S 2.2.2 CAN总线接口) V4 h9 F: k$ \+ n' E" l' L 2.2.3 RS485总线接口; ]: G4 a; w6 t9 M& [ 2.2.4 其他总线接口 2.3 硬件设计要点- Y+ Q$ Q7 f. B+ |5 X. a 2.3.1 电磁兼容问题0 R0 R" u6 p4 \ 2.3.2 信号完整性8 G- N6 a2 e( E( K( F 2.3.3 电源完整性 第3章 开发环境; V% B/ `) N' G u3 p 3.1 开发环境及搭建( S. q7 ]4 o6 j3 a8 N# O 3.1.1 常见开发环境 3.1.2 IAR EWARM安装 3.1.3 RealView MDK安装 3.2 相关开发工具 3.3 创建工程; ?! l3 N8 `: y4 R! m$ _. ] 第4章 编程规范 4.1 ST固件库编程规范5 O# I1 ]: ?% L9 e9 y* p, m" a 4.1.1 缩写 4.1.2 命名规则 4.1.3 编码规则 4.2 基于C语言的嵌入式编程规范 4.2.1 源代码的排版5 w6 C4 l1 U, p% V 4.2.2 源代码的注释9 S8 H$ ^# E, X% G- Q 4.2.3 标识符命名1 K6 N. m8 _; C5 Q* ~+ l 4.2.4 代码可读性6 j- k/ z5 o8 E: p _$ C, i( |- t) G- D 4.2.5 变量、结构 4.2.6 函数、过程 4.2.7 可测性 4.2.8 程序效率 4.2.9 质量保证 4.2.10 代码编辑、编译、审查 4.2.11 测试与维护 4.2.12 宏定义 第5章 项目规划 5.1 概述0 m9 s# c% L( d i 5.2 系统分析 5.3 系统设计$ x3 w: X3 A4 ~ 5.4 系统制造 5.5 系统运用及反馈8 f2 V: B P0 ]' W3 c( K$ K 5.6 开发团队/ M' @- }3 s( D 5.6.1 团队负责人5 E+ k! p& |' {9 C# H 5.6.2 调研人员( h0 w- P5 f D1 g& L) p$ r 5.6.3 开发人员 8 T/ G1 f* d+ z# ?! o 第二篇 RTOS篇 x+ e" K ~1 }) P6 E- {( e/ c 第6章 操作系统原理基础知识$ T1 N1 g7 x; t/ i- ?; r 6.1 前后台模式应用程序+ l. W) [+ v" p! C' L+ `& }( F 6.2 嵌入式操作系统0 G$ ]! l; B) l. M 6.2.1 相关基本概念 6.2.2 系统调用 6.2.3 操作系统结构 6.2.4 进程与任务' V& ?* Y2 ~0 [, z# u 6.2.5 进程间的通信 6.2.6 进程调度 6.2.7 存储管理4 J3 W$ P! E6 S$ }8 o- o7 D 第7章 FreeRTOS嵌入式操作系统2 n y9 v1 Z" M. |* |( d. ~5 C 7.1 FreeRTOS特色 7.2 任务管理4 i" f, x6 R' y 7.2.1 任务函数 7.2.2 基本任务状态 7.2.3 任务创建1 V) |. a' F& O- U 7.2.4 任务的优先级/ E$ \8 L9 o. q7 [) H/ u 7.2.5 非运行状态 7.2.6 空闲任务及回调函数 7.2.7 改变任务优先级7 ~6 t0 ~9 M5 B: m: q 7.2.8 删除任务 7.2.9 调度算法概述 7.3 队列管理 7.3.1 概述7 Z9 c9 @ c: m% q 7.3.2 使用队列 7.3.3 大型数据单元传输! K. H& G# \5 j+ `! Z# q 7.4 中断管理 7.4.1 延迟中断处理- B- o8 p% s4 j: g3 S 7.4.2 计数信号量8 _! p- m2 I+ p. p; N' ^& a 7.4.3 在中断服务例程中使用队列 7.4.4 中断嵌套6 G H5 n0 W! V5 b4 L7 Y- v B 7.5 资源管理$ D2 Q3 @4 I% U) f: ~ 7.5.1 基本概念 7.5.2 临界区与挂起调度器 7.5.3 互斥量 7.5.4 互斥的另一种实现 7.6 内存管理 7.6.1 概述 a- p! H" A+ H 7.6.2 内存分配方案范例& s' s0 ? m4 _" E# e 7.7 常见错误2 N& h% E" |- Y0 T 7.7.1 概述 7.7.2 栈溢出 7.7.3 其他常见错误6 O* f A: _) k) @, W. T 第8章 基于STM32F107的FreeRTOS移植3 \, ^( l, O' q+ o& f- |9 X% O 8.1 概述8 [$ p& ^, K$ G" h/ n 8.2 FreeRTOS移植# V0 L- q5 }+ Z1 ?( R$ | 8.2.1 portmacro.h头文件8 n& h/ A' b+ [. } 8.2.2 port.c源文件3 M8 g9 c4 u; E* K, J4 _ 8.2.3 portasm.s汇编源文件! p# I" [0 S H: E 8.2.4 其他问题 8.3 创建测试任务8 x' a% T Z% O- R- G 1 \- P8 |4 P# i; d2 c 第三篇 LwIP篇 第9章 TCP/IP协议栈介绍 9.1 引言 9.2 网络分层/ X( S; q) F. X* n- r* K 9.2.1 OSI七层参考模型 9.2.2 TCP/IP分层 9.2.3 TCP/IP协议簇的协议' K- f5 A+ {: ~# Y. `. X1 y 9.3 IP协议. i, @5 S3 ~3 z" l! y7 E 9.4 ARP协议与RARP协议! k, ^1 }6 f4 y6 o 9.5 ICMP }* n) V: d. x+ E: [9 k 9.6 TCP协议' g1 G" H# l& q; G9 N4 I4 Z 9.7 UDP协议 9.8 FTP协议 第10章 LwIP轻量级TCP/IP协议栈3 K( n9 r& J9 Z$ R: x) ~ 10.1 LwIP进程模型8 j# u& X5 B/ g7 L 10.2 LwIP缓冲与内存管理 10.2.1 LwIP动态内存管理机制3 y4 S) ^7 L @1 ]( _% F 10.2.2 LwIP的缓冲管理机制 10.3 LwIP网络接口$ f8 |: s6 G4 A% Y( o1 x! P. W 10.4 LwIP的ARP处理6 C; A Q% `# o" j' G; l2 M/ E0 W3 ~" n 10.5 LwIP的IP处理 10.6 LwIP的ICMP处理 10.7 LwIP的UDP处理 10.8 LwIP的TCP处理 10.8.1 TCP处理流程概述 10.8.2 TCP控制块 10.8.3 LwIP的TCP滑动窗口7 U. y# K6 v) y' X! [ 10.8.4 LwIP的TCP超时与重传 10.8.5 LwIP的TCP拥塞控制0 Z" j0 t- }9 E0 m' m 10.8.6 LwIP的TCP定时器$ O5 ?- U6 L/ V; q7 g+ u, X% A0 b 10.9 LwIP的应用程序接口简介) Q* W! X- U6 _3 z1 [# X* U 10.9.1 RAW API接口( @, Y: r* t0 \7 P 10.9.2 Sequential API接口4 _; F! `; w5 L$ \' x 第11章 基于STM32F107的LwIP移植 11.1 ethernetif.c文件的移植 11.1.1 ethernetif_init函数 11.1.2 low_level_init函数 11.1.3 ethernetif_input函数 11.1.4 low_level_input函数- @. ?! g! ~- B8 U' z 11.1.5 low_level_output函数' {( f, M" J2 L4 ? H% q 11.2 网络驱动移植 11.2.1 以太网控制器概述 11.2.2 以太网控制器硬件配置 11.2.3 以太网控制器硬件的引脚配置 11.2.4 以太网驱动之接收 11.2.5 以太网驱动之发送 11.2.6 其他注意事项 11.3 基于RAW API接口的HelloWorld例程 & e& \+ f* J9 Y: O G" v% j 第四篇 移植篇 第12章 基于FreeRTOS的LwIP协议栈移植 12.1 概述 12.2 FreeRTOS下以太网驱动程序的移植 12.3 LwIP程序移植9 @/ t6 G% K# N) h. \, O 12.3.1 以太网接口文件ethernetif.c的移植 12.3.2 操作系统模拟层文件sys_arch.c的移植 第13章 工业通信网关解析 13.1 概述5 b; C: N& h+ F j 13.2 编码实现 13.3 通信测试 附录A 开发板原理图; x/ ~. n& D8 ?- q 附录B 专业术语, O+ a3 |3 m5 [+ c 参考文献 当当网购买地址/ u4 n v+ A9 b! o9 U6 o, D ) X# ]% M( A7 m# |; U; Y9 O 亚马逊购买地址1 ^9 M* p8 R9 S! }1 [4 B4 a0 q 8 g1 o5 c6 q' B( v 京东; W5 }4 f6 _( d7 H. V4 Z2 ` % E9 q7 n+ n6 H1 K3 ]) V1 B8 t 推荐理由:这书主要讲“FreeRTOS与LwIP联合移植”方面的东西,目前市场上讲freertos和lwip在stm32上应用的书我只找到这本,ucos的就多,但ucos商业收费,学这个的人可以参考一下。 9 Q7 ?$ L7 H. P0 V4 R/ o! g 2 s# v( _- ]' d& ^ 继续阅读 三十四本STM32图书分享集锦(推荐可获赠ST图书) |
RE:【STM32图书分享三十二】—《STM32嵌入式系统开发实战指南附光盘FreeRTOS与LwIP联
RE:【STM32图书分享三十二】—《STM32嵌入式系统开发实战指南附光盘FreeRTOS与LwIP联
RE:【STM32图书分享三十二】—《STM32嵌入式系统开发实战指南附光盘FreeRTOS与LwIP联