编辑推荐
由于半导体技术的飞速发展,数字电路系统的技术不断更新,器件频频换代,嵌入式软硬件日新月异,从事MCU类应用开发的课程教师、在校学生、应用工程师等都需要不断补充新知识,跟上新技术的发展。
近年来,众多学校转入以Freescale(飞思卡尔)单片机为蓝本的教学,却面临可选教材较少的状况,并且没有适合的基于通用软件、硬件工具的基础教材。
本书主要以Freescale(飞思卡尔)半导体公司的获得广泛应用的S12(X)系列16位单片机为蓝本,讲述单片机的基础知识、接口方法和应用技术,其中的软件开发环境采用通用的CodeWarrior,硬件教学平台采用“飞思卡尔大学计划”配备的S12XDT512SLK开发板或者国内相关单位的S12XS128开发板。
本书兼顾S12系列和S12X系列单片机,涉及的单片机型号即为目前主流的S12XD、S12XE系列和S12XS系列,它们均向前兼容S12系列。其中,MC9S12XD512单片机是通用型,并且是“飞思卡尔大学计划”配备开发板所使用的核心芯片; MC9S12XS128单片机是低成本的,并且是“全国大学生智能车大赛”指定使用的核心芯片。Freescale 16位单片机的子系列众多,但各型号间的基本结构特性、硬件接口有较大的相通性,并且软件程序也是基本兼容的。
本书在编排上按照教学特点分模块展开,由浅入深、循序渐进;在讲述上力求简明扼要、浅显易懂,并力求理论与实际的平衡、通用与具体的平衡;在内容上以入门为主、追求实用,轻于内部原理性描述,重于资源性描述及其应用方法。
书中各章节配有一些硬件电路实例和软件程序实例,单片机与常用外设的接口方法贯穿在全书之中,所给出的汇编语言程序或C语言程序均已在CodeWarrior集成开发环境与S12XDT512单片机开发板或S12XS128单片机开发板上调试通过。
本书主要以Freescale(飞思卡尔)半导体公司的获得广泛应用的S12(X)系列16位单片机为蓝本,讲述单片机的基础知识、接口方法和应用技术,其中的软件开发环境采用通用的CodeWarrior,硬件教学平台采用“飞思卡尔大学计划”配备的S12XDT512SLK开发板或者国内相关单位的S12XS128开发板。
本书在编排上按照教学特点分模块展开,由浅入深、循序渐进;在讲述上力求简明扼要、浅显易懂,并力求理论与实际的平衡、通用与具体的平衡;在内容上以入门为主、追求实用,轻于内部原理性描述,重于资源性描述及其应用方法。
书中各章节配有一些硬件电路实例和软件程序实例,单片机与常用外设的接口方法贯穿在全书之中,所给出的汇编语言程序或C语言程序均已在CodeWarrior集成开发环境与S12XDT512单片机开发板或S12XS128单片机开发板上调试通过。
内容简介
本书讲述单片机(Micro Control Unit,MCU)的基础知识、接口方法和应用技术,全书共14章。第1章介绍国内外单片机的发展、现状与应用,同时简要描述了传统MCS-51系列单片机的基础知识以及Freescale系列单片机的分类、特点。第2~12章以Freescale S12X系列16位单片机为蓝本,分别讲述S12X单片机的结构与组成、指令系统与汇编语言程序设计、仿真调试及C语言编程、并行输入/输出接口、定时器、A/D模/数转换、SCI/SPI串行通信、PWM脉宽调制、CAN/LIN/I2C总线、XGATE外设协处理器、μC/OS-Ⅱ嵌入式操作系统应用等,并从应用的角度列出了相关模块的使用和配置方法。第13章给出了使用S12X单片机实现两个综合应用的嵌入式系统实例。第14章描述了S12XS128开发平台的DIY设计制作及其参考资源。
书中各章节配有一些硬件电路实例和软件程序实例,单片机与常用外设的接口方法贯穿在全书之中,所给出的汇编语言程序或C语言程序均已在CodeWarrior集成开发环境与MC9S12XDT512开发板或MC9S12XS128开发板上调试通过。
本书假定读者具有基本的数字电路知识和一定的微机原理概念。本书可作为高等院校电子信息工程、通信工程、工业测控、汽车电子、医学电子、计算机应用等电类相关专业学生的课程教材,同时也可作为单片机系统(嵌入式系统)开发与研究人员的参考书籍。
作者简介
任勇,1988年大学本科毕业于西安交通大学信息与通信工程专业,1991年研究生毕业于西安交通大学电子与信息工程学院,获通信与电子系统专业工学硕士学位。1991年7月至今在重庆大学通信工程学院从事教学与科研工作,现为重庆大学副教授、硕士生导师。
教学方面,先后承担了本科生 “电视原理”、“C语言程序设计”、“单片机原理及应用”、“电子综合设计”等课程主讲任务,承担了本科毕业设计指导、研究生指导、学生创新实践指导任务。主编《单片机原理及应用---使用Freescale S12(X)构建嵌入式系统》教材一部。
科研方面,多年来一直从事电子信息、数据采集与处理、嵌入式系统、图像处理与分析、医学成像、生物医学信息处理等方面的科研与开发,在系统构建、硬件设计、软件开发等方面具有丰富的实践经验和资源积累。主研或参研国家军工、横向研发等科研项目二十余项,个人负责经费300余万元,已发表各类科研学术论文40余篇,发明专利获权4项。作为项目主研人员参与《XXXXXX工程》成像子系统,获得了2008年国家科学技术进步奖特等奖。
近年来,围绕本专业和研究方向,采用科学级CCD数字摄像机的高分辨、高灰度等级、高动态范围成像技术用于机器视觉及图像定量检测等高性能指标的研究与开发;针对航空航天、核工业、军事、工业测量、医学影像等领域对X射线、中子、红外与可见光的光电成像及光能量检测的特种要求,开展了高分辨、高清晰光电探测(传感)成像技术、三维重建技术与图像处理分析技术等的研究工作;针对地矿、石油、气井勘探领域的高精度测量要求,开展了基于惯性传感器技术的定位/导航/姿态测量的嵌入式系统应用与开发。
内页插图
目录
第1章 概述
1.1 单片机的定义、发展、特点及应用
1.2 MCS-51单片机概况
1.2.1 MCS-51单片机功能特性
1.2.2 MCS-51单片机引脚说明
1.2.3 MCS-51单片机的最小系统
1.3 Freescale单片机
1.3.1 Freescale种类繁多的个性化单片机系列
1.3.2 FreescaleS12(X)系列单片机简介
1.3.3 FreescaleS12(X)系列单片机的
命名规则
第2章 S12X单片机的结构与组成
2.1 S12X单片机的主要功能与结构
2.1.1 功能特性
2.1.2 内部结构
2.1.3 MC9S12XS单片机的封装与引脚
2.2 运行模式
2.3 振荡器和时钟电路
2.4 MC9S12XS128单片机的最小系统设计
2.5 系统复位、运行监视与时钟选择
2.6 存储器
2.6.1 存储器地址空间分配
2.6.2 存储器映射管理控制
2.7 中断系统
2.7.1 中断源
2.7.2 中断向量
2.7.3 中断处理过程、优先级与嵌套
2.7.4 中断的使用和配置
第3章 指令系统与汇编语言程序设计
3.1 CPU寄存器
3.2 寻址方式
3.3 指令概览
3.3.1 数据传送类指令
3.3.2 算术运算类指令
3.3.3 逻辑运算类指令
3.3.4 程序控制类指令
3.3.5 中断类指令
3.3.6 CPU控制类指令
3.3.7 全局读写类指令
3.3.8 其他指令
3.4 使用汇编语言的程序设计
3.4.1 汇编语言的指令格式与伪指令
3.4.2 汇编语言编程举例
3.4.3 汇编语言编程小提示
第4章 仿真、调试及C语言编程
4.1 S12X单片机开发板
4.2 集成开发环境Code Warrior IDE
4.2.1 CodeWarrior开发入门
4.2.2 完全软件仿真调试
4.2.3 使用BDM的程序下载与在线调试
4.2.4 prm文件内容的简要说明
4.3 使用C语言的S12X单片机编程开发
4.3.1 常用的C语句操作示例
4.3.2 基本变量类型和定义
4.3.3 位域变量的定义和使用
4.3.4 变量的特殊定义
4.3.5 #pragma程序管理
4.3.6 C语言结合汇编语言编程
4.3.7 C语言中断服务程序的编写
4.4 基于CodeWarrior的S12X单片机编程开发实践
4.4.1 应用实例:使用汇编语言的LED跑马灯控制程序
4.4.2 应用实例:使用汇编语言的IRQ中断控制程序
4.4.3 应用实例:使用C语言的LED灯控制程序
4.4.4 应用实例:使用C语言的定时器中断控制程序
第5章 并行输入/输出接口
5.1 并行I/O接口功能描述
5.1.1 并行I/O接口简介
5.1.2 并行I/O接口功能
……
第6章 定时器
第7章 ATD模/数转换
第8章 SCI/SPI串行通信
第9章 PWM脉宽调制
第10章 CAN总线、LIN总线与I2C总线
第11章 XGATE外设协处理器
第12章 μC/OS-II嵌入式操作系统应用
第13章 S12X单片机综合应用系统实例
第14章 S12XS128开发平台的DIY设计与使用
附录A S12X汇编指令索引表
附录B CQUS12X开发板全电路原理图
附录C ASCH码表
参考文献
前言/序言
本书的编写背景
MCU技术、FPGA(Field�睵rogrammable Gate Array,现场可编程门阵列)技术和DSP(Digital Signal Processing,数字信号处理)技术,是目前数字电路系统设计领域公认的三大基础性技术,以这三类技术为基础的电子应用系统是目前嵌入式系统的主要表现形式。其中MCU技术最为经典、应用成熟、受众面广。近年来,单片机技术发展迅速,已从传统设计技术走向现代设计技术,其功能、速度、资源正在不断加强,更加易于解决电子系统的嵌入性、低功耗、高可靠性和低价格等问题。单片机技术已经成为广大电子工程师和电类专业大学生必备的技能之一,其重要性是不言而喻的。
由于半导体技术的飞速发展,数字电路系统的技术不断更新,器件频频换代,嵌入式软硬件日新月异,从事MCU类应用开发的课程教师、在校学生、应用工程师等都需要不断补充新知识,跟上新技术的发展。现代单片机系统设计有三个比较明显的变化: ①原来的单片机技术是围绕某个基本芯片如MCS��51系列,在其基础上设计各种外围接口、加扩各种扩展电路; 而现代单片机技术的趋势是选择功能符合、内部资源适用、接口方便的某个单片机型号为核心,配以尽量少的外围元器件来构成目标应用系统,努力形成片上系统(System on a Chip,SoC),这样做的好处是系统更可靠、性价比更高、更能体现单片机的“单”性或者微控制器的“微”性。②因为现代单片机应用系统往往控制更加复杂、功能更为强大、效率更加重要等,导致对单片机应用系统的软件要求更高,这就不单要学会汇编语言编程,还要掌握C语言编程开发方法,甚至还可能引入嵌入式实时操作系统。③传统的单片机硬件调试往往采用价格高、非标准的第三方仿真器系统、并且是借用仿真器的MCU实现并不完全的仿真,最后才擦写芯片固化程序; 而如今的单片机都已采用了内置的可以反复擦写10万次以上的Flash存储区,支持在线调试系统、在线下载程序,使得单片机的开发调试更为方便快捷。
在教学方面,现在国内各个大专院校都开设有“单片机”课程,原先大多以MCS��51系列8位单片机为蓝本,MCS��51单片机在2000年以前的教学中几乎一统天下,至今也还有许多学校在使用。但在近几年,这种情况逐渐有所变化,如清华大学、上海交通大学、北京航空航天大学、苏州大学、天津大学等众多学校早在多年前就转入以Freescale(飞思卡尔)单片机为蓝本的教学,目前加入这个行列的学校越来越多。当然还有讲述以ARM为核的32位单片机技术的学校。单片机教学的变化、更新应是大势所趋。
缘于应用发展和教学需求,又希望站在一个较高的起点上,但却面临目前可选教材较少的状况,并且没有适合的基于通用软件、硬件工具的基础教材,所以本书编者在收集整理最新中外资料的基础上着手编写本书。为了帮助读者理解和掌握现代单片机应用技术,本书主要以Freescale(飞思卡尔)半导体公司的获得广泛应用的S12(X)S12(X)泛指S12系列或S12X系列。系列16位单片机为蓝本,讲述单片机的基础知识、接口方法和应用技术,其中的软件开发环境采用通用的CodeWarrior,硬件教学平台采用“飞思卡尔大学计划”配备的S12XDT512SLK开发板或者国内相关单位的S12XS128开发板。本书在编排上按照教学特点分模块展开,由浅入深、循序渐进; 在讲述上力求简明扼要、浅显易懂,并力求理论与实际的平衡、通用与具体的平衡; 在内容上以入门为主、追求实用,轻于内部原理性描述,重于资源性描述及其应用方法。
关于Freescale(飞思卡尔)
Freescale(飞思卡尔)半导体公司是全球最大的半导体公司之一,其前身为Motorola(摩托罗拉)半导体部,2004年从摩托罗拉公司分拆上市。它从1953年开始从事半导体业务,是世界半导体产业与技术的开拓者,为汽车电子、消费电子、工业控制、网络和无线市场设计并制造了众多的嵌入式半导体产品, 在微控制器领域长期居于全球市场领先地位,如公司的MC68HC05是世界产量第一的8位单片机(产量排名第二的是8051单片机),又如在2007年7月推出业内第一的针脚兼容的8位与16位微控制器——QE128系列。公司的微控制器产品系列齐全,根据位数(8位、16位、32位等)不同、封装形式(DIP、SOIC、QFP等)不同、温度范围不同、所含模块不同等构成了庞大的飞思卡尔微控制器产品系列,应用于嵌入式系统的各个领域,以可靠性高、性价比高和应用方便引导着微控制器的发展。
Freescale(飞思卡尔)半导体公司一贯重视与学界的合作。目前已与中国教育部合作,在清华大学、上海交通大学、东北大学、北京航空航天大学、苏州大学、天津大学等20余所大学建立了示范教学实验室,在同济大学、河南工业大学、山东大学、重庆大学等50多所大学建立了嵌入式处理器(MCU/DSP)开发应用中心或实验室。公司推广的大学计划成员越来越多,持续举办的全国性应用设计大奖赛和“飞思卡尔”杯全国大学生智能车竞赛也已成为教育部倡导的全国性重点赛事。各相关学校在嵌入式系统科研和人才培养方面都取得了许多可喜的成绩,包括各种应用设计,有的已经产业化。相信会有更多的大学加入到飞思卡尔公司的大学计划中来,也相信会有更多的科技工作者加入到飞思卡尔公司的产品应用行列中来,以进一步推动中国微处理器应用技术的教学与研发工作,促进嵌入式产业发展和人才培养。
Freescale 单片机产品线齐全,涵盖了从8位(HC08、HCS08、RS08系列)、16位(S12、S12X系列)到32位的全系列MCU产品,选择余地大、新产品多。Freescale各系列单片机又分化出各种子系列,多达几百个型号,个性化十足,目的是为用户提供芯片级的嵌入式解决方案。例如针对汽车电子,Freescale就提供了全面、清晰的产品选型指南; 又如,面向可再生能源和高能效家用电器应用领域的MC56F8006,面向楼宇控制和高端医疗的MCF5225x和MCF51CN128/64以及面向测量和医疗应用的 LH/LL和MCF51EM256产品,这些产品都具有独特的性能,非常适合各细分市场的需求。Freescale近年来在新兴领域也颇有建树,如在智能电网、医疗电子、LED照明、绿色节能等领域推出多个适用产品。2011年又新推出了基于ARM Cortex�睲的业界速度最快的kinetis系列微控制器。
S12和S12X系列单片机是Freescale 16位单片机中的主流产品,它们基于广泛使用的增强的HCS12内核。而S12X系列是S12系列的增强型产品,通常,S12(X)是泛指S12系列或S12X系列。S12X系列是高性能的16位单片机,总线频率进一步提高到最高50MHz,其性能达到了原HCS12器件5倍。特别地,S12X系列还提供了业界首个外设协处理器XGATE模块,形成双核处理。这类多用途、高效处理器实现了高达80MIPS的附加处理能力,这种并行处理器模块利用增强DMA功能,通过提供外围模块、RAM 和 I/O 端口之间的高速数据处理与传输,将一些诸如基本网关活动和相关外设处理的任务从主CPU上卸载,其并行架构实现了对于中断可进行更多的无需CPU介入的处理并使设计工程师可以避免核心功能与中断处理间的冲突。实际上,S12X 拥有一般只能在32位MCU上找到的高效能力以及多核处理能力。此外,S12X还增加了一个新型的通信协议——FlexRay模块,它能为高级控制应用提供高达10Mbps的数据速率。
本书的具体内容
本书兼顾S12系列和S12X系列单片机,涉及的单片机型号即为目前主流的S12XD、S12XE系列和S12XS系列,它们均向前兼容S12系列。其中,MC9S12XD512单片机是通用型,并且是“飞思卡尔大学计划”配备开发板所使用的核心芯片; MC9S12XS128单片机是低成本的,并且是“全国大学生智能车大赛”指定使用的核心芯片。Freescale 16位单片机的子系列众多,但各型号间的基本结构特性、硬件接口有较大的相通性,并且软件程序也是基本兼容的。
本书共14章。第1章介绍国内外单片机的发展、现状与应用,同时简要描述了传统MCS��51系列单片机的基础知识以及Freescale系列单片机的分类、特点。第2~12章以Freescale S12X系列16位单片机为蓝本,分别讲述S12X单片机的结构与组成、指令系统与汇编语言程序设计、仿真调试及C语言编程、并行输入/输出接口、定时器、A/D模/数转换、SCI/SPI串行通信、PWM脉宽调制、CAN/LIN/I2C总线、XGATE外设协处理器、μC/OS�并蚯度胧讲僮飨低秤τ玫龋�并以应用的角度列出了相关模块的使用和配置方法。第13章给出了使用S12X单片机实现两个综合应用的嵌入式系统实例。第14章描述了S12XS128开发平台的DIY设计制作及其参考资源。
书中各章节配有一些硬件电路实例和软件程序实例,单片机与常用外设的接口方法贯穿在全书之中,所给出的汇编语言程序或C语言程序均已在CodeWarrior集成开发环境与S12XDT512单片机开发板或S12XS128单片机开发板上调试通过。
单片机技术的学习
本书在内容编排上虽然是按照Freescale S12X系列16位单片机的组成原理和功能模块逐项展开的,但其中体现的技术和方法并不唯一针对某具体型号的芯片,大部分方法其实是通用的,需要读者在学习和应用的过程中融会贯通; 而且,基于Freescale单片机的硬件或软件设计单元在其各系列单片机之间可以很容易地进行移植,有的甚至可以直接沿用。另外,如果作为较少学时的课程教材,本书最后4章可以安排为自学内容。
单片机技术的学习方法首先是模仿验证、吸收消化,然后才是结合应用、自主创新。在这个学习过程中,需要领会单片机的结构原理、单元部件功能、常规接口方法、特殊应用方案等,要让单片机“动起来”解决实际问题,还要掌握汇编语言编程、C语言编程、调试系统、下载程序等方法,至于应用对象的行业知识可通过交流、查询得到补充。
单片机应用系统设计涉及的相关技术很多,包括MCU结构原理、数字逻辑电路、模拟电子电路、硬件设计与制作、汇编语言编程、C语言编程、仿真调试、低功耗、抗干扰以及各种互联接口等技术,在短时间内全面掌握这些技术对于初学者来说是非常困难的。如果学习者具有深厚的基本功自然更好,假设有所欠缺也无妨,可以在单片机技术学习和应用的过程中重新回顾理解。实际上,有些知识或技术可以边用边学甚至用通了再反学,在应用中提高并积累,有
单片机原理及应用:使用Freescale S12X构建嵌入式系统 下载 mobi epub pdf txt 电子书 格式