《单片机使用速成》结合当前流行的多种系列的单片机,从应用的角度讲解其原理和使用方法。作者根据自己多年使用单片机的体会,对与应用有关的单片机内部硬件及其操作进行了详细解释,为了追求举一反三的效果,对同样的功能单元通过多家公司的单片机对照来讲解。对从未涉及单片机使用但具有一定电子技术基础的人员来说,通过《单片机使用速成》的学习可以很快将单片机自如地作为自己的设计元件,打破在单片机、DSP、ARM等智能芯片面前望而却步的局面;对于会初步使用一两种单片机的人员来说,通过《单片机使用速成》的学习可以进一步理解单片机的组成规律,掌握快速消化各种单片机使用说明书的能力,根据不同的应用目的选择不同的单片机以提高所设计产品的性价比。
《单片机使用速成》可作为高等院校相关专业单片机课程的教材,也可作为工程技术人员的参考书。
用单片机完成课题的一般步骤: 全面了解课题所要解决的问题,选择合适的单片机及外围电路方案。 根据计划选用单片机内部资源,仔细消化单片机厂家提供的产品手册。 设计详细的硬件原理图、机械及其他部分的图纸、软件流程图。 对系统的关键部分做局部试验,进一步确定详细方案。 生成电路PCB图,制作线路板,完成所需机械加工、软件设计并采购元器件 组装调试,修改并完善设计,总结技术,整理资料。 以全新的方式从应用角度讲解单片机 以程序员的目光理解单片机电路 让零编程基础的学习者学会使用单片机 让浅基础学习者掌握应用单片机的本领 配套典型单片机的实验评估板,边学习边实验
要是在10年前,写一本名副其实的《单片机使用速成》简直是不可能的,因为单片机本身及其配套开发还不够健全。所谓速成,就是让没有接触过单片机但有一定电子技术基础的学习者在短时间内学会使用单片机,我们很早就萌生了这个想法,也一直在努力做这方面的工作,现在终于信心十足地推出了本书及其配套实验评估板。
对于单片机的初学者,可以归纳为以下4种类型:第1类,对电子技术较为精通却苦于不愿意学习编程而在单片机面前徘徊不前;第2类,对编程较为熟悉却苦于不太懂电路也不愿意深入了解单片机;第3类,已经能吃力地使用一种较简单的单片机却不愿意再花费精力涉足其他更优秀的单片机;第4类,有一定电路和编程基础却觉得单片机太难学而一直未下决心深入学习。
无论是哪一类人员,我们都可以通过以下措施来让他们达到“速成”的目的:
提供很薄而实用的一本书,从感官上让学习者产生信心和兴趣;
复杂问题简单化,只用小篇幅的一章内容就让从未学习过软件及编程者能够用单片机开发平台入门编写和调试程序;
对于一个现代电子工程师来说,不懂硬件什么也不能干,不懂软件什么也干不成;
硬件是基础,软件更重要。本书从程序员编程的角度,把一般单片机的电路组成原理呈现在学习者面前,同时又把几种典型的单片机电路特点尽可能地展现出来。
坚持举一反三的原则,在介绍单片机组成规律的基础上,把典型的单片机基本操作尽可能阐述清楚,并且用配套的实验评估板当场编程、当场演示,使学习者产生成就感和更深的兴趣。训练学习者从厂家的使用说明书中找答案,而不是把教科书作为座右铭,由此而快速理解单片机厂家资料,根据不同的应用目的选择不同的单片机以提高所设计产品的性价比。由于时间仓促,再加水平有限,书中难免有错误和不妥之处,欢迎各位读者不吝赐教。
第1章 导论
l.1 单片机的定义
1.2 现代电子技术中软件的重要性
1.3 单片机使用的一般步骤
1.4 初识单片机
第2章 单片机程序设计入门
2.1 单片机程序设计模型
2.2 程序设计的内容
2.3 单片机c语言程序设计初步
2.3.1 程序的实质
2.3.2 程序码的产生
2.3.3 C程序的一般结构
2.3.4 C程序的编写
2.4.Keil开发环境的使用
2.4.1 Keil工程的建立
2.4.2 Keil程序的编写和调试
2.5 IAR开发环境的使用
2.5.1 IAR工程的建立
2.5.2 IAR程序的编写和调试
第3章 单片机的上电、复位、时钟及中断
3.1 电源的接人
3.2 复位
3.2.1 复位的概念
3.2.2 复位电路
3.3 初始化
3.4 系统时钟
3.4.1 单时钟方案系统
3.4.2 C8051F02x单片机多时钟方案
3.4.3 MSP430xlxx单片机多时钟方案
3.4.4 ATmegal6单片机多时钟方案
3.5 中断的概念
第4章 单片机的端口操作
4.1 单片机端口设计原理
4.1.1 CMOS数字端口
4.1.2 CMOS单片机端口的基本原理
4.2 端口设计举例
4.2.1 AT89C205l单片机端口设计举例
4.2.2 C805lF02x单片机端口设计举例
4.2.3 MSP430xlxx单片机端口设计举例
4.2.4 ATmegal6单片机端口设计举例
第5章 单片机的定时器操作
5.1 定时器的组成原理
5.2 基本51系列单片机定时器操作举例
5.2.1 定时器0/1的工作方式0:13位计数器/定时器
5.2.2 定时器0/l的工作方式l:16位计数器/定时器
5.2.3 定时器0/l的工作方式2:8位自动重装载的计数器/定时器
5.2.4 定时器0的工作方式3:两个8位计数器/定时器
5.3 C805lF02x单片机定时器使用举例
5.3.1 C805lF020单片机中的基本51定时器操作
5.3.2 C805lF02x单片机的定时器3的操作
5.4 MSP430xlxx单片机定时器使用举例
5.4.1 MSP430xlxx单片机定时器A原理
5.4.2 MSP430xlxx单片机定时器A使用举例
5.5 ATmegal6单片机定时器使用举例
5.5.1 ATmegal6单片机定时器T/C0的组成原理
5.5.2 ATmegal6单片机定时器F/C0使用举例
第6章 单片机的通信口操作I
6.1 UART的使用
6.1.1 UART设计原理
6.1.2 基本51单片机UART通信_
6.1.3 C805lF02x单片机UART通信
6.1.4 MSP430xlxx单片机UART通信
6.1.5 ATmegal6单片机UART通信
6.2 I2c接口的使用
6.2.1 I2C接口设计原理
6.2.2 C8051F02x系列单片机I2C通信
6.2.3 MSP430xlxx单片机I2C通信
6.2.4 ATmegal6单片机I2C通信
6.3 SPI端口的使用
6.3.1 SPI设计原理
6.3.2 SPI端口操作举例
第7章 单片机其他资源的操作及基于单片机的系统举例
7.1 单片机A/D的操作
7.1.1 A/D转换器概述
7.1.2 ATmegal6单片机的A/D操作
7.2 单片机脉宽调制器的操作
7.3 看门狗定时器的操作
7.3.1 看门狗定时器的原理
7.3.2 C8051F02x单片机看门狗操作
7.3.3 MSP430x1xx单片机看门狗使用
7.3.4 ATmegal6单片机看门狗使用
7.4 单片机Flash的修改操作
7.4.1 修改Flash的意义
7.4.2 C8051F02x单片机:Flash修改操作
7.5 基于单片机的系统举例
7.5.1 3种评估实验板的介绍
7.5.2 基于MXP430xlxx单片机评估实验板的自动打钟器
7.5.3 基于MSP430x1xx单片机评估实验板的自动温度调节器
实例速查表
参考文献
1.1单片机的定义
如今说到计算机(俗称电脑),大家都不陌生。不知不觉中,计算机已经深入到人类社会的方方面面,航空航天、工业控制、交通运输、办公自动化、医学检查、数字通信、家用电器、儿童玩具等行业无处没有计算机的存在。可以说,没有电子就没有电子时代,没有计算机就没有数字时代。
那么,什么是计算机?简单地说,计算机是具有严格执行人们预先设定好的程序来完成指定任务的核心控制器的一种机器。这些指定的任务几乎可以包含我们所能想象的一切,如识别按键的命令、与远程设备通信、测量某种流体的压力、识别人的指纹信息、记录飞行器的运行参数、显示l幅图像、打印1份文件、打开或关闭1个阀门、控制1个电机转动等等。完成这些任务所进行的操作都是通过输入设备或输出设备来实现的,对计算机操作者来说所涉及到的就是一个个的输入输出设备,对输入输出设备来说所涉及到的是一条条的电路线端,称为输人端口电路或输出端口电路,参见图1-1所示的计算机结构示意图。这些端口一般表现为高电平或低电平的数字状态,虽然有时也表现为模拟状态,但这种模拟状态也是由数字状态来操纵的。换句话说,计算机的基本部分的外观就是一个个的端口,这些端口线路既可以识别高/低电平也可以输出高/低电平。从这些端口看进去,其内部主要由核心运算及控制器(CPU-central Processing unit)、存储器以及特殊功能电路群组成,CPU按照一定的节拍,不断地从程序存储器读取指令,完成一个个的逻辑运算或模拟运算,最终以端口的形式和外界联系。
图l一1所示的虚线范围就是计算机基本部分,这部分对大中型计算机来说可能由很多设备组成,对小型计算机来说可能由几块电路板组成,对微型计算机来说可能仅由几个芯片组成。如果此部分由单个芯片来完成,就可以称之为单片机了。尽管早期的单片机还要配合一些芯片才能组成基本系统,如今这样定义单片机还是很合适的。