词条 | Freescale系列单片机常用模块与综合系统设计实例精讲 |
释义 | 全书以Freescale的HCS08主流芯片为写作对象,通过实例精讲的形式,详细介绍了Freescale单片机常用模块与综合系统设计的方法与技巧。 图书信息书名:Freescale系列单片机常用模块与综合系统设计实例精讲作者:张跃常 戴卫恒 编著 ISBN 978-7-121-11090-0 出版日期:2010年7月 定价:49.00元(含光盘1张) 开本:16开 页码:368页 内 容 简 介全书共分3篇24章:第一篇为基础知识篇,简要介绍了Freescale单片机的硬件结构与工作原理、指令系统、C语言开发基础及集成开发环境,引导读者入门;第二篇为常用模块设计实例篇,通过18个模块实例,详细介绍了Freescale单片机的各种开发技术和使用技巧,这些模块实例基础、实用,易学易懂,全部调试通过,几乎涵盖了Freescale单片机所有的开发技术;第三篇为综合系统设计实例篇,通过2个复杂项目,对前面的Freescale单片机常用模块进行了综合应用设计,经过此篇学习,读者的Freescale单片机设计能力将迅速提升,步入高级工程师的行列。 本书配有一张光盘,包含了全书所有实例的硬件原理图和程序源代码,方便读者学习和使用。本书的读者对象为Freescale单片机的初、中级用户,特别适合计算机、自动化、电子及硬件等相关专业的大学生及从事Freescale单片机开发的工程师阅读使用。 前 言Freescale系列单片机是飞思卡尔公司开发的旗舰产品。该公司原为摩托罗拉的半导体部,是全球最大的半导体公司之一,在我国的北京、上海、苏州和天津设有4个研发中心,在国内二十余所重点大学校园中建立了Freescale单片机实验室与培训合作机构。Freescale系列单片机逐渐成为全球电子产品市场的生力军。但目前市场上Freescale单片机类的图书比较少,而且以介绍编程语言和基础原理为主,而对应用开发的实例内容涉及甚少,从常用模块到综合应用系统的提高实例更是处于空白状态。本书的出版正是为了填补这种空白。 本书内容安排 全书基于Freescale的主流芯片HCS08而编写,通过实例精讲的形式,详细介绍了Freescale单片机常用模块与综合系统设计的方法与技巧。全书共分3篇24章,具体如下: 第一篇为基础知识篇,简要介绍了Freescale单片机的硬件结构与工作原理、指令系统、C语言开发基础及常用开发工具,引导读者熟悉Freescale单片机的硬件特点,掌握编程入门。 第二篇为常用模块设计实例篇,结合18个模块实例,详细介绍了Freescale单片机的各种开发技术和使用技巧。这些模块实例基础、实用,易学易懂,全部调试通过,读者学习后举一反三,可以掌握Freescale单片机绝大多数的开发技术。 第三篇为综合系统设计实例篇,通过2个复杂的项目,对前面的Freescale单片机常用模块进行综合应用设计。经过此篇的学习,读者的Freescale单片机设计能力可以迅速提升,继而步入高级工程师的行列。 本书配有一张光盘,包含了全书所有实例的硬件原理图和程序源代码。 本书读者对象 本书主要针对Freescale单片机的初、中级用户编写,特别适合计算机、自动化、电子及硬件等相关专业的大学生及从事Freescale单片机开发的工程师阅读使用。 本书优势和特色 与同类书相比,本书主要具备如下的一些优势和特色: (1)本书内容系统丰富、从简到难,将基础知识与大量实例相结合,边讲边练,使读者学习轻松、上手容易。 (2)本书的18个Freescale单片机常用模块实例基础、典型、实用,几乎涵盖了所有的Freescale单片机开发技术,为读者提供了便捷的学习途径。 (3)最后安排了2个综合系统实例,对Freescale单片机的基本知识和常用模块进行了综合应用,有利于读者举一反三,实现从入门到精通的学习目的。 (4)本书在讲解方式上,不但详细介绍了Freescale单片机的硬件接口设计和模块化编程,而且提供了综合系统设计思路,并对实例的所有程序代码做了详细注释,帮助读者理解和巩固知识点,深化各项开发技术。本书主要由张跃常、戴卫恒编写,另外参与编写的人员还有:赵汶、唐清善、邱宝良、李宁宇、严剑忠、黄小宽、付军鹏、张广安、贾素龙、金平、徐春林、谢正义、郑贞平,在此一并向他们表示感谢! 由于时间仓促,再加之作者的水平有限,书中难免存在一些不足之处,欢迎广大读者批评指正。 编著者 2010.4目 录第一篇 基础知识篇 第1章 Freescale单片机的硬件内部 结构 2 1.1 HCS08系列单片机的简介 2 1.1.1 HCS08系列MCU的基本特征 2 1.2 MC9S08JM60单片机的硬件结构 3 1.2.1 MC9S08JM60的CPU 3 1.2.2 JM60存储器的组织结构 5 1.2.3 JM60的复位、中断和系统配置 6 1.2.4 多功能时钟发生器(MCG)模块 12 1.2.5 I/O端口 17 1.2.6 KBI模块 29 1.2.7 定时器/PWM模块 31 1.2.8 IIC模块 35 1.2.9 FLASH模块 39 1.2.10 SCI模块 42 1.2.11 SPI模块 49 1.2.12 ADC模块 53 1.2.13 USB模块 58 1.3 本章总结 68 第2章 HCS08单片机的指令系统 69 2.1 HCS08内核的介绍 69 2.1.1 HCS08内核特点 69 2.1.2 HCS08 CPU寄存器 69 2.2 寻址方式 72 2.3 HCS08指令系统 74 2.3.1 数据传送指令 74 2.3.2 算术运算指令 77 2.3.3 逻辑运算指令 81 2.3.4 位操作指令 81 2.3.5 移位类指令 82 2.3.6 程序转移和控制类指令 83 2.4 本章总结 88 第3章 HCS08单片机的C语言程序设计 89 3.1 单片机C语言设计基础 89 3.1.1 数据结构 89 3.1.2 运算符与表达式 108 3.1.3 程序结构与函数 112 3.1.4 流程控制语句 120 3.2 HCS08单片机 C语言的扩展语法 128 3.2.1 基本数据类型 128 3.2.2 变量定义 129 3.2.3 变量定义修饰符 130 3.2.4 全局变量和局部变量 131 3.2.5 位定义和访问 132 3.2.6 中断服务程序定义 133 3.2.7 内嵌汇编和混合调用 134 3.3 本章总结 137 第4章 HCS08单片机的开发工具 138 4.1 CodeWarrior for Microcontrollers V6.2的安装 138 4.1.1 系统需求 138 4.1.2 CodeWarrior的安装与卸载 139 4.2 CodeWarrior for Microcontrollers V6.2功能使用 140 4.2.1 集成环境与功能设置 140 4.3 CodeWarrior开发HCS08单片机的过程 143 4.3.1 建立和打开工程 143 4.3.2 编译和链接 147 4.3.3 软件仿真调试方法 147 4.3.4 BDM调试方法 149 4.4 本章总结 150 第二篇 常用模块设计实例篇 第5章 通用IO模块:流水灯设计实例 152 5.1 实例内容说明 152 5.2 设计思路分析 153 5.3 硬件电路设计 153 5.3.1 电源电路 153 5.3.2 复位电路 153 5.3.3 BDM仿真调试电路 154 5.3.4 流水灯电路 154 5.3.5 单片机电路 154 5.4 软件设计与代码 155 5.4.1 软件设计流程 155 5.4.2 初始化程序 155 5.4.3 主程序 157 5.5 实例总结 157 第6章 通用IO模块:语音播放系统设计实例 158 6.1 实例内容说明 158 6.2 设计思路分析 159 6.3 硬件电路设计 159 6.3.1 ISD2560介绍 159 6.3.2 语音电路 160 6.3.3 单片机电路 161 6.4 软件设计与代码 161 6.4.1 软件设计流程 161 6.4.2 初始化程序 162 6.4.3 ISD2560录音、放音子程序 164 6.4.4 主程序 164 6.5 实例总结 166 第7章 液晶显示模块:温度测量系统设计实例 167 7.1 实例内容说明 167 7.2 设计思路分析 168 7.3 硬件电路设计 168 7.3.1 DS18B20介绍 169 7.3.2 温度传感器电路 169 7.3.3 液晶显示电路 170 7.3.4 单片机电路 170 7.4 软件设计与代码 171 7.4.1 软件设计流程 171 7.4.2 温度测量程序 171 7.4.3 LCD显示程序 173 7.4.4 主程序 174 7.5 实例总结 175 第8章 液晶显示模块:实时时钟设计实例 176 8.1 实例内容说明 176 8.2 设计思路分析 177 8.3 硬件电路设计 177 8.3.1 按键和LED电路 177 8.3.2 液晶显示电路 178 8.3.3 单片机电路 178 8.4 软件设计与代码 178 8.4.1 软件设计流程 178 8.4.2 时钟子程序 179 8.4.3 LCD显示程序 181 8.4.4 主程序 182 8.5 实例总结 185 第9章 KBI模块:扫描键盘设计实例 186 9.1 实例内容说明 186 9.2 设计思路分析 187 9.3 硬件电路设计 188 9.3.1 按键电路 188 9.3.2 LED显示电路 188 9.3.3 单片机电路 189 9.4 软件设计与代码 190 9.4.1 软件设计流程 190 9.4.2 键盘扫描子程序 190 9.4.3 LED显示程序 191 9.4.4 主程序 192 9.5 实例总结 193 第10章 定时器模块:用定时器控制蜂鸣器发声 194 10.1 实例内容说明 194 10.2 设计思路分析 195 10.2.1 蜂鸣器发声原理 195 10.2.2 蜂鸣器发声控制 195 10.3 硬件电路设计 196 10.3.1 蜂鸣器电路 196 10.3.2 单片机电路 196 10.4 软件设计与代码 196 10.4.1 软件设计流程 196 10.4.2 外设初始化程序 197 10.4.3 定时中断服务程序 197 10.4.4 蜂鸣器控制子程序 198 10.4.5 主程序 199 10.5 实例总结 199 第11章 定时器模块:电子钟系统设计实例 200 11.1 实例内容说明 200 11.2 设计思路分析 201 11.3 硬件电路设计 202 11.3.1 闹钟报警提示电路 202 11.3.2 按键电路 202 11.3.3 LCD显示电路 203 11.3.4 单片机电路 203 11.4 软件设计与代码 204 11.4.1 软件设计流程 204 11.4.2 初始化程序 204 11.4.3 按键扫描程序 205 11.4.4 LCD显示程序 206 11.4.5 主程序 208 11.5 实例总结 209 第12章 存储器模块:FLASH编程实现 210 12.1 实例内容说明 210 12.2 设计思路分析 211 12.2.1 寄存器介绍 211 12.2.2 FLASH编程和擦除命令的执行顺序 214 12.3 硬件电路设计 215 12.4 软件设计与代码 215 12.4.1 软件设计流程 215 12.4.2 FLASH操作子程序 216 12.4.3 主程序 217 12.5 实例总结 218 第13章 AD模块:加速度传感器系统设计实例 219 13.1 实例内容说明 219 13.2 设计思路分析 220 13.3 硬件电路设计 221 13.3.1 MMA1220D和MMA1260D的介绍 221 13.3.2 加速度传感器电路 222 13.3.3 LCD显示电路 222 13.3.4 单片机电路 223 13.4 软件设计与代码 224 13.4.1 软件设计流程 224 13.4.2 A/D采样子程序 224 13.4.3 加速度传感器子程序 225 13.4.4 LCD显示程序 228 13.4.5 主程序 228 13.5 实例总结 230 第14章 AD模块:烟雾检测系统设计实例 231 14.1 实例内容说明 231 14.2 设计思路分析 232 14.3 硬件电路设计 232 14.3.1 光电传感器电路 232 14.3.2 报警电路 233 14.3.3 单片机电路 233 14.4 软件设计与代码 234 14.4.1 软件设计流程 234 14.4.2 AD采样子程序 235 14.4.3 定时程序 235 14.4.4 主程序 236 14.5 实例总结 237 第15章 PWM模块:寻迹智能小车控制系统设计实例 238 15.1 实例内容说明 238 15.2 设计思路分析 239 15.2.1 PWM基本原理 239 15.2.2 实现方法 240 15.3 硬件电路设计 240 15.3.1 H形桥式电路 240 15.3.2 光电传感器电路 242 15.3.3 电源电路 242 15.3.4 单片机电路 242 15.4 软件设计与代码 243 15.4.1 软件设计流程 243 15.4.2 传感器采样处理子程序 244 15.4.3 智能车移动子程序 245 15.4.4 主程序 248 15.5 实例总结 248 第16章 通用串口通信模块:单片机与PC通信设计实例 249 16.1 实例内容说明 249 16.2 设计思路分析 250 16.2.1 电平转换芯片 250 16.3 硬件电路设计 250 16.3.1 MAX3232芯片介绍 250 16.3.2 串口电路 251 16.3.3 单片机电路 251 16.4 软件设计与代码 252 16.4.1 软件设计流程 252 16.4.2 串口初始化程序 253 16.4.3 串口中断服务程序 253 16.4.4 主程序 255 16.5 实例总结 255 第17章 RS-485总线通信模块:现场监测系统设计实例 256 17.1 实例内容说明 256 17.2 设计思路分析 257 17.2.1 RS-485总线 257 17.2.2 RS-485驱动芯片选取 258 17.3 硬件电路设计 258 17.3.1 SN75176芯片介绍 258 17.3.2 232/485转接卡 259 17.3.3 带485接口的单片机系统 259 17.4 软件设计与代码 260 17.4.1 软件设计流程 260 17.4.2 串口通信子程序 261 17.4.3 485通信收发子程序 262 17.4.4 主程序 264 17.5 实例总结 265 第18章 I2C总线通信模块:串行存储器接口设计实例 266 18.1 实例内容说明 266 18.2 设计思路分析 266 18.3 硬件电路设计 268 18.3.1 AT24C02芯片的介绍 268 18.3.2 串行存储器电路 269 18.3.3 单片机电路 269 18.4 软件设计与代码 270 18.4.1 软件设计流程 270 18.4.2 I2C模块初始化程序 271 18.4.3 AT24C02的读/写子程序 271 18.4.4 主程序 274 18.5 实例总结 275 第19章 I2C总线通信模块:I2C主从通信系统设计实例 276 19.1 实例内容说明 276 19.2 设计思路分析 277 19.3 硬件电路设计 278 19.4 软件设计与代码 279 19.4.1 软件设计流程 279 19.4.2 I2C程序 279 19.4.3 主程序 284 19.5 实例总结 287 第20章 SPI总线通信模块:电量监测仪设计实例 288 20.1 实例内容说明 288 20.2 设计思路分析 289 20.2.1 SPI协议 289 20.2.2 电能计量芯片的选择 291 20.3 硬件电路设计 291 20.3.1 CS5460A芯片的介绍 291 20.3.2 电量信号采集电路 293 20.3.3 显示单元电路 294 20.3.4 单片机系统 294 20.4 软件设计与代码 295 20.4.1 软件设计流程 295 20.4.2 CS5460A的操作 295 20.4.3 SPI的实现 296 20.4.4 CS5460A操作程序的实现 298 20.4.5 主程序 301 20.5 实例总结 302 第21章 SPI总线通信模块:SD卡数据存储系统设计实例 303 21.1 实例内容说明 303 21.2 设计思路分析 304 21.3 硬件电路设计 306 21.3.1 SD卡接口电路 306 21.3.2 单片机系统电路 307 21.4 软件设计与代码 308 21.4.1 软件设计流程 308 21.4.2 SD卡读/写子程序 308 21.4.3 主程序 312 21.5 实例总结 313 第22章 USB串行总线模块:数据传输系统设计实例 314 22.1 实例内容说明 314 22.2 设计思路分析 315 22.3 硬件电路设计 317 22.3.1 USB电路 317 22.3.2 加速度传感器电路 318 22.3.3 人机接口电路 318 22.3.4 单片机系统 318 22.4 软件设计与代码 319 22.4.1 软件设计流程 319 22.4.2 USB模块初始化程序 319 22.4.3 USB模块的相关程序 320 22.4.4 主程序 326 22.5 实例总结 326 第三篇 综合系统设计实例篇 第23章 出租车计价器系统设计实例 328 23.1 实例内容说明 328 23.2 设计思路分析 329 23.3 硬件电路设计 330 23.3.1 里程计算单元 330 23.3.2 显示电路 330 23.3.3 按键电路 331 23.3.4 单片机系统 331 23.4 软件设计与代码 332 23.4.1 软件设计流程 332 23.4.2 硬件层程序 332 23.4.3 应用程序接口层程序 334 23.4.4 应用层主程序 335 23.5 实例总结 344 第24章 手持式超声波测距仪系统设计 实例 345 24.1 实例内容说明 345 24.2 设计思路分析 346 24.3 硬件电路设计 346 24.3.1 接收单元 346 24.3.2 发送单元 347 24.3.3 按键电路 347 24.3.4 显示单元 348 24.3.5 单片机系统 348 24.4 软件设计与代码 348 24.4.1 软件设计流程 348 24.4.2 超声波发送子程序 349 24.4.3 超声波接收子程序 350 24.4.4 按键扫描子程序 352 24.4.5 测距仪主程序 355 24.5 实例总结 356 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。