单片机技术与应用(上篇共上中下3篇)_第1页
单片机技术与应用(上篇共上中下3篇)_第2页
单片机技术与应用(上篇共上中下3篇)_第3页
单片机技术与应用(上篇共上中下3篇)_第4页
单片机技术与应用(上篇共上中下3篇)_第5页
已阅读5页,还剩252页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机技术与应用本讲主题什么是单片机主讲人目录一、什么是单片机二、单片机的特点三、单片机发展历程什么是单片机?PC机CPU存储器I/O接口主板键盘显示器其他输出设备其他输入设备CPU存储器I/O接口集成芯片按键显示器其他输出设备其他输入设备属于微型计算机,具有计算机属性。单片微型计算机(Sigle-Chip-Microcomputer),也简称为单片机(Microcontroller-Unit)或是MCU。1.体积小单片机特点2.价格低3.功能够用单片机特点1.体积小2.价格低3.功能够用3.功能够用单片机特点1.体积小2.价格低单片机芯片1971第一代4位微处理器机诞生单片机发展历程1971第一代4位微处理器机诞生1976MCS-48问世,8位单片机的推出。微处理器与可擦除可编程只读存储器集成在一块芯片内最成功的是INTEL的8051,基于这一内核的单片机系统直到现在还在广泛使用,也是我们学习的基础。单片机发展历程1971第一代4位微处理器机诞生1976MCS-48问世,8位单片机的推出。我国开始使用单片机198216位单片机问世,单片机向微控制器发展。SCMMCU诞生了一批经过市场考验获得良好口碑的单片机制造厂商单片机发展历程1971第一代4位微处理器机诞生1976MCS-48问世,8位单片机的推出。我国开始使用单片机19821990推出32位单片机SOCSCMMCUSoC(System-on-a-Chip):片上系统单片机发展历程1971第一代4位微处理器机诞生1976MCS-48问世,8位单片机的推出。我国开始使用单片机19821990推出32位单片机32位和8位单片机为主导;4位和16位单片机共存。现在精彩纷呈SOCSCMMCU单片机发展历程1971第一代4位微处理器机诞生1976MCS-48问世,8位单片机的推出。我国开始使用单片机19821990推出32位单片机32位和8位单片机为主导;4位和16位单片机共存。现在精彩纷呈SOC未来CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化SCMMCU单片机发展历程本讲主题51单片机芯片型号含义主讲人单片机技术与应用STC89C52RC-40I-PLCC44STC89C5140I-PDIP40单片机芯片型号信息型号前缀后缀STC89C51RC-40I-PDIP40单片机芯片型号信息前缀STC89C51RC-40I-PDIP40产品品牌

AT代表ATmel,是美国的。STC代表宏晶,是中国的。AT89C2051-24PU单片机芯片型号信息型号STC89C51RC-40I-PDIP40“89CXXXX”或“89LVXXXX”或“89SXXXX”

内部含Flash存储器CMOS产品低压产品含有串行下载Flash存储器单片机芯片型号信息型号STC89C51RC-40I-PDIP4080C51内部含有MaskROM(掩模ROM)87C51内部含有EPROM存储器(紫外线可擦除ROM)单片机芯片型号信息型号STC89C51RC-40I-PDIP40“89CXXXX”

flash90为12K90为61K514k528k5315k16k545832k51664k单片机芯片型号信息型号STC89C51RC-40I-PDIP40“89CXXXX”

RC片内RAM为512BRD+1280B单片机芯片型号信息后缀STC89C51RC-40I-PDIP4040X-XXXX

晶振的最高频率表示芯片外部晶振频率最高可接入40MHz单片机芯片型号信息后缀STC89C51RC-40I-PDIP4040X-XXXX

表示温度范围表示商业级,温度范围为0℃~+70℃。X=C表示工业用产品,温度范围为-40~+85℃。X=I表示汽车用产品,温度范围为-40~+125℃。X=A表示军用产品,温度范围为-55~+150℃。X=M单片机芯片型号信息后缀STC89C51RC-40I-PDIP4040X-XXXX

封装双列直插式封装PDIP表面贴装型封装PLCC塑料方型扁平式封装PQFP本讲主题MCS-51单片机的内部结构主讲人单片机技术与应用8051单片机的基本内部组成时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDINT0定时计数器RXDINT1中央处理器(CPU)CPU是单片机芯片中最复杂、最核心的智能部件,完成运算和控制功能。CPU中央处理器(CPU)运算器1控制器2实现算术逻辑运算单片机的神经中枢,主要实现程序译码以及完成输入/输出逻辑控制。中央处理器(CPU)8051单片机内部含有一个8位CPU和一个1位CPU。字节运算以可进行8位算术运算和逻辑运算的单元ALU为核心位运算以可进行位运算的布尔处理器(位处理器)为核心8051是MCS-51系列的8位单片机芯片。单片机CPU内部数据总线或寄存器一次处理数据的位数。存储器存储器单元8051单片机的基本内部组成内部ROM4KB掩膜ROM,用于存放程序、原始数据和表格。内部RAM共256个RAM单元,用户使用低128个字节,用于存放可读写数据,高128个字节被专用特殊功能寄存器占用。时钟电路CPURAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0定时计数器ROMINT1高128个字节离散分布有21个特殊功能寄存器SFR。11个可以进行位寻址。高128B的RAM与CPU控制运算有关(5个)A、B、SP、DPTR、PSW与I/O端口控制有关(4个)与中断控制有关(2个)与定时/计数器控制有关(6个)与串行口控制有关(3个)P0、P1、P2、P3IE、IPTCON、TMODTH0、TL0、TH1、TL1SCON、PCON、SBUF存储器配置1

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

31302928272625242422211

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM62641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM6264

80318751805189C51片内RAM片内ROM256B(字节)4K64K64K8051单片机的基本内部组成并行I/O口:4个8位的I/O口P0、P1、P2、P3。时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0定时计数器INT1定时/计数器:两个16位的定时/计数器,实现定时或计数功能。8051单片机的基本内部组成中断控制系统:5个中断源(外部中断2个,定时/计数中断2个,串行中断1个)时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0定时计数器INT18051单片机的基本内部组成串行口:一个全双工串行口时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0定时计数器INT1时钟振荡电路8051单片机的基本内部组成时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0定时计数器INT1本讲主题51单片机的外形与引脚主讲人单片机技术与应用51单片机的外形封装双列直插的DIP40贴片PLCC44贴片QFP4440只引脚双列封装(直插DIP)双列直插式,是一种传统的封装形式,管脚间距大,占用电路板面积大,便于自制电路板,方便维修。适用学校,培训机构,但是封装体积大,电路板制作成本高,商品里应用较少。40只引脚双列封装(直插DIP)44引脚方形封装方式(贴片PLCC)PLCC为方形贴片形式的,可以直接应用在电路板上,不必钻孔,研发实验教学是可以利用插座,缩短开发生产周期。44引脚方形封装方式(贴片PLCC)>>>>44引脚方形封装方式(贴片PQFP)所占面积更小,成本低,常用于管脚比较多的单片机芯片。44引脚方形封装方式(贴片PQFP)>>>>8051单片机的信号引脚及功能GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCEAALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51EAEAGNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51GNDRSTXTAL1XTAL2P1.1P1.2P1.3P1.4P1.5P1.6P1.7P1.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P3.0VCCALEPSENP0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.0P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.7A0A1A2A3A4A5A6A7A15A14A13A12A11A9A8A10/D0/D1/D2/D3/D4/D5/D6/D7电源访问外部程序存储器控制信号线地址锁存允许信号线访问外部程序存储器读选通信号线地RXD/TXD/INT0/INT1/T0/T1/WR/RD/时钟信号线1时钟信号线2复位信号线12345678910111213141516171819204038393736353433323130292827262524232221AT89S51EA单片机最小系统组成本讲主题主讲人单片机技术与应用单片机最小系统是单片机工作不可或缺的最基本连接电路,指用最少的原件组成单片机可以工作的系统。单片机最小系统单片机最小系统单片机最小系统单片机芯片复位电路时钟振荡电路电源电路电源目前主流单片机的电源分为5V和3.3V这两个标准。STC12C5A60S2的供电开发板是使用外接5V直流电源1直接用USB供电2优点简单、方便,不必额外加入一部分电源电路。缺点只适合固定在某一个地方进行。内部时钟方式片内振荡电路晶振频率通常为6MHZ,12MHZ,11.0592MHZ。

时钟振荡信号的频率取决于晶振的频率。内部时钟方式片内振荡电路电容的作用是帮助晶振起振,并维持振荡信号的稳定。内部时钟方式片内振荡电路采用石英晶振,电容可以在20~40pF之间选择。采用陶瓷谐振器件,电容要适当地增大一些,在30~50pF之间。两个电容通常采用瓷片电容,容量一般取30pF即可。内部时钟方式复位电路复位使单片机内各寄存器的值变为初始状态的操作。复位上位复位上电复位电路由电阻和电容组成。AT89S51

RST/VPDR15.6KΩC110μF+5V上位复位AT89S51

RST/VPDR15.6KΩC110μF+5V典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位;适当组合RC的取值就可以保证可靠的复位。手动复位手动按下一个复位按键,让程序初始化重新运行的过程。手动复位手动复位AT89S51

RST/VPDR15.6KΩ+5VS1当复位按键按下,RST脚将会出现高电平,实现复位。混合复位AT89S51

RST/VPDR15.6KΩC110μF+5VC110μFS1上电复位和手动复位相结合,组成混合复位。单片机最小系统单片机的最小系统,包括单片机芯片、电源、时钟电路以及复位电路。本讲主题并行IO口P0的结构与功能主讲人单片机技术与应用4个并行I/O口每一个口都有8位。P0P1P2P351单片机的并行I/O端口——P0口并行I/O端口P0口有8位,每位中都有相同的结构。由一个转换开关、一个D锁存器、两个输入缓冲器、一个非门、一个与门和两个场效应管组成的输出驱动电路等组成。P0口——工作原理(作I/O端口使用)DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V2三态门有三个状态:高电平低电平高阻状态导通截止导通截止P0口——功能DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V20P0口作为I/O端口使用P0口——功能1P0口作为地址总线/数据总线分时复用口使用。DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V2P0口——工作原理(作I/O端口使用)DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V20P0口——工作原理(作I/O端口使用)DQ锁存器CPQ&+5VP0.X地址/数据控制线读锁存器数据线读引脚写控制信号12转换开关V1V2DQ锁存器CPQ&+5VP0.X地址/数据控制线读锁存器数据线读引脚写控制信号12转换开关V1V2P0口做输出口使用P0口做输出口使用DQ锁存器CPQ&+5VP0.X地址/数据控制线数据线写控制信号转换开关V1V2SSGGDDV2相当于漏极开路,需外接上拉电阻。00VGS=-5V<VONV1截止P0口作输入口使用——读引脚DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V2DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V2P0口作输入口使用——读引脚1导通0不能正确读到引脚上的信号0截止能正确读到引脚信号P0口作输入口使用——读引脚解决办法0DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V21P0口作输入口使用——读锁存器DQ锁存器CPQ&+5VP0.X地址/数据控制线读锁存器数据线读引脚写控制信号12转换开关V1V2P0口——工作原理(作地址/数据复用口)1DQ锁存器CPQ&+5VP0.X地址/数据控制线地址/数据线读锁存器数据线读引脚写控制信号12转换开关V1V2P0口——工作原理(作地址/数据复用口)&+5VP0.X地址/数据控制线地址/数据线转换开关V1V201饱和导通0截止0P0口——工作原理(作地址/数据复用口)10截止1饱和导通1V1,V2交替导通,顺利将总线信号进行传输。&+5VP0.X地址/数据控制线地址/数据线转换开关V1V2并行口P0使用小结作输入使用读引脚时,应先向锁存器中写1。作输出口使用时,P0口需外接上拉电阻。做为低8位地址总线和数据总线分时复用。PO口使用做普通I/O接口使用做总线使用本讲主题并行IO口P1的结构与功能主讲人单片机技术与应用P0P1P2P34个并行I/O口51单片机的并行I/O端口只有一种功能:做通用I/O口使用P1口——电路结构DQ锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚输出驱动电路输入缓冲器1输入缓冲器2DQ锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚P1口——电路结构可保存一位的二进制数

(保持功能)P1口——电路结构输入缓冲器1输入缓冲器2三态门有三个状态:高电平低电平高阻状态DQ锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚P1口——电路结构输出驱动电路场效应管上拉电阻DQ锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚P1口——功能只有一种功能:做通用I/O口使用做普通输出口使用做普通输入口使用P1口——工作原理与功能做普通输出口使用DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚P1口——工作原理与功能做普通输出口使用DQ

锁存器CPQ+5VP1.X数据线时钟控制信号01VGS>UON饱和导通0P1口——工作原理与功能做普通输出口使用DQ

锁存器CPQ+5VP1.X数据线时钟控制信号10VGS<VON截止1P1口——工作原理与功能做普通输出口使用无论数据线上要输出的信号为0还是1,电路结构都可以保证从引脚上输出相应的数,从而正确进行数据输出。P1口——功能与使用做普通输入口使用,读引脚时DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚上拉电阻P1口——功能与使用做普通输入口使用,读引脚时DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读引脚GDS上拉电阻P1口——功能与使用做普通输入口使用,读引脚时DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读引脚GDS上拉电阻01导通0不能正确读到引脚上的信号P1口——功能与使用做普通输入口使用,读引脚时解决办法DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读引脚GDS上拉电阻10截止能正确读到引脚信号P1口——功能与使用做普通输入口使用,读锁存器DQ

锁存器CPQ+5VP1.X数据线时钟控制信号读锁存器读引脚上拉电阻并行口P1使用总结P1只能作为通用I/O使用做输出口使用时,直接使用。做输入使用读引脚时,应先向锁存器中写1。本讲主题单片机应用系统组成主讲人单片机技术与应用、单片机应用系统硬件部分、单片机应用系统软件部分、单片机应用系统实例目录单片机应用系统硬件部分输出显示输入控制其他外围器件输出显示输入控制其他外围器件单片机最小系统单片机输入控制输出显示外围功能器件时钟电路和复位电路单片机最小系统接口电路及外设等硬件部分控制程序软件单片机应用系统软件部分单片机最小系统接口电路及外设等控制程序硬件软件烧录单片机应用系统交通闪光警示灯硬件电路单片机应用系统实例交通闪光警示灯硬件电路交通闪光警示灯软件程序本讲主题单片机开发硬件实训平台主讲人单片机技术与应用51主控板AD/DA转换及简易交通灯电路通信单元步进电机与直流电机驱动板矩阵键盘与独立按键板显示单元51主控开发板集成了流水灯、数码管、独立按键、蜂鸣器、下载电路等常用的外设模块。预留了LCD1602显示屏、NRF24L01、ESP8266、机械臂等外设的接口。STC12C5A60S2单片机舵机电源主控板电源STC12C5A60S2单片机本讲主题单片机集成开发软件keilμvision安装与使用主讲人单片机技术与应用KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。KeilC51

本讲主题驱动软件和下载软件主讲人单片机技术与应用电子设计必备的通讯接口之一。串口FT232CH340PL2303>>便宜南京沁恒稳定,可靠USB转串口STC-ISP一款功能丰富的单片机烧录软件。单片机的设计制作工具。是针对STC系列单片机设计的,可下载STC15/12/11/10/89/90等系列的STC单片机程序。烧录将已经编译好的程序文件刻录到单片机的ROM/FLASH中。(即把之前生成好的HEX文件下载到单片机中)仿真软件Protues的使用本讲主题主讲人杨雁冰单片机技术与应用仿真软件Protues的安装仿真软件Protues的使用目录安装软件汉化包破解软件打开桌面Protues软件图标,进入软件界面。本讲主题C51的数据类型主讲人单片机技术与应用标准C语言中的数据类型数据类型长

度所占位数取值范围字符型unsignedchar单字节8位0~255char单字节8位-128~+127整型unsignedint双字节16位0~65535int双字节16位-32768~+32767长整型unsignedlong四字节32位0~4294967295long四字节32位-2147483648~+2147483647浮点型float四字节32位±1.175494E-38~±3.402823E+38指针型*1~3字节8~24位对象的地址C51扩展的数据类型

bit(定义位类型)1bit位变量名bit类型定义一个可直接位操作的二进制位,它的值是0或1。C51扩展的数据类型

sfr(定义特殊功能寄存器)2sfr特殊功能寄存器器名=特殊功能寄存器地址;sfrPSW=0XD0;sfrIE=0XA8;sfrP0=0X80;sfr16(定义16位特殊功能寄存器)3sfr16DPTR=0X82;sfr16特殊功能寄存器器名=特殊功能寄存器低字节地址;C51扩展的数据类型

sbit(定义可寻址位)4sbit位名称=位地址;sbitOV=0XD2;#include<reg51.h>voiddelay(intms);voidmain(){ while(1) { P0=~P0; delay(1000); } }voiddelay(intms){ inti,j; for(i=0;i<ms;i++); for(j=0;j<120;j++);}举例1-直接使用举例2-间接使用#include<reg51.h>

voiddelay(unsignedinti);

sbitled=P2^6;

voidmain()

{

while(1)

{

led=1;

delay(1);

led=0;

delay(5);

}

}

本讲主题常

量主讲人单片机技术与应用目录、常量概念、常量类型常量----其值是不能被改变的量一、常量概念整型常量浮点型常量字符型常量位常量符号常量二、常量类型整型常量整型常量

十进制:35

八进制:0177

十六进制:0xfe、0X7D-31412浮点型常量科学计数方式指数形式3.14整数小数0.546.546450004.5E4浮点型常量字符型常量字符常量字符串常量“a”“A”“HELLO”字符型常量位常量0,1位常量#definePI

3.1415926#include<stdio.h>

voidmain()

{

doubler;

printf(″请输入圆半径:″); scanf(″%lf″,&r);printf(″圆面积:%.3f″,PI*r*r);}符号常量符号常量本讲主题变量及定义主讲人单片机技术与应用目录、变量概念、变量的定义方法含义其值可以改变的量一、变量概念格式举例数据类型变量名;Inti;bitflag;注意变量必须先定义,后使用。unsignedchark,m;二、变量定义只能由字母、数字和下划线三种字符组成。变量取名规范1P1.1P1_1第一个字符必须为字母或下划线。区分大小写。√_nop√2LEDLED2√区分大小写变量取名规范2inti;intI;见名知意变量取名规范3蜂鸣器变量数据类型的选择数据类型

变量名;选取合适选取不合适变量类型局部变量:在某个函数内部定义。局部变量:作用范围仅限于函数内部。变量类型全局变量:在函数外部定义。全局变量:作用范围不仅限于某个函数内部,是全局可见。本讲主题算术运算符主讲人单片机技术与应用算术运算符运算符名称功能+加法求两数的和-减法求两数的差*乘法求两数的积/除法求两数的商%取余(求模)求两数的余数++自增1变量自动加1--自减1变量自动减1除法:/45/1044.544.0/58.88都是整型数据时有一个以上是实型数据时取余:%45%10参与运算的数据必须是整型数据,结果也是整型数据。521.0%10十位数字个位数字十位数字个位数字利用除法运算,两位十进制数据除以10,拆分出十位数字。利用取余运算,两位十进制数据对10取余,拆分出个位数字。利用除法运算,除以256,拆分出高8位二进制数据。利用取余运算,对256取余,拆分出低8位二进制数据。自增、自减运算符自增运算符++:使变量的值加1自减运算符--:使变量的值减1作用:自增、自减运算符形式:前置运算:++m;--n;后置运算:j++;k--;

k=0x80; for(j=0;j<8;j++) { P1=~k; delay(200); k>>=1; }

本讲主题关系运算符与逻辑运算符主讲人单片机技术与应用一、关系运算符

二、逻辑运算符

目录一、关系运算符运算符功能>>=<<===!=大于大于等于小于等于小于等于不等于关系运算符含义指定条件满足时,结果为真(1);不满足时,结果为假(0)格式表达式1关系运算符表达式2i为9时,i<8:假i为7时,i<8:真关系运算符举例按键按下:P1.6为0按键未按下:P1.6:1P1.6是否等于0按键是否按下用此关系运算符来定义:==#include<reg51.h>sbitLED=P1^1; sbitKEY_ON=P1^6;voidmain(){

while(1)

{if(KEY_ON==0)

//如果KEY_ON按下

LED=0;

//LED亮

else//否则

LED=1;//LED灭

}

}关系运算符举例===C语言中关系运算符C语言中赋值运算符x=5x==5==与=的区分二、逻辑运算符逻辑与逻辑或逻辑非运算符功能&&∣∣

!逻辑运算符-逻辑与逻辑与格式表达式1

&&表达式2

逻辑与含义(X>3)&&(X<6)X为5时:真真真(X>3)(X<6)X为7时:真假假只有左右两个表达式都是真时,整个表达式结果为真;有一个为假,整个表达式结果为假。逻辑运算符-逻辑或逻辑或格式关系表达式1

||关系表达式2

逻辑或含义(Y>10)||(Y<5)Y为4时:假真真(Y>10)(Y<5)Y为8时:假假假当左右两个表达式有一个真时,整个表达式结果为真;只有两个表达式都是假,整个表达式结果才为假。

逻辑运算符-逻辑非逻辑非格式!表达式1

逻辑非含义对表达式1的值进行非运算本讲主题位运算符一(左移右移流水灯)主讲人杨雁冰单片机技术与应用单片机如何控制LED灯实现流水灯、跑马灯效果?需要应用C51程序中位运算符的左移和右移位运算符。<<>>位运算符——左移右移左移右移控制LED灯本讲内容位运算符——左移右移例如: 1000111100111100000x8f0x3c左移将变量1的二进制位值向左移动由变量2所指定的位数。a = 0x8f; // 10001111 a << 2; // 左端移出的值丢弃,右端补0 结果: 0x3c (00111100)变量1 << 变量2 位运算符——左移右移1000111100100011000x8f0x23右移变量1 >> 变量2 将变量1的二进制位值向右移动由变量2所指定的位数。 例如: a = 0x8f; // 10001111 a >> 2; // 右端移出的值丢弃,左端补0 结果: 0x23 (00100011)左移控制LED灯右移控制LED灯本讲主题位运算符二(按位与或非异或运算闪烁)主讲人杨雁冰单片机技术与应用在单片机中位运算通常用于I/O端口的输入输出控制和逻辑判断。位运算按二进制位进行的运算按位与、或、非、异或运算LED灯闪烁本讲内容按位与或非异或运算运算规则全1为1,有0为0。0&0=0,0&1=0,1&0=0,1&1=l(即只有当两者都为真时才为真)功能清零取一个数中指定位“按位与”运算符(&)1按位与或非异或运算功能取一个数中指定位。方法:找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“与运算”可以得到X中的指定位。例如: 10101110B&00001111B00001110B“按位与”运算符(&)1按位与或非异或运算运算规则有1为1,全0为0。0|0=0,0|l=l,1|0=l,l|l=l(即只要有一个为真其结果为真)功能对一个数据的某些位置“1”。“按位或”运算符(|)2按位与或非异或运算“按位或”运算符(|)功能对一个数据的某些位置“1”。方法:找到一个数,对应X要置1的位,该数的对应位为1,其余位为零。此数与X相或可使X中的某些位置“1”。例如: 10100000B|00001111B10101111B2按位与或非异或运算取反运算符(~)3单目运算符运算规则是1得0,是0得1~1=0; ~0=1对操作数按位取反。例如: a= 0 0 0 1 1 0 1 0按位取反后:a= 1 1 1 0 0 1 0 1按位与或非异或运算按位“异或”(∧)4运算规则相同为0,不同为1。0^0=0; 0^1=1; 1^0=1;1^1=0(当两者取值相异时为真)功能使特定位翻转例如: 10101110B∧00001111B10100001B方法:找一个数,对应X要翻转的各位,该数的对应位为1,其余位为零,此数与X对应位异或即可。按位与或非异或运算按位“异或”(∧)4运算规则相同为0,不同为1。0^0=0; 0^1=1; 1^0=1;1^1=0(当两者取值相异时为真)功能使特定位翻转。例如: 10101110B∧00000000B10101110B与0相异或,保留原值。按位与或非异或运算本讲小结“按位与”运算符(&)1“按位或”运算符(|)2取反运算符(~)3按位“异或”(∧)4本讲主题任务:左移流水灯主讲人单片机技术与应用任务要求实现8个LED灯左移流水效果硬件设计硬件分析P0.X:0时,灯亮P0.X:1时,灯灭P0:11111110BP0:11111100BP0:11111000BP0=P0<<1P0:11110000BP0:11100000BP0:11000000BP0:10000000BP0:00000000BP0=P0<<1软件设计思想软件程序实现1开始P0=0Xfe延时点亮对应灯P0左移一位8次到了吗否是流程图软件程序实现2本讲主题表达式语句与复合语句主讲人单片机技术与应用目录、表达式语句、复合语句C51程序结构与语句

顺序结构选择结构循环结构C51程序结构与语句

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论