① 单片机教程
王云 51单片机教程,就很好,身边很多同学在用。
② 单片机的原理及应用
单片机到底是什么呢?就是一个电脑,只不过是微型的,麻雀虽小,五脏俱全:它内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。排烟罩VCD等等的家电里面都可以看到它的身影!......它主要是作为控制部分的核心部件。x0dx0a单片机是靠程序工作的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!x0dx0a由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言(近几年,C语言也开始广泛被应用),它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC上来运行,家用PC也是承受不了的。x0dx0a目前最常用的单片机为MCS-51,是由美国INTEL公司(生产CPU的英特尔)生产的,89C51是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的,其内核兼容MCS-51单片机。x0dx0a单片微型计算机简称单片机,是典型的嵌入式微控制器(MicrocontrollerUnit),x0dx0a单片机芯片x0dx0a常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。x0dx0a由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。x0dx0aINTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列单片机系统。因为简单可靠而性能不错获得了很大的好评。尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到目前基于8031的单片机还在广泛的使用。在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。x0dx0a现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。x0dx0a单片机是指芯片本身,而单片机系统是为实现某一个控制应用需要由用户设计的,是一个围绕单片机芯片而组建的计算机应用系统,这是单片机应用系统。单片机开发系统是指单片机开发调试的工具。单片机自问世以来,性能不断提高和完善,其资源又能满足很多应用场合的需要,加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、价格低廉等特点,正在逐步取代现有的多片微机应用系统。单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。x0dx0a2应用分类x0dx0a编辑x0dx0ax0dx0a单片机作为计算机发展的一个重要分支领域,根据目前发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。x0dx0a通用型/专用型x0dx0ax0dx0a这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。x0dx0a总线/非总线型x0dx0ax0dx0a这是按单片机是否提供并行总线来区分的。总线型单片机单片机普遍设置有并行地址总线、数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。x0dx0a控制型/家电型x0dx0ax0dx0a这是按照单片机大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。x0dx0a3发展历史x0dx0a编辑x0dx0ax0dx0a单片机诞生于1971年,经历了SCM、MCU、SoC三大阶段,早期的SCM单片机都是8位或4位的。其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列MCU系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTELi960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。x0dx0a而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位Soc单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。x0dx0a当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。x0dx0a主要阶段x0dx0ax0dx0a早期阶段x0dx0aSCM即单片微型计算机(SingleChipMicrocomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel公司功不可没。x0dx0a中期发展x0dx0aMCU即微控制器(MicroControllerUnit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子技术厂家。从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。在发展MCU方面,最着名的厂家当数Philips公司。x0dx0aPhilips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩。x0dx0a当前趋势x0dx0aSoC嵌入式系统(SystemonChip)式的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决,因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。
③ 什么是单片机应用系统 关于单片机应用系统 的了解
1、单片机系统是指单片机能正常工作所必须的外围元件,主要由单片机、晶振电路和复位电路构成。而输入、输出部分则通过单片机的I/O口实现。一般地,单片机应用系统是指为实现特定的功能,由单片机、外围接口电路及合适的软件等构成的应用系统。
2、单片机是将中央处理器(CPU)、随机存储器(RAM)、只读存储器定时器芯片和一些输入、输出接口电路集成在一个芯片上的微控制器。
3、同微型计算机系统一样,单片机应用系统也是由硬件和软件组成的,硬件是应用系统的基础,软件则在硬件的基础上对其资源进行合理调配,从而完成应用系统所要求的任务,是功能的体现者,二者相互依赖,缺一不可。
4、单片机系统的开发过程一般包括系统的总体设计、硬件设计、软件设计和系统总体调试四个阶段。这几个设计阶段并不是相互独立的,它们之间相辅相成、联系紧密,在设计过程中应综合考虑、相互协调、各阶段交叉进行。
④ 开发单片机应用系统需要什么样的开发环境
明确任务
分析和了解项目的总体要求,并综合考虑系统使用环境、可靠性要求、可维护性及产品的成本等因素,制定出可行的性能指标。
(2)划分软、硬件功能
单片机系统由软件和硬件两部分组成。在应用系统中,有些功能既可由硬件来实现,也可以用软件来完成。硬件的使用可以提高系统的实时性和可靠性;使用软件实现,可以降低系统成本,简化硬件结构。因此在总体考虑时,必须综合分析以上因素,合理地制定硬件和软件任务的比例。
(3)确定希望使用的单片机及其他关键部件
根据硬件设计任务,选择能够满足系统需求并且性价比高的单片机及其他关键器件,如A/D、D/A转换器、传感器、放大器等,这些器件需要满足系统精度、速度以及可靠性等方面的要求。
(4)硬件设计
根据总体设计要求,以及选定的单片机及关键器件,利用Protel等软件设计出应用系统的电路原理图。
(5)软件设计
在系统整体设计和硬件设计的基础上,确定软件系统的程序结构并划分功能模块,然后进行各模块程序设计。
单片机程序设计语言可分为三类:
➢ 机器语言 :又称为二进制目标代码,是CPU硬件唯一能够直接识别的语言(在设计CPU时就已经确定其代码的含义)。人们要计算机所执行的所有操作,最终都必须转换成为相应的机器语言由CPU识别、控制执行。CPU系列不同,其机器语言代码的含义也不尽相同。
➢ 汇编语言 :由于机器语言必须转换为二进制代码描述,不便于记忆、使用和直接编写程序,为此产生了与机器语言相对应的汇编语言。用汇编语言编写的程序执行速度快,占用存储单元少,效率高。
➢ 高级语言 :高级语言具有很好的可读性,使程序的编写和操作都十分方便,目前广泛使用的高级语言是C51。
汇编语言和高级语言都必须被翻译成机器语言之后才能被CPU识别。
⑤ 单片机原理及应用技术
单片机的工作原理与计算机CPU的工作原理是一样的,主要是利用片内的半导体存储器存放用户的程序和数据,单片机的核心中央微处理器CPU中有指令寄存器、指令译码器,程序计数器等部件,由程序计数器寻找下一条要执行的指令,找到后,将指令送给指令寄存器,再由指令译码器翻译执行该指令,完成对指令功能的操作;单片机的工作就是不断地取指令、分析指令、执行指令的循环过程。在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。
单片机的周期
时钟周期
时钟周期也叫振荡周期或晶振周期,即晶振的单位时间发出的脉冲数,一般有外部的振晶产生,比如12MHZ=12×106,即每秒发出12000000个脉冲信号,那么发出一个脉冲的时间就是时钟周期,也就是1/12μs。通常也叫做系统时钟周期,是计算机中最基本的、最小的时间单位。
谁说的翡翠毛料贵?这里成本价就可以买到天然好毛料!
广告
在8051单片机中把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。
机器周期
在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。
⑥ 单片机应用程序的开发步骤
具体步骤如下:
1、首先,开启我们的keil软件,具体的安装步骤就不做太多的介绍了;
开启后,点击菜单栏上的Project选项,创建我们的工程,如图所示;
编译完成后,在我们的文件夹下找到.hex的文件,将其烧写到我们的芯片中即可。
⑦ 51单片机应用系统典型模块开发大全(第2版) 什么语言写的(c语言还是汇编)
主要是C语言,夹带一些模块是汇编语言。还有单片机典型模块设计实例导航.也是C语言。
⑧ 《从零开始学单片机技术》pdf下载在线阅读,求百度网盘云资源
《从零开始学单片机技术》(刘建清)电子书网盘下载免费在线阅读
资源链接:
链接:
书名:从零开始学单片机技术
作者:刘建清
出版社:国防工业
出版年份:2006-8
页数:356
内容简介:
本书以实战操作为基础,用最简单的方法,将初学者领进单片机世界的大门。本书首先介绍了单片机的基础知识,然后简要阐述了单片机的指令系统、简单程序设计、存储器和I/0接口扩展、中断、定时器以及串行通信技术,最后对单片机常用接口技术(LED显示接口、键盘接口、LCD液晶接口、SPI总线接口和看门狗电路、12C总线接口、红外遥控接口、语音接口、A/D和D/A转换接口)和单片机的应用系统设计进行了精要介绍。
本书附赠光盘一张,光盘中包含有Keil、MedWin中文版软件以及书中所有实验的源程序。书中提供的所有实验均具有较高的实用性和代表性,且全部通过了实验板验证。
本书可供电子技术人员、单片机爱好者、业余电子爱好者阅读,也可作为相关专业的教学用书或教学参考书使用。
⑨ 单片机应用技术的目录
序
前言
第1章单片机技术概述
1.1微型计算机的基本概念、组成及分类
1.1.1微型计算机的组成
1.1.2微型计算机的分类
1.2单片机技术发展的特点
1.3常见的单片机
1.3.18051内核的单片机
1.3.2其他单片机
1.4单片机的应用
1.4.1单片机的应用范围
1.4.2单片机应用系统的设计
1.5习题
第2章STC12C5410AD的增强型8051内核
2.1STC12C5410AD单片机的引脚
2.2STC12C5410AD单片机的结构
2.2.1STC12C5410AD单片机的内部结构
2.2.2CPU结构
2.3STC12C5410AD单片机的存储器
2.3.1存储器空间及存储器
2.3.2数据Flash存储器的操作
2.4习题
第3章数字输入/输出端口
3.1STC12C5410AD单片机的I/O口及工作模式
3.2STC12C5410AD单片机I/O口的结构
3.3STC12C5410AD单片机I/O口的使用
3.4习题
第4章指令系统
4.1助记符语言
4.1.1助记符语言概述
4.1.2操作码
4.1.3操作数
4.2指令格式及分类
4.2.1汇编语言的概念及格式
4.2.2指令代码的存储格式
4.2.3指令中的符号约定
4.3寻址方式
4.4数据传送类指令
4.4.1数据传送指令
4.4.2数据交换指令
4.4.3栈操作指令
4.5逻辑操作类指令
4.5.1对累加器A进行的逻辑操作
4.5.2双操作数逻辑操作指令
4.6算术运算类指令
4.6.1加减运算指令
4.6.2乘除运算指令
4.6.3增量、减量指令
4.6.4二一十进制调整指令
4.7位操作指令
4.7.1位数据传送指令
4.7.2位状态控制指令
4.7.3位逻辑操作指令
4.7.4位条件转移指令
4.8控制转移类指令
4.9习题
第5章汇编语言程序设计及仿真调试
5.1汇编语言程序设计基础知识
5.1.1伪指令
5.1.2汇编语言程序设计的一般步骤和基本框架
5.2汇编语言程序设计举例
5.3利用KeilμVision2集成开发环境调试程序
5.3.1KeilμVision2集成开发环境简介
5.3.2KeilμVision2集成开发环境中调试8051单片机汇编语言程序的方法
5.4利用ISP工具将程序下载到单片机中验证程序
5.4.1ISP下载程序的运行过程
5.4.2使用ISP工具下载程序的步骤
5.5习题
第6章C语言程序设计及仿真调试
6.1C语言程序设计基础
6.1.1数据类型
6.1.2基本运算符和表达式
6.1.3C语言程序设计
6.1.4函数
6.1.5指针
6.1.6结构与联合
6.1.7枚举和位运算
6.1.8预处理
6.2KeilC对ANSIC的扩展
6.2.1KeilC51扩展关键字
6.2.2KeilC51指针
6.2.3KeilC51函数
6.2.4STC12C5410AD单片机C51程序框架
6.3习题
第7章中断
7.1中断的概念
7.2STC12C5410AD单片机的中断系统及其管理
7.2.1中断源及其优先级管理
7.2.2单片机中断处理过程
7.2.3中断请求的撤除
7.2.4关于外部中断
7.2.5中断程序编程举例
7.2.6中断使用过程中需要注意的问题
7.3习题
第8章定时/计数器
8.1STC12C5410AD单片机的定时/计数器
8.1.1定时/计数器的结构及工作原理
8.1.2定时/计数器方式和控制寄存器
8.1.3定时/计数器的工作方式
8.1.4定时/计数器量程的扩展
8.1.5定时/计数器编程举例
8.1.6定时/计数器应用中应注意的问题
8.2STC12C5410AD的PCA/PWM模块
8.2.1PCA/PWM模块的结构
8.2.2PCA/PWM模块的特殊功能寄存器
8.2.3PCA/PWM模块的工作模式
8.2.4PCA/PWM模块韵应用
8.3习题
第9章串行通信
9.1通信的一般概念
9.1.1并行通信与串行通信
9.1.2串行通信的两种基本方式
9.2STC12C5410AD单片机的串行接口
9.2.1串行接口的控制寄存器
9.2.2串行接口的工作方式
9.2.3多处理机通信
9.2.4波特率的设定
9.2.5串行接口通信应用举例
9.2.6计算机与单片机之间的串行通信
9.3STC112C5410AD单片机的SPI接口
9.3.1SPI接口的结构
9.3.2SPI接口的数据通信
9.3.3SPI接口的应用举例
9.4习题
第10章模数转换器
10.1模数转换器的结构及相关寄存器
10.1.1模数转换器的结构
10.1.2参考电压源
10.1.3与ADC有关的特殊功能寄存器
10.2模数转换器的应用
10.3习题
第11章复位、省电方式和时钟
11.1复位
11.2省电方式
11.2.1省电方式的控制
11.2.2省电方式的应用
11.3时钟
11.4习题
第12章单片机应用系统设计举例
12.1系统要求
12.2需求分析
12.3系统硬件设计
12.4系统软件设计
12.5习题
附录
附录ASTC12C5410AD单片机指令表
附录BSTC12C5410单片机寄存器定义文件STC12.INC内容
附录CSTC12C5410AD单片机寄存器头文件STC12.H内容
附录DMSComm控件简介
附录E逻辑符号对照表
附录FASCII码表
参考文献
……