书籍详情
项目驱动:单片机应用设计基础
作者:周立功 主编,陈明计 等编著
出版社:北京航空航天大学出版社
出版时间:2011-07-01
ISBN:9787512404922
定价:¥33.00
购买这本书可以去
内容简介
这本《项目驱动——单片机应用设计基础》由周立功主编陈明计等编著,全书以80C51单片机为主,通过项目驱动的方法融合相关知识点。内容主要分两部分:第一部分为第1~4章,以SDCC51编程语言为基础,深入浅出地介绍如何使用嵌入式C编程来控制单片机各种外设部件,并给出常用C编程算法。第二部分为第5~7章,重点介绍TinyOS51嵌入式多任务操作系统的基本原理,及其在80C51单片机中的实现,并针对同一工程项目给出使用前后台程序和嵌入式多任务操作系统两种不同的编程方法。通过这两种方法的比较,可使读者了解嵌入式多任务操作系统在项目编程中的优势。本书注重在教学中强化学生的动手训练,强调理论与实践相结合。读者通过本书的学习,可熟练掌握嵌入式C的编程方法,并初步掌握嵌入式多任务操作系统的编程知识。《项目驱动——单片机应用设计基础》可作为大学本科、高职高专电子信息、自动化、机电一体化、计算机等专业的教材,也可作为电子爱好者的自学用书,还可作为从事单片机应用开发工程技术人员的参考资料。
作者简介
暂缺《项目驱动:单片机应用设计基础》作者简介
目录
第1章 深入理解嵌入式C 1.1 概述 1.1.1 特性 1.1.2 引脚排列与描述 1.1.3 特殊功能寄存器 1.2 单片机最小系统与开发工具 1.2.1 Tiny51核心模块 1.2.2 复位电路 1.2.3 晶体振荡电路 1.2.4 单片机在线仿真与编程 1.3 SDCC扩展 1.3.1 SDCC简介 1.3.2 应用示例 1.3.3 关键字与数据类型 1.4 存储器类语言 1.4.1 存储类型 1.4.2 存储模式 1.4.3 特殊功能寄存器数据类型 1.4.4 位数据类型 1.4.5 存储器绝对寻址 1.4.6 指针 1.5 函数 1.5.1 函数参数和局部变量 1.5.2 覆盖 1.5.3 使用专用寄存器组 1.6 深入理解嵌入式C 1.6.1 概述 1.6.2 方法 1.6.3 函数调用与参数传递 1.6.4 函数返回 1.6.5 局部变量存储 1.7 经典范例程序设计 1.7.1 LED流水灯范例 1.7.2 蜂鸣器驱动范例 1.7.3 数码管动态扫描显示驱动范例 1.7.4 键盘动态扫描驱动范例第2章 特殊功能部件与外设 2.1 中断系统 2.1.1 中断概念 2.1.2 80C51的中断结构 2.1.3 相关寄存器 2.1.4 中断向量 2.1.5 中断操作 2.1.6 使能和禁止中断 2.2 定时/计数器 2.2.1 相关寄存器 2.2.2 定时/计数器模式 2.2.3 定时器查询延时 2.2.4 定时器中断延时 2.2.5 无源蜂鸣器驱动程序 2.2.6 数码管动态扫描演示程序 2.2.7 测量负脉冲 2.3 看门狗 2.3.1 看门狗的作用 2.3.2 看门狗的工作原理 2.3.3 看门狗定时器的结构 2.3.4 寄存器描述 2.3.5 看门狗周期值设置 2.3.6 应用示例 2.4 I2C总线及其驱动程序 2.4.1 I2C简介 2.4.2 决策 2.4.3 软件接口 2.4.4 基本时序代码 2.4.5 外部接口代码 2.4.6 E2PROM读/写范例 2.4.7 CAT1024驱动程序 2.4.8 温度的测量 2.5 串行口及其驱动程序 2.5.1 硬件基础 2.5.2 决策 2.5.3 软件接口 2.5.4 初始化 2.5.5 发送数据 2.5.6 接收数据 2.5.7 测试用例第3章 数据结构与计算方法初步 3.1 简单阈值控制算法 3.1.1 算法原理 3.1.2 应用实例 3.2 循环队列 3.2.1 队列的逻辑结构和基本运算 3.2.2 队列的存储结构 3.2.3 循环队列的运算 3.3 常用检错算法 3.3.1 奇偶校验 3.3.2 和校验 3.3.3 循环冗余校验 3.4 应用实例 3.4.1 Hex文件 3.4.2 通信编程第4章 保险箱密码锁控制器(方案一) 4.1 概述 4.1.1 保险箱 4.1.2 锁芯机械结构 4.1.3 密码锁控制器 4.1.4 密码锁工作原理 4.2 准备工作 4.2.1 概述 4.2.2 使用说明 4.2.3 硬件概要设计 4.2.4 软件概要设计 4.3 硬件驱动设计 4.3.1 延时驱动 4.3.2 锁驱动 4.3.3 可复用的硬件驱动 4.4 虚拟驱动设计 4.4.1 虚拟锁驱动 4.4.2 虚拟键盘驱动 4.4.3 虚拟蜂鸣器驱动 4.4.4 虚拟显示器驱动 4.4.5 虚拟存储器驱动 4.5 主程序设计 4.5.1 准备工作 4.5.2 编写代码 4.6 直流电机及其功率接口 4.6.1 概述 4.6.2 直流电机的工作原理 4.6.3 直流电机的单向驱动 4.6.4 直流电机的双向驱动第5章 TinyOS51嵌入式操作系统微小内核 5.1 基础知识 5.1.1 概述 5.1.2 头文件 5.1.3 变量命名规则 5.1.4 范例分析 5.1.5 setjmp与longjmp的实现 5.2 最简单的多任务模型 5.2.1 双任务切换模型 5.2.2 待解决的问题 5.2.3 setTaskJmp()的实现 5.2.4 任务切换模型范例分析 5.3 协作式多任务操作系统 5.3.1 整体规划 5.3.2 任务控制块 5.3.3 内部变量初始化 5.3.4 创建任务 5.3.5 启动多任务环境 5.3.6 任务切换 5.3.7 删除任务 5.3.8 小结 5.4 时间片轮询多任务操作系统 5.4.1 概述 5.4.2 整体规划 5.4.3 任务控制块 5.4.4 内部变量初始化 5.4.5 创建任务 5.4.6 启动多任务环境 5.4.7 任务调度 5.4.8 时钟节拍中断 5.4.9 longjmpInIsr() 5.4.10 任务延时 5.4.11 删除任务 5.5 信号量 5.5.1 概述 5.5.2 整体规划 5.5.3 任务控制块 5.5.4 内部变量初始化 5.5.5 信号量定义 5.5.6 创建信号量 5.5.7 获得信号量 5.5.8 发送信号量 5.5.9 删除任务 5.6 消息邮箱 5.6.1 概述 5.6.2 整体规划 5.6.3 任务标志与消息邮箱 5.6.4 创建消息邮箱 5.6.5 获得消息 5.6.6 发送消息第6章 程序设计基础 6.1 任务设计 6.1.1 任务的分类 6.1.2 任务的划分 6.2 系统函数使用概述 6.2.1 系统函数总览 6.2.2 中断服务程序调用函数的限制 6.2.3 系统函数的分类 6.3 系统函数的使用场合 6.3.1 时间管理 6.3.2 资源同步 6.3.3 行为同步 6.4 时间管理 6.5 临界区 6.6 信号量 6.6.1 简介 6.6.2 信号量的工作方式 6.6.3 任务同步中断服务程序 6.6.4 任务间同步 6.6.5 资源同步 6.7 消息邮箱 6.7.1 简介 6.7.2 消息邮箱的工作方式 6.7.3 中断服务程序与任务通信 6.7.4 任务间数据通信第7章 保险箱密码锁控制器(方案二) 7.1 软件开发流程 7.2 决策 7.2.1 概述 7.2.2 总体目标 7.2.3 使用说明 7.2.4 限制条件 7.2.5 具体开发目标 7.2.6 其他决策内容 7.3 模块划分 7.3.1 概述 7.3.2 硬件层 7.3.3 设备驱动层 7.3.4 虚拟设备层 7.3.5 应用层 7.4 接口定义 7.4.1 密码的输出、存储与显示 7.4.2 应用层接口 7.4.3 虚拟设备层接口 7.4.4 设备驱动层接口 7.5 编写代码 7.5.1 概述 7.5.2 可复用的驱动 7.5.3 I2C驱动 7.5.4 CAT1024驱动 7.5.5 虚拟键盘驱动 7.5.6 虚拟蜂鸣器驱动 7.5.7 人机交互程序 7.5.8 主程序 7.6 测试、验收与小结参考文献
猜您喜欢