1、2022-8-21单片机应用技术单片机应用技术(C语言版)语言版)第第1章章 单片机基础知识概述单片机基础知识概述2022-8-222022-8-24参考书:参考书:1 1、胡汉才、胡汉才 编著编著单片机原理及其接口技单片机原理及其接口技术术清华大学出版社清华大学出版社2 2、郭天祥、郭天祥 编著编著新概念新概念5151单片机单片机C C语言教语言教程程电子工业出版社电子工业出版社3 3、彭伟、彭伟 编著编著单片机单片机C C语言程序设计实训语言程序设计实训100100例例基于基于8051+Proteus8051+Proteus仿真仿真电子电子工业出版社工业出版社2022-8-252022-8
2、-262022-8-272022-8-282022-8-29第第1 1章章 单片机基础知识概述单片机基础知识概述目目 录录 1.1 1.1 单片机概述单片机概述 1.2 1.2 单片机单片机的特点及应用领域的特点及应用领域 1.3 1.3 单片机单片机学习的预备知识学习的预备知识 1.4 1.4 电平电平2022-8-2101.1 1.1 单片机基础知识概述单片机基础知识概述 19461946年由美国宾夕法尼亚大学研制年由美国宾夕法尼亚大学研制 ENIACENIAC(Electronic Numerical Integrator And Electronic Numerical Integra
3、tor And calculatorcalculator),运算速度),运算速度 50005000次次/秒,功耗秒,功耗150kw/h150kw/h,占地,占地170m170m2 2,造价造价100100万美元。万美元。1.1.1 1.1.1 什么是单片机什么是单片机2022-8-211微机微机是微型计算机的简称,它是由主机和外部设备是微型计算机的简称,它是由主机和外部设备等组成的。等组成的。如图如图1.11.1所示。所示。单片机单片机就是把微机的主机部分(图就是把微机的主机部分(图1.11.1虚线框内的)虚线框内的)集成到一块集成电路芯片上所得到的。集成到一块集成电路芯片上所得到的。2022
4、-8-212微处理器微处理器 存储器存储器 外部设备外部设备 接口适配器接口适配器 地址总线地址总线数据总线数据总线控制总线控制总线图图1-1 1-1 微机的组成微机的组成2022-8-213微型计算机组成结构微型计算机组成结构微型计算机系统微型计算机系统硬件硬件微型计算机微型计算机(主机主机)微处理器微处理器(CPU)软件软件外围设备外围设备运算器运算器控制器控制器存储器存储器(内存内存)RAMROM外部设备外部设备辅助设备辅助设备 输入设备输入设备(键盘、扫描仪、语音识别仪键盘、扫描仪、语音识别仪)输出设备输出设备(显示器、打印机、绘图仪、显示器、打印机、绘图仪、)辅助存储器辅助存储器(磁
5、带、磁盘、光盘磁带、磁盘、光盘)输入输入/输出接口输出接口(PIO、SIO、CTC、ADC、DAC)(I/O接口接口)总线总线(AB、DB、CB)系统软件系统软件(操作系统,编辑、编译程序,故障诊断操作系统,编辑、编译程序,故障诊断,监控程序监控程序)应用软件应用软件(科学计算,工业控制,数据处理科学计算,工业控制,数据处理)程序设计语言程序设计语言(机器语言、汇编语言、高级语言机器语言、汇编语言、高级语言)电源电路时钟电路2022-8-214 单片机:单片机:将中央处理器(将中央处理器(CPUCPU)、随机)、随机存储器(存储器(RAMRAM)、只读存储器()、只读存储器(ROMROM)、中
6、断)、中断系统、定时器系统、定时器/计数器以及计数器以及I/OI/O接口电路等接口电路等主主要微型计算机的部件要微型计算机的部件集成在一块芯片上,使集成在一块芯片上,使其其具有计算机的基本功能具有计算机的基本功能。叫做单片微型计算机(叫做单片微型计算机(Single Chip Single Chip MicrocomputerMicrocomputer,SCMSCM),简称单片机。),简称单片机。单片机为工业测控而设计,又称微控制器单片机为工业测控而设计,又称微控制器 (MCU)(MCU)。2022-8-2152022-8-2161.1.2 1.1.2 单片机的发展历史单片机的发展历史 一一
7、、4 4位单片机阶段位单片机阶段 19751975年美国德克萨斯仪器公司(年美国德克萨斯仪器公司(TITI)首)首次推出次推出4 4位单片机位单片机TMS-1000TMS-1000。4 4位单片机主要用于家用电器、电子玩具等。位单片机主要用于家用电器、电子玩具等。2022-8-217二、二、8 8位单片机阶段位单片机阶段 1976-1978 1976-1978 初级初级8 8位单片机位单片机 Intel MCS-48 Intel MCS-48 系列系列 1978-1982 1978-1982 高档高档8 8位单片机位单片机 Intel MCS-51Intel MCS-51系列:系列:-51-5
8、1子系列:子系列:8031/8051/87518031/8051/8751-52-52子系列:子系列:8032/8052/87528032/8052/8752 低功耗型低功耗型80C3180C31高性能型高性能型80C25280C252廉价型廉价型89C2051/105189C2051/1051 8 8位单片机由于功能强,被广泛用于位单片机由于功能强,被广泛用于工业控制、智能接口、仪器仪表等各个工业控制、智能接口、仪器仪表等各个领域。领域。2022-8-218 三、三、1616位单片机阶段位单片机阶段 1983 1983 年年IntelIntel公司推出了公司推出了1616位单片机位单片机MC
9、S-MCS-9696系列。系列。8098/80968098/8096、80C198/80C196,80C198/80C196,DSPDSP 如:凌阳如:凌阳1616位单片机、位单片机、AVR16AVR16位单片机、位单片机、PIC16PIC16位单片机等位单片机等 1616位单片机可用于高速复杂的控制系统。位单片机可用于高速复杂的控制系统。2022-8-219四、四、3232位单片机位单片机 近年来,各个计算机生产厂家已进入近年来,各个计算机生产厂家已进入更高性能的更高性能的3232位单片机研制、生产阶段。位单片机研制、生产阶段。应用于电子收款机、机顶盒、保安系应用于电子收款机、机顶盒、保安系
10、统、自动售货机、医疗系统、航空系统统、自动售货机、医疗系统、航空系统等。等。2022-8-2201.2 1.2 单片机的特点及应用领域单片机的特点及应用领域主要内容主要内容 1.2.1 1.2.1 单片机的特点单片机的特点 1.2.2 1.2.2 单片机的应用领域单片机的应用领域 1.2.3 1.2.3 单片机发展趋势单片机发展趋势 2022-8-221 一、单片机的存储器一、单片机的存储器ROMROM和和RAMRAM是严格是严格区分的区分的 ROMROM称为程序存储器,只存放程序、称为程序存储器,只存放程序、固定常数及数据表格。固定常数及数据表格。RAMRAM则为数据存储器,用作工作区及则为
11、数据存储器,用作工作区及存放用户数据。存放用户数据。二、采用面向控制的指令系统二、采用面向控制的指令系统 为满足控制的需要,单片机有为满足控制的需要,单片机有更强的更强的逻辑控制能力逻辑控制能力,特别是具有很强的,特别是具有很强的位处理位处理能力。能力。1.2.1 1.2.1 单片机的特点单片机的特点2022-8-222三、单片机的三、单片机的I/OI/O引脚通常是多功能的引脚通常是多功能的 由于单片机芯片上引脚数目有限,为由于单片机芯片上引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的方法。引脚处于何种功能,用了引脚功能复用的
12、方法。引脚处于何种功能,可由指令来设置或由机器状态来区分。可由指令来设置或由机器状态来区分。2022-8-223四、单片机的外部扩展能力强四、单片机的外部扩展能力强 扩展扩展ROMROM、RAMRAM,I/OI/O接口,定时器接口,定时器/计数器,中断系统等,计数器,中断系统等,与许多通用的微与许多通用的微机接口芯片兼容,给应用系统设计带来机接口芯片兼容,给应用系统设计带来极大的方便和灵活性。极大的方便和灵活性。2022-8-224 五、体积小,成本低,运用灵活五、体积小,成本低,运用灵活 易于产品化,它能方便地组成各种智能易于产品化,它能方便地组成各种智能化的控制设备和仪器,做到机电一体化。
13、化的控制设备和仪器,做到机电一体化。六、面向控制六、面向控制 能针对性地解决从简单到复杂的各类控能针对性地解决从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。制任务,因而能获得最佳的性能价格比。七、适应性强、抗干扰七、适应性强、抗干扰 在各种恶劣的环境下都能可靠地工作,在各种恶劣的环境下都能可靠地工作,这是其它类型计算机无法比拟的。这是其它类型计算机无法比拟的。八八、方便实现多机和分布式控制方便实现多机和分布式控制 使整个控制系统的效率和可靠性大为提高使整个控制系统的效率和可靠性大为提高2022-8-225单片机的应用范围十分广泛,主要的应用单片机的应用范围十分广泛,主要的应用领域有:
14、领域有:工业控制工业控制仪器仪表仪器仪表 计算机外部设备与智能接口计算机外部设备与智能接口 商用产品商用产品家用电器家用电器 消费类电子产品消费类电子产品 通讯设备和网络设备通讯设备和网络设备 儿童智能玩具儿童智能玩具 汽车,建筑机械,飞机等大型机械设备汽车,建筑机械,飞机等大型机械设备 交通控制设备交通控制设备1.2.2 1.2.2 单片机的应用领域单片机的应用领域2022-8-2261.2.3 1.2.3 单片机技术的发展单片机技术的发展 一、片内程序存储器的发展一、片内程序存储器的发展单片机的程序存储器(单片机的程序存储器(ROMROM)经历了)经历了ROMROMEPROMEPROME
15、E2 2PROMPROMFLASH MEMORYFLASH MEMORY的发展,容量也的发展,容量也由小变大。由小变大。二、看门狗定时器二、看门狗定时器 单片机在运行时由于干扰等原因,可能会单片机在运行时由于干扰等原因,可能会出现软件混乱。出现软件混乱。看门狗电路就是用于在看门狗电路就是用于在CPUCPU处于软件混乱时处于软件混乱时使系统正常工作的一种恢复方法。使系统正常工作的一种恢复方法。2022-8-227 三、节电模式三、节电模式 在节电模式下,在节电模式下,CPUCPU和部分部件进入睡和部分部件进入睡眠状态,但片内眠状态,但片内RAMRAM和寄存器等部件保持工和寄存器等部件保持工作状态
16、,以达到节能的目的。作状态,以达到节能的目的。四、加强输入输出功能四、加强输入输出功能 某些单片机具备大功率的输入某些单片机具备大功率的输入/输出接输出接口,可直接驱动荧光显示器、口,可直接驱动荧光显示器、LCDLCD和和LEDLED。还有一些增加了接口或定时器的数量,还有一些增加了接口或定时器的数量,或者增加了新型的接口。或者增加了新型的接口。2022-8-228 五、单片机制造工艺提高五、单片机制造工艺提高 半导体制作工艺的提高,使单片机的体半导体制作工艺的提高,使单片机的体积可以做的更小,时钟频率更高。可以集成积可以做的更小,时钟频率更高。可以集成更多的存储器和部件。降低产品的价格。更多
17、的存储器和部件。降低产品的价格。六、在线编程和调试技术六、在线编程和调试技术 一些新型的单片机实现了在系统编程一些新型的单片机实现了在系统编程(ISPISP)和在应用编程()和在应用编程(IAPIAP)功能。)功能。2022-8-229补充:常用单片机简介补充:常用单片机简介主要内容主要内容1 MCS-511 MCS-51系列单片机系列单片机2 ATMEL892 ATMEL89系列单片机系列单片机3 STC89/123 STC89/12系列单片机系列单片机4 4 常见的其它系列单片机介绍常见的其它系列单片机介绍2022-8-2301 MCS-511 MCS-51系列单片机系列单片机 MCS-5
18、1MCS-51系列单片机:系列单片机:IntelIntel在在1980-19821980-1982年陆续推出了年陆续推出了指令系统完全相同、内部结构指令系统完全相同、内部结构基本相同基本相同的的80318031、80518051和和87518751等型号单片机,等型号单片机,初步形成初步形成MCS-51MCS-51系列,被奉为系列,被奉为“工业控制单工业控制单片机标准片机标准”。2022-8-231 MCS-51MCS-51增强型单片机:增强型单片机:MCS-51MCS-51系列单系列单片机除了片机除了89C5189C51之外,主要包括之外,主要包括89C5289C52、89C5489C54、
19、89C5889C58、89C51689C516等型号。等型号。它们的它们的区别区别主要是三个方面:主要是三个方面:一是片内一是片内RAMRAM由由128B128B增加到增加到256B256B;二是多一个定时器二是多一个定时器/计数器计数器;三是片内三是片内Flash ROMFlash ROM由由4KB4KB分别分别增加增加到到了了 8KB8KB、16KB16KB、32KB32KB和和64KB64KB。2022-8-232 不同厂家的产品可能还增加有其它外不同厂家的产品可能还增加有其它外设或功能,但引脚和指令都是设或功能,但引脚和指令都是完全兼容完全兼容的。的。为了讨论方便起见,为了讨论方便起见
20、,我们将我们将89C5189C51(包括(包括80318031、80518051等)等)称为称为基本型基本型,其其他的型号称为他的型号称为增强型增强型。2022-8-2332022-8-2342 ATMEL892 ATMEL89系列单片机系列单片机 Atmel Atmel公司生产的公司生产的8989系列单片机是市场上系列单片机是市场上比较具有代表性的比较具有代表性的MCS-51MCS-51单片机。单片机。一、一、ATMEL89ATMEL89系列单片机型号说明系列单片机型号说明 AT89AT89系列单片机型号由三个部分组成,系列单片机型号由三个部分组成,它们分别是它们分别是前缀、型号、后缀前缀、
21、型号、后缀,其格式如下:,其格式如下:AT89CAT89C(LVLV、S S)XXXX-XXXXXXXX-XXXX 2022-8-2351 1、前缀、前缀 前缀由字母前缀由字母“ATAT”组成,它表示该器组成,它表示该器件是件是ATMELATMEL公司的产品。公司的产品。2022-8-2362 2、型号、型号 型号由型号由“89CXXXX89CXXXX”或或“89LVXXXX89LVXXXX”或或“89SXXXX89SXXXX”等表示。等表示。“8 8”表示该芯片为表示该芯片为80518051内核芯片内核芯片“9 9”表示芯片内部含表示芯片内部含FlashFlash存储器;存储器;“C C”表
22、示是表示是CMOSCMOS产品;产品;“LVLV”表示低电压产品;表示低电压产品;“S S”表示含可下载的表示含可下载的FlashFlash存储器存储器,具有具有ISPISP可可在线编程功能。在线编程功能。“XXXXXXXX”为表示型号的数字,为表示型号的数字,如:如:5151、5252、20512051、82528252等。等。2022-8-237 3 3、后缀、后缀 后缀由后缀由“XXXXXXXX”四个参数组成,与产品四个参数组成,与产品型号间用型号间用“-”号隔开。号隔开。后缀中第一个参数后缀中第一个参数“X X”表示速度表示速度后缀中第二个参数后缀中第二个参数“X X”表示封装表示封装
23、 后缀中第三个参数后缀中第三个参数“X X”表示温度范围表示温度范围 后缀中第四个参数后缀中第四个参数“X X”说明产品日期说明产品日期2022-8-2382022-8-239 二、二、AT89C51AT89C51单片机单片机 AT89C51AT89C51单片机特点:单片机特点:与与MCS-51MCS-51产品完全兼容;产品完全兼容;具有具有4K4K字节可在系统编程的字节可在系统编程的FlashFlash内部程内部程序存储器(序存储器(ROMROM););全静态操作:全静态操作:0Hz0Hz24MHz24MHz;128128字节内部字节内部RAMRAM;2022-8-240 3232根可编程根
24、可编程I/OI/O线;线;2 2个个1616位定时器位定时器/计数器;计数器;5 5个中断源;个中断源;可编程串行可编程串行UARTUART通道;通道;低功耗空闲和掉电方式;低功耗空闲和掉电方式;2022-8-241 三、三、AT89S52AT89S52单片机单片机 AT89S52AT89S52单片机特点:单片机特点:与与MCS-51MCS-51产品兼容;产品兼容;具有具有8K8K字节可在系统编程的字节可在系统编程的FlashFlash内部内部程序存储器(程序存储器(ROMROM),可写),可写/擦擦10001000次;次;4.0V4.0V5.5V5.5V的工作电压范围;的工作电压范围;全静态
25、操作:全静态操作:0Hz0Hz24MHz24MHz;三级程序存储器加密;三级程序存储器加密;256256字节字节内部内部RAMRAM;2022-8-242 全双工异步串行通信通道;全双工异步串行通信通道;低功耗空闲和掉电方式;低功耗空闲和掉电方式;通过中断中止掉电方式;通过中断中止掉电方式;看门狗定时器;看门狗定时器;两个数据指针。两个数据指针。2022-8-2433 STC89/123 STC89/12系列单片机系列单片机 一、一、STC 89C51RC/RDSTC 89C51RC/RD系列单片系列单片机机 STC 89C51RC/RDSTC 89C51RC/RD系列单片机是宏晶系列单片机是
26、宏晶科技推出的新一代超强抗干扰、高速、低科技推出的新一代超强抗干扰、高速、低功耗的单片机。功耗的单片机。指令代码完全兼容传统指令代码完全兼容传统8051 8051 单片机,单片机,1212时钟时钟/机器周期和机器周期和6 6时钟时钟/机器周期可任机器周期可任意选择。意选择。2022-8-244 STC 89C51RC/RD系列单片机特点系列单片机特点如下:如下:增强型增强型6/126/12时钟时钟/机器周期机器周期8051 CPU8051 CPU;工作电压:工作电压:5.5V5.5V3.4V3.4V(5V5V单片机)单片机)/3.8V3.8V2.0V2.0V(3V 3V 单片机);单片机);工
27、作频率范围:工作频率范围:0 040MHz40MHz;用户应用程序空间用户应用程序空间 4K 4K 64K 64K 字节;字节;片上集成片上集成12801280字节字节/512/512字节字节RAMRAM;通用通用I/OI/O口口32 32 个;个;ISPISP(在系统可编程)无需专用编程器(在系统可编程)无需专用编程器/仿仿真器;真器;2022-8-245 内部内部E E2 2PROM PROM 功能;功能;硬件看门狗;硬件看门狗;内部集成内部集成MAX810MAX810专用复位电路(专用复位电路(D D版本才有)版本才有),外部晶体外部晶体20M20M以下时,可省外部复位电路;以下时,可省
28、外部复位电路;共共3 3个个1616位定时器位定时器/计数器;计数器;外部中断外部中断4 4路;路;通用异步串行口,还可用定时器软件实现多个通用异步串行口,还可用定时器软件实现多个UARTUART;工作温度范围:工作温度范围:0 0 7575,40408585;封装:封装:LQFP-44,PDIP-40,PLCC-44,LQFP-44,PDIP-40,PLCC-44,PQFP-44 PQFP-44。2022-8-2464 4 常见的其它系列单片机介绍常见的其它系列单片机介绍 AVRAVR单片机单片机 MotorolaMotorola单片机单片机 MicroChipMicroChip单片机单片机
29、 ScenixScenix单片机单片机 EPSONEPSON单片机单片机 东芝单片机东芝单片机 GMS90GMS90单片机单片机 华邦单片机华邦单片机 ZilogZilog单片机单片机 NSNS单片机单片机 AX1001AX1001单片机单片机2022-8-2471.2.4 1.2.4 单片机系统的开发工具及环境单片机系统的开发工具及环境一、单片机一、单片机C C语言开发工具语言开发工具Keil C51Keil C51Keil C51Keil C51是是Keil SoftwareKeil Software公司出品的公司出品的5151系列兼容单片机系列兼容单片机C C语言软件开发系统。语言软件开
30、发系统。提供丰富的库函数和功能强大的集成开提供丰富的库函数和功能强大的集成开发调试工具发调试工具Vision4Vision4,全,全WindowsWindows界面,界面,生成的目标代码效率非常高。生成的目标代码效率非常高。2022-8-2482022-8-249 二、二、ProteusProteus嵌入式系统仿真与开发平嵌入式系统仿真与开发平台台 ProteusProteus:ProteusProteus是一个嵌入式系统仿是一个嵌入式系统仿真与开发平台,是英国真与开发平台,是英国Labcenter Labcenter ElectronicsElectronics公司出版的公司出版的EDAED
31、A工具软件。工具软件。ProteusProteus的功能:的功能:它不仅具有仿真数字、它不仅具有仿真数字、模拟电路的功能,还具备由微控制器及外模拟电路的功能,还具备由微控制器及外围器件组成的混合电路的仿真功能。围器件组成的混合电路的仿真功能。ProteusProteus的先进性:的先进性:它是目前世界上最它是目前世界上最先进、最完整的嵌入式系统设计与仿真平先进、最完整的嵌入式系统设计与仿真平台。台。2022-8-2502022-8-2512022-8-2522022-8-253单片机系统设计中芯片的选择单片机系统设计中芯片的选择 现在市场上的单片机品种很丰富,现在市场上的单片机品种很丰富,89
32、C5189C51只是个基本型。在进行单片机系统设只是个基本型。在进行单片机系统设计的时候就要计的时候就要根据系统的需求,灵活地选根据系统的需求,灵活地选用具有不同特性的单片机。用具有不同特性的单片机。2022-8-2542022-8-2552022-8-2562022-8-2571.3 单片机学习的预备知识单片机学习的预备知识(一)(一)十进制十进制N ND D 有十个数码有十个数码0 09 9、逢十进一。、逢十进一。十进制用于计算机输入输出,人机交互十进制用于计算机输入输出,人机交互。(二)(二)二进制二进制N NB B 两个数码两个数码:0:0、1,1,逢二进一逢二进一。二进制为机器中的数
33、据形式。二进制为机器中的数据形式。(三)(三)十六进制十六进制N NH H 十六个数码十六个数码:0:09,A9,AF,F,逢十逢十六进一六进一。十六进制用于表示二进制数。十六进制用于表示二进制数。不同进位制数以下标或后缀区别不同进位制数以下标或后缀区别,十进制数可不带下十进制数可不带下标。标。如如:101:101、101101D D、101101B B、101101H H、101H101H1.3.1数制及转换数制及转换1.1.数制数制表1-2-1 不同进位记数制对照表十进制 二进制 十六进制 十进制二进制 十六进制000000810008100011910019200102101010A30
34、0113111011B401004121100C501015131101D601106141110E701117151111F2022-8-2581.4 电平电平电平电平:电压的高低。(:电压的高低。(0,10,1)5V TTL5V TTL:输出:大于输出:大于2.4V2.4V为高,小于为高,小于0.4V0.4V为为低;输入:大于低;输入:大于2V2V为高,小于为高,小于0.8V0.8V为低。为低。5V COMS5V COMS:输出:大于输出:大于4.99V4.99V为高,小于为高,小于0.01V0.01V为低;输入:大于为低;输入:大于3.5V3.5V为高,小于为高,小于1.5V1.5V为低。为低。