单片机嵌入式应用的在线开发方法

副标题:无

作   者:邵贝贝著

分类号:

ISBN:9787302096580

微信扫一扫,移动浏览光盘

简介

《单片机嵌入式应用的在线开发方法》是讲述单片机在线开发方法的一本专著,也是清华大学研究生精品课“嵌入式实时系统与单片机应用”的教材。 《单片机嵌入式应用的在线开发方法》分绍如何从最小硬件系统设计开始,建立开发单片机应用系统的基本硬件条件,而不必使用仿真器等单片机工发工具;如何写单片机监控程序建立单片机应用软件调试的基本环境;如何用C语言编写应用程序;如何利用商用软件Code Warrior的教学版本,或使用自由软件Linux下的GCC交叉C编译器,将嵌入式实时多任务操作系统μC/OS-II移植到单片机上,实现基于RTOS的开发环境。 《单片机嵌入式应用的在线开发方法》对16位单片机MC9S12为例,给出监控程序源代码,还提供了单片机各I/O模块的设备驱动程序。这种在线开发方法同样适用于8位、32位单片机。随书所附光盘中有免费软件开发工具和大量原文资料。 《单片机嵌入式应用的在线开发方法》为造就IT高手指路,也供开发单片机应用系统的工程技术人员参考。更多>>

目录

引言
第1章 色彩斑斓的单片机世界
1.1 单片机世界
1.2 开发单片机应用不再需要仿真器
1.3 Motorola(Freescale)单片机
1.4 MC68HCO8系列单片机
1.4.1 Nitron系列单片机
1.4.2 面向低端产品的8位单片机
1.4.3 通用型8位单片机
1.4.4 带LCD(LED)驱动接口的8位单片机
1.4.5 用于电动机控制的8位单片机
1.4.6 带CAN总线接口的8位单片机
1.4.7 支持LIN总线的8位单片机
1.4.8 带USB接口的8位单片机
1.4.9 用于彩色液晶监视器控制的8位单片机
1.4.10 带无线通信功能的8位单片机
1.5 MCS08系列8位单片机
1.6 MC68HC11系列单片机
1.7 MC68HC12系列单片机
1.8 MC9S12系列单片机
1.8.1 MC9S12A系列和B系列16位单片机
1.8.2 带CAN总线的MC9S12D系列16位单片机
1.8.3 MC9Sl2DP256单片机
1.8.4 带液晶驱动的16位单片机系列
1.8.5 低供电电压的16位单片机
1.8.6 带USB接口的16位单片机
1.8.7 带以太网接口的16位单片机
1.9 MC68HC16系列单片机
1.10 Motorola(Freescale)的32位单片机
1.10.1 以68K、CPU32为CPU的32位单片机
1.10.2 以ColdFire为CPU的32位单片机
1.10.3 用于控制的以PowerPC为CPU的32位单片机
1.10.4 用于通信的以PowerPC为CPU的32位单片机
1.10.5 Motorola(Freescale)的ARM系列32位单片机
1.11 Motorola(Freescale)的DSP型单片机
1.11.1 普通16位DSP型单片机
1.11.2 使用增强型内核DSP56800E的16位DSP型单片机
1.11.3 StarCore系列DSP型16位单片机
1.11.4 24位、32位的DSP型单片机
第2章 单片机基本系统的硬件设计
2.1 16位单片机
2.1.1 MC9S12系列单片机
2.1.2 MC9S12DP256单片机
2.2 初识单片机最小硬件系统
2.2.1 16位单片机MC9S12的最小系统
2.2.2 8位单片机MC68HC08GP32的最小系统
2.2.3 32位单片机MC68332的最小系统
2.2.4 监控程序
2.2.5 体验机器码
2.3 异步串行通信
2.3.1 串行通信协议RS-232标准
2.3.2 ASCII码
2.3.3 串行数据格式
2.3.4 RS-232-C电缆的连接方法
2.3.5 通信速率
2.4 MC9S12单片机系统的硬件设计
2.4.1 时钟电路
2.4.2 串行口的RS-232驱动电路
2.4.3 电源电路
2.4.4 复位电路
2.4.5 BDM接口
2.4.6 单片机并行口及驱动能力
2.4.7 调试显示
2.5 运行模式
2.5.1 单片运行模式
2.5.2 扩展运行模式
2.6 BDM调试器及硬件设计
2.6.1 BDM调试器
2.6.2 BDM调试器硬件设计
第3章 用汇编语言编程
3.1 CPU的内部寄存器结构
3.1.1 16位单片机HC11/12的CPU内部结构
3.1.2 8位单片机HC08的CPU内部结构
3.1.3 32位单片机68K/ColdFire的CPU内部结构
3.2 内存空间分配
3.2.1 基本内存空间分配
3.2.2 内存空间的扩展
3.3 汇编指令集
3.4 指令按功能分类
3.4.1 数据传送指令
3.4.2 算术与逻辑运算指令
3.4.3 程序控制指令
3.5 CPU12的模糊逻辑指令
3.5.1 模糊化指令
3.5.2 模糊推理指令REV和REVW
3.5.3 反模糊化指令WAV
3.6 指令按寻址方式分类
3.6.1 隐含寻址
3.6.2 立即数寻址
3.6.3 直接寻址
3.6.4 扩展寻址
3.6.5 变址寻址
3.6.6 带自动加、减5位偏移量的间接寻址
3.6.7 相对寻址
3.7 汇编指令表
3.8 指令的机器码组织
3.9 用汇编语言编写程序
3.9.1 汇编程序的格式
3.9.2 汇编管理指令
3.10 汇编语言程序设计举例
3.10.1 检查SCI输入端口状态
3.10.2 输入一个字符
3.10.3 输出一个字符
3.10.4 输出空格
3.10.5 显示字符串
3.10.6 输入并显示字符
3.11 码的转换类子程序
3.11.1 输入一个十六进制数
3.11.2 输入一个字节
3.11.3 输入两个字节的十六进制数
3.11.4 输出两个字节的十六进制数
3.12 汇编语言编程技巧
3.13 用汇编语言写BDM调试命令
3.13.1 后台调试模式
3.13.2 进入BDM模式
3.13.3 BDM通信协议
3.13.4 BDM命令
3.13.5 BDM的ROM
第4章 建立单片机运行环境和写监控程序
4.1 建立单片机运行环境
4.2 堆栈指针初始化
4.3 时钟初始化
4.3.1 找出与时钟相关的寄存器
4.3.2 初始化时钟系统
4.4 串行口初始化
4.4.1 与串行口有关的寄存器
4.4.2 初始化串行口
4.5 监控程序
4.6 人机对话
4.7 命令字与跳转表
4.8 建立CPU在内存中的固定映像
4.8.1 CPU响应中断后的栈结构
4.8.2 CPU寄存器的固定映像
4.9 执行程序
4.10 显示与修改内存
4.10.1 显示内存
4.10.2 修改内存
4.11 显示和修改CPU寄存器
4.12 向RAM下载程序
4.12.1 数据文件格式
4.12.2 下载程序
4.13 Flash的擦除与写入
4.13.1 与Flash有关的寄存器
4.13.2 Flash擦除与写入的步骤
4.14 设置断点
4.14.1 在RAM程序中设置断点
4.14.2 在Flash程序中设置断点
4.15 中断向量表管理
4.16 系统调用表
4.17 帮助信息
第5章 用C语言开发应用程序
5.1 C语言是开发单片机应用软件的有力工具
5.2 开发嵌入式应用的C编译器的特点
5.3 交叉编译和C语言程序运行环境的建立
5.3.1 应用程序的构成与模块化程序结构
5.3.2 全局变量与局部变量
5.3.3 函数的结构与函数间参数的传递
5.3.4 C语言中的I/O语句
5.3.5 程序模块的框架与组织
5.3.6 程序的链接与定位
5.4 交叉C编译器及用C语言扩展监控程序
5.4.1 EEPROM
5.4.2 EEPROM擦除和编程步骤
5.4.3 EEPROM编程命令字及其含义
5.4.4 EEPROM的写保护区设定
5.5 嵌入式应用中的I/O
5.5.1 关于“Hello,World”
5.5.2 自己写printf()函数
第6章 使用嵌入式实时操作系统
6.1 嵌入式实时操作系统
6.1.1 嵌入式实时操作系统简介
6.1.2 嵌入式实时操作系统μC/OS-Ⅱ
6.2 移植μC/OS-Ⅱ
6.2.1 重新定义内核的大小和功能
6.2.2 OS_CPU.H
6.3 编写与硬件相关的代码
6.3.1 中断服务子程序OSTickISR()
6.3.2 任务堆栈初始化函数OSTaskStkInit()
6.3.3 让优先级最高的就绪态任务开始运行OSStartHighRdy()
6.3.4 任务级任务切换函数OSCtxSw()
6.3.5 中断级任务切换函数OSIntCtxSw()
6.3.6 相关接口函数
6.4 产生时钟节拍中断
6.5 制作用户自己的项目
6.5.1 main.h
6.5.2 main.c
6.5.3 TaskStart.c
6.5.4 task1.c和task2.c
6.5.5 hardware.c
6.5.6 userlib.c
6.5.7 链接与程序定位
6.6 估算μC/OS-Ⅱ占用的RAM资源
6.6.1 μC/OS-Ⅱ中的全局变量
6.6.2 任务控制块
6.6.3 事件控制块
6.6.4 任务堆栈
6.6.5 估算内核占用RAM空间举例
6.7 多任务下的设备驱动
6.7.1 重新认识异步串行口
6.7.2 SCI的中断
6.7.3 用中断方式接收
6.7.4 用中断方式发送
第7章 使用GCC交叉编译器开发HC/S12单片机
7.1 使用免费的GCC交叉编译器
7.2 用GCC开发HC/S12系列单片机
7.2.1 安装“GCC for HCS12”
7.2.2 使用GNU针对MC68HC11/MC68HC12的开发环境
7.2.3 使用范例程序库进行交叉编译
7.3 如何编写makefile文件
7.3.1 简单makefile的书写规则
7.3.2 make命令的使用
7.4 GCCforHCS12编译器
7.4.1 内嵌汇编语言
7.4.2 陷阱、软中断和中断
7.4.3 填写中断向量表
7.4.4 支持页面Flash ROM
7.4.5 编译参数
7.4.6 预处理参数
7.4.7 汇编参数
7.4.8 链接参数
7.4.9 链接器
7.5 hello world工程应用范例
7.5.1 源文件描述
7.5.2 链接地址描述
7.5.3 编译并运行
第8章 单片机软件开发工具
8.1 商用软件开发工具“CodeWarrior for HCS12”
8.2 安装CodeWarrior
8.3 建立工程
8.3.1 使用C编译器
8.3.2 使用汇编器
8.3.3 增加新程序模块
8.4 编写应用程序main.c
8.4.1 main.c
8.4.2 定义装载地址
8.4.3 利用make命令编译
8.5 在目标板上运行程序
8.5.1 向目标机下载程序
8.5.2 运行程序
8.6 建立自己的C程序运行环境
8.7 编译基于μC/OS-Ⅱ的应用程序
第9章 实验系统与I/O模块
9.1 通用I/O接口
9.2 MC9Sl2DP256的片内总线接口
9.2.1 同步串行接口
9.2.2 I^2C总线接口
9.2.3 CAN总线接口
9.2.4 MotorolaS12系列单片机的MSCAN模块
9.2.5 CAN总线实验原理及通信程序设计
9.3 增强型定时器
9.3.1 输入捕捉/输出比较
9.3.2 输入捕捉/输出比较通道
9.3.3 8位脉冲累加器
9.3.4 模数计数器
9.4 PWM樟块
9.4.1 PWM模块概述
9.4.2 PWM波用作D/A转换接口
9.5 A/D模块
9.6 Motorola 16位单片机MC9S12DP256/DG128教学实验系统
9.6.1 概述
9.6.2 硬件电路介绍
第10章 单片机模糊控制
10.1 模糊控制
10.2 模糊控制指令
10.2.1 模糊控制专用指令
10.2.2 模糊控制相关指令
10.3 模糊逻辑的基本概念
10.3.1 模糊集合及隶属度函数
10.3.2 模糊逻辑与模糊变量
10.3.3 模糊推理
10.4 模糊控制原理与模糊控制器结构
10.4.1 模糊化
10.4.2 模糊规则推理
10.4.3 反模糊化
10.4.4 模糊控制的实现
10.4.5 模糊控制器的设计与调整
10.5 模糊控制开发软件
10.5.1 Motorola模糊推理机
10.5.2 MC68HC11模糊推理机
10.5.3 S12逻辑推理机程序
第11章 单片机应用中的电磁兼容问题
11.1 电磁兼容基本概念
11.2 电磁兼容组织与标准
11.3 单片机系统的电磁兼容问题
11.4 噪声的来源与传输
11.4.1 信号线间交叉干扰
11.4.2 来自电源的噪声
11.5 印刷线路板EMC设计
11.5.1 元件的布置
11.5.2 印刷线路板接地线的处理
11.5.3 多层板设计
11.6 常用抗干扰器件
11.6.1 去耦电容
11.6.2 磁性元件
11.6.3 低通滤波器
11.6.4 瞬变干扰吸收器件
11.7 印刷线路板设计中控制噪声的经验
11.7.1 控制噪声源
11.7.2 减小噪声的耦合
11.7.3 减小噪声接收
11.8 单片机自身的抗干扰措施
11.8.1 降低外时钟的频率
11.8.2 时钟监控电路
11.8.3 打开“看门狗”电路
11.8.4 电源电压监控
11.8.5 非法指令中断和剩余程序区处理
附录A MC9S12D系列单片机开发工具包
A.1 概述
A.1.1 HCS12D系列单片机
A.1.2 HCS12开发工具包组件
A.2 MC9Sl2DP256/DG128开发板及与PC通信
A.2.1 MC9Sl2DP256/DG128开发板
A.2.2 开发板上的跳线
A.2.3 开发板的硬件连接
A.2.4 PC的设置
A.3 监控程序及监控命令详解
A.3.1 命令详解
A.3.2 改变波特率
A.3.3 复位、中断向量表
A.3.4 用户可以使用的RAM空间
A.3.5 系统调用
A.4 编译器CodeWarrior for HCS12使用方法入门
A.4.1 建立工程文件
A.4.2 编写main.c程序
A.4.3 定义存储空间分配
A.4.4 应用程序的编译
A.4.5 向开发板下载程序
A.4.6 运行应用程序
A.5 BDM调试器及使用方法
A.5.1 BDM调试器使用方法
A.5.2 设置BDM头的时钟频率
A.5.3 和目标板连接
A.5.4 Help命令
A.5.5 向Flash下载程序
A.5.6 擦除目标板的片内Flash.
A.6 常用BDM调试命令
A.6.1 汇编和反汇编命令
A.6.2 控制目标CPU运行的命令
A.6.3 显示和修改CPU寄存器的命令
A.6.4 显示和修改内存
A.6.5 以S格式读出目标代码
A.6.6 其他BDM命令
附录B 监控程序源代码
附录C CPU12汇编指令表
附录D CPU12指令机器码表
附录E 本书所附光盘说明
参考文献

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

单片机嵌入式应用的在线开发方法
    • 名称
    • 类型
    • 大小

    联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,可直接在线浏览

    loading icon