1、明德明德 厚学厚学 沉毅沉毅 笃行笃行单片单片微机原理与接口技术微机原理与接口技术主主 讲:讲: 蒋书波蒋书波参考教材:例说参考教材:例说51单片机(第单片机(第3版)(版)(C语言版)语言版)明德明德 厚学厚学 沉毅沉毅 笃行笃行目录目录 第一章第一章 单片机系统设计入门单片机系统设计入门 第二章第二章 深入探讨单片机系统硬件设计深入探讨单片机系统硬件设计 第三章第三章 内部内部RAM存储空间存储空间 第四章第四章 MCS51指令系统指令系统 第五章第五章 伪指令伪指令 第六章第六章 输出口的应用输出口的应用 第七章第七章 输入口的应用输入口的应用 第八章第八章 外部外部RAM的扩展的扩展明
2、德明德 厚学厚学 沉毅沉毅 笃行笃行目录目录 第九章第九章 中断的应用中断的应用 第十章第十章 定时器定时器/计数器的应用计数器的应用 第十一章第十一章 串行口的应用串行口的应用 第十二章第十二章 C程序设计规范程序设计规范 第十三章第十三章 STC89C52RC 第十四章第十四章 液晶显示技术液晶显示技术 第十五章第十五章 DS18B20温度传感器温度传感器明德明德 厚学厚学 沉毅沉毅 笃行笃行第一章第一章单片机系统设计入门单片机系统设计入门1明德明德 厚学厚学 沉毅沉毅 笃行笃行第一章第一章 单片机系统设计入门单片机系统设计入门 什么是单片机什么是单片机 单片机系统设计案例单片机系统设计案
3、例硬件设计简介硬件设计简介软件设计软件设计 AT89S51内部结构简介内部结构简介明德明德 厚学厚学 沉毅沉毅 笃行笃行什么是单片机什么是单片机1明德明德 厚学厚学 沉毅沉毅 笃行笃行什么是单片机什么是单片机 一个单片的微型计算机一个单片的微型计算机 英文简写:英文简写:MCU (Microcontroller Unit)明德明德 厚学厚学 沉毅沉毅 笃行笃行AT89S51芯片文字说明芯片文字说明 ATMEL : 公司名公司名 AT89S51: 芯片型号芯片型号 1-3 24PU: 最大晶振最大晶振24M,工业级(工业级(PC为民为民用级)用级) 0940A: 09年第年第40批批 明德明德
4、厚学厚学 沉毅沉毅 笃行笃行STC89C52明德明德 厚学厚学 沉毅沉毅 笃行笃行STC89C52芯片文字说明芯片文字说明 STC : 公司名公司名 89C52RC: 芯片型号芯片型号39 40C: 最大晶振最大晶振40M,民用级(民用级(I为工业级)为工业级) PDIP: 封装类型封装类型 40:引脚数:引脚数 明德明德 厚学厚学 沉毅沉毅 笃行笃行STC89C52同同AT89S51的区别的区别 STC89C52功能更多,更强。功能更多,更强。 STC89C52兼容兼容AT89S51的功能。的功能。 具体区别,后面会陆续介绍。具体区别,后面会陆续介绍。明德明德 厚学厚学 沉毅沉毅 笃行笃行单
5、片机系统设计案例单片机系统设计案例1明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机系统设计案例单片机系统设计案例 例题:例题:1个个LED闪烁(汇编)闪烁(汇编) 功能:用汇编语言编写程序实现功能:用汇编语言编写程序实现1个个LED闪烁,并在学习板上运行。闪烁,并在学习板上运行。 硬件设计简介硬件设计简介 软件设计软件设计明德明德 厚学厚学 沉毅沉毅 笃行笃行硬件设计简介硬件设计简介1明德明德 厚学厚学 沉毅沉毅 笃行笃行电路图电路图明德明德 厚学厚学 沉毅沉毅 笃行笃行AT89S51 AT89S51一共有一共有多少个引脚?多少个引脚? 引脚号的确定:引脚号的确定:缺口朝上,左边缺口朝上,左边最
6、上面的引脚为最上面的引脚为1号引脚号引脚明德明德 厚学厚学 沉毅沉毅 笃行笃行晶振电路晶振电路 提供时间基准提供时间基准 晶振频率越高,指令执行速度越快。晶振频率越高,指令执行速度越快。明德明德 厚学厚学 沉毅沉毅 笃行笃行复位电路复位电路 复位电路后面的课程详细讲。复位电路后面的课程详细讲。明德明德 厚学厚学 沉毅沉毅 笃行笃行存储器设置电路存储器设置电路 31号引脚接高电平,使用内部号引脚接高电平,使用内部ROM;接;接低电平,不使用内部低电平,不使用内部ROM。明德明德 厚学厚学 沉毅沉毅 笃行笃行电源电源 双列直插式芯片的电源引脚一般为:双列直插式芯片的电源引脚一般为:左下角接地左下角
7、接地右上角接电源正极右上角接电源正极 图中的图中的C6起滤波作用,以后详细讲。起滤波作用,以后详细讲。明德明德 厚学厚学 沉毅沉毅 笃行笃行LED电路电路 LED电路,参考如下:电路,参考如下:明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 当当P1.0引脚电压为引脚电压为0时,发光时,发光LED亮还是亮还是灭?灭? 当当P1.0引脚电压为引脚电压为VCC时,发光时,发光LED亮亮还是灭?还是灭?明德明德 厚学厚学 沉毅沉毅 笃行笃行电路图电路图明德明德 厚学厚学 沉毅沉毅 笃行笃行AT89S51硬件电路的最小系统硬件电路的最小系统 上述电路图除发光上述电路图除发光LED电路外的其它电电路外的
8、其它电路都是单片机正常工作必不可少的,称路都是单片机正常工作必不可少的,称为单片机硬件电路的最小系统。为单片机硬件电路的最小系统。明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习课堂练习 打开打开42。在学习板电路图中找到单片。在学习板电路图中找到单片机最小系统(晶振电路、复位电路、存机最小系统(晶振电路、复位电路、存储器设置电路、电源)的电路图。储器设置电路、电源)的电路图。 透彻理解该部分电路,并利用万用表,透彻理解该部分电路,并利用万用表,在学习板上找到相关元器件。在学习板上找到相关元器件。 分析学习板电路图上分析学习板电路图上LED的电路,并在的电路,并在学习板上找到相关元器件。学习板上
9、找到相关元器件。明德明德 厚学厚学 沉毅沉毅 笃行笃行软件设计软件设计1明德明德 厚学厚学 沉毅沉毅 笃行笃行集成开发环境集成开发环境 Keil Vision 是单片机最流行的集成开是单片机最流行的集成开发环境。发环境。 目前的最新版本是目前的最新版本是Keil Vision 4。 该环境可支持多种汇编语言和该环境可支持多种汇编语言和C语言。语言。明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习:课堂练习:Keil Vision的安装的安装 大家跟我一起来安装大家跟我一起来安装Keil Vision 如果需要如果需要Keil对对STC的支持,参考的支持,参考41明德明德 厚学厚学 沉毅沉毅 笃行
10、笃行汇编语言汇编语言 由于二进制指令代码(机器语言)阅读由于二进制指令代码(机器语言)阅读困难,难以记忆,可通过一些容易记忆困难,难以记忆,可通过一些容易记忆的符号代替二进制指令代码,来编写程的符号代替二进制指令代码,来编写程序,然后,通过对程序进行汇编,翻译序,然后,通过对程序进行汇编,翻译成机器语言烧写到成机器语言烧写到ROM中。中。 这种用助记符代替二进制指令代码的语这种用助记符代替二进制指令代码的语言就是汇编语言。言就是汇编语言。明德明德 厚学厚学 沉毅沉毅 笃行笃行读懂例题程序读懂例题程序 打开例题项目文件,读懂例题程序。打开例题项目文件,读懂例题程序。明德明德 厚学厚学 沉毅沉毅
11、笃行笃行将例题程序烧录到学习板上将例题程序烧录到学习板上 将程序烧录到芯片中,需要编译生成将程序烧录到芯片中,需要编译生成 “ *.hex ” 文件文件 选中选中: Target optionsoutput“create HEX file” 后,点击后,点击“rebuild”图标,生图标,生成成“ *.hex ” 文件文件 STC单片机可通过串口单片机可通过串口“烧录烧录”程序程序 安装安装STC烧录程序软件烧录程序软件 烧录程序烧录程序明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习课堂练习 修改例题,在学习板上实现修改例题,在学习板上实现2个个LED交替交替闪烁。闪烁。明德明德 厚学厚学 沉
12、毅沉毅 笃行笃行学会自己建立项目学会自己建立项目 新建一个文件夹,用于存放项目文件。新建一个文件夹,用于存放项目文件。 文件夹的名称可根据需要任意设定。文件夹的名称可根据需要任意设定。 建建1个名称为个名称为“v0.0.0”的子文件夹,该名的子文件夹,该名称为该项目的版本号(见下页)称为该项目的版本号(见下页) 在项目中添加在项目中添加“main.asm”文件,用于编文件,用于编写汇编程序。写汇编程序。明德明德 厚学厚学 沉毅沉毅 笃行笃行版本号添加规范版本号添加规范 版本号添加规范:版本号添加规范:v0.0.0 当版本号带有第当版本号带有第3个数字时,为调试版本,个数字时,为调试版本,当修改
13、程序时,需保存老版本,并增加当修改程序时,需保存老版本,并增加该数字的值在新版本上修改。该数字的值在新版本上修改。 当程序调试成功,可以发布时,可增加当程序调试成功,可以发布时,可增加中间的数字,并去掉第中间的数字,并去掉第3个数字。个数字。 当可发布的版本有重大改进,可增加第当可发布的版本有重大改进,可增加第1个数字。个数字。明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习课堂练习 新建项目,在项目中添加新建项目,在项目中添加“main.asm”文文件,并在该文件中编写汇编代码实现:件,并在该文件中编写汇编代码实现: 1P83霹雳灯实验。霹雳灯实验。明德明德 厚学厚学 沉毅沉毅 笃行笃行AT8
14、9S51内部结构简介内部结构简介1明德明德 厚学厚学 沉毅沉毅 笃行笃行AT89S51的内部结构图的内部结构图CPU(MCS51)内部设备外部设备AT89S510 x00000 xffff0 x000 x7f0 xffROM空间64K4K0 x0fffRAM空间256BRAM若干个专用寄存器地址总线控制总线数据总线地址总线控制总线数据总线明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机的内部结构单片机的内部结构 单片机的内部结构主要有以下几部分:单片机的内部结构主要有以下几部分:CPU ( Central Processing Unit ,中央,中央处理器)处理器)ROM ( Read-Only
15、Memory,只读存储,只读存储器)器)RAM ( Random Access Memory,随机,随机存取存储器)存取存储器)其它内部设备其它内部设备明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机系统设计单片机系统设计 单片机系统设计包括:单片机系统设计包括:硬件设计硬件设计(上图中的绿色部分上图中的绿色部分)软件设计软件设计(上图中的黄色部分上图中的黄色部分) 硬件设计:设计单片机及外部设备的硬硬件设计:设计单片机及外部设备的硬件电路件电路 软件设计:用软件设计:用C语言或汇编语言编写程语言或汇编语言编写程序并烧写到序并烧写到ROM中中明德明德 厚学厚学 沉毅沉毅 笃行笃行CPU CPU也称
16、为内核也称为内核 内核为内核为MCS51的单片机统称为的单片机统称为51系列单系列单片机片机 AT89S51、STC89C52均为均为51系列单品系列单品机机 CPU的作用:读取指令,执行指令的作用:读取指令,执行指令明德明德 厚学厚学 沉毅沉毅 笃行笃行指令指令5 基于基于MCS51核的汇编指令有核的汇编指令有111条条 这些指令都是用机器语言(这些指令都是用机器语言(二进制代码二进制代码)来表示来表示 指令的单位是指令的单位是字节字节(Byte) 1字节为字节为8位位(bit) 每条指令的长度为每条指令的长度为1-3B 为什么有些指令超过为什么有些指令超过1个字节呢个字节呢 指令代码可以通
17、过烧写器写到指令代码可以通过烧写器写到ROM中中明德明德 厚学厚学 沉毅沉毅 笃行笃行指令周期指令周期 每条指令执行时间为每条指令执行时间为1-2个机器周期(乘个机器周期(乘除指令除外)除指令除外) 1个机器周期个机器周期 = 12 * 晶振振荡周期晶振振荡周期 思考:如果晶振选用思考:如果晶振选用12MHz,执行,执行1条条单片机指令需要多长时间?单片机指令需要多长时间?明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 如果晶振是如果晶振是12M, 案例中延时子程序的案例中延时子程序的精确延时时间是多少?精确延时时间是多少?明德明德 厚学厚学 沉毅沉毅 笃行笃行ROM ROM: 用于用于存放指
18、令代码存放指令代码 MCS51核核可读取(不能写)可读取(不能写) ROM中的指中的指令代码。令代码。 MCS51核通过内部总线读取内部核通过内部总线读取内部ROM。明德明德 厚学厚学 沉毅沉毅 笃行笃行内部总线内部总线 内部总线分为:内部总线分为:地址总线地址总线数据总线数据总线控制总线控制总线明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 AT89S51的内部的内部ROM地址范围是?地址范围是? AT89S51的内部的内部ROM中最多可存放多少中最多可存放多少条指令?条指令? 答:答: 0 x0000- 0 x0fff 答:答: 2000条左右条左右明德明德 厚学厚学 沉毅沉毅 笃行笃行思
19、考思考 STC89C52的内部的内部ROM为为8K,其地址范,其地址范围是?围是? 答:答: 0 x0000- 0 x1fff明德明德 厚学厚学 沉毅沉毅 笃行笃行程序计数器程序计数器PC 作用:存放作用:存放CPU将要读取的将要读取的ROM地址地址 占用占用2个字节个字节 默认值为:默认值为:0 x0000 读取读取ROM1个字节后,个字节后,PC值值自动自动加加1明德明德 厚学厚学 沉毅沉毅 笃行笃行CPU CPU也称为内核也称为内核 内核为内核为MCS51的单片机统称为的单片机统称为51系列单系列单片机片机 AT89S51、STC89C52均为均为51系列单片系列单片机机 CPU的作用的
20、作用 :读取指令,执行指令读取指令,执行指令明德明德 厚学厚学 沉毅沉毅 笃行笃行ROM的读取过程(自动)的读取过程(自动) CPU端:端:1.将将PC值通过地址总线送出值通过地址总线送出3.给读给读ROM控制总线短暂低信号控制总线短暂低信号5.将数据总线数据读至将数据总线数据读至CPU6.PC值自动加值自动加1 ROM端:端:2.根据地址选中相应存储单元根据地址选中相应存储单元4.当有读当有读ROM控制总线有低信号时,将选控制总线有低信号时,将选中的单元数据送数据总线。中的单元数据送数据总线。明德明德 厚学厚学 沉毅沉毅 笃行笃行RAM空间空间 MCS51核内部核内部RAM空间是空间是256
21、个字节个字节 地址范围是:地址范围是:0 x00-0 xff 其中,其中, 0 x00-0 x7f 为为128B的的RAM, 0 x80-0 xff散布着散布着20多个(不同型号数量多个(不同型号数量不同)专用寄存器(见图)。不同)专用寄存器(见图)。明德明德 厚学厚学 沉毅沉毅 笃行笃行专用寄存器专用寄存器 有专门用途的存储单元有专门用途的存储单元明德明德 厚学厚学 沉毅沉毅 笃行笃行CPU的作用的作用 读取指令,执行指令读取指令,执行指令 自动:自动:读读ROM,读写,读写RAM,永不停息,永不停息。明德明德 厚学厚学 沉毅沉毅 笃行笃行内部设备内部设备 CPU通过对专用寄存器的读写间接控
22、制通过对专用寄存器的读写间接控制内部设备。内部设备。明德明德 厚学厚学 沉毅沉毅 笃行笃行外部设备外部设备 外部设备通过引脚连接到部分内部设备外部设备通过引脚连接到部分内部设备上上 CPU通过对专用寄存器的读写间接控制通过对专用寄存器的读写间接控制内部设备,进而控制外部设备。内部设备,进而控制外部设备。明德明德 厚学厚学 沉毅沉毅 笃行笃行例题例题 进入软件调试状态,单步调试程序,观进入软件调试状态,单步调试程序,观察察P1口引脚变化、口引脚变化、 RAM的变化、的变化、 ROM中的值、中的值、 PC的变化,熟悉的变化,熟悉CPU工作原工作原理。理。明德明德 厚学厚学 沉毅沉毅 笃行笃行课后练
23、习课后练习 熟悉熟悉keil编程环境,熟悉编程环境,熟悉keil调试环境调试环境 熟悉程序的烧录过程。熟悉程序的烧录过程。 通过调试程序,熟悉通过调试程序,熟悉MCS51核的工作原核的工作原理。理。 编程实现:利用软件延时实现编程实现:利用软件延时实现LED每隔每隔1秒定时闪烁,并在学习板上试验。秒定时闪烁,并在学习板上试验。 参考资料参考资料42,P1口和口和8个个LED灯。灯。 复习:复习:C语言语言明德明德 厚学厚学 沉毅沉毅 笃行笃行第二章第二章深入探讨单片机系统硬件深入探讨单片机系统硬件设计设计1明德明德 厚学厚学 沉毅沉毅 笃行笃行第二章第二章 深入探讨单片机系统硬件设计深入探讨单
24、片机系统硬件设计 复位电路复位电路 电源电路电源电路 LED电路电路 单片机单片机IO口的内部结构简介口的内部结构简介明德明德 厚学厚学 沉毅沉毅 笃行笃行提问提问 CPU,RAM,ROM的作用是?的作用是? CPU的工作过程是?的工作过程是?明德明德 厚学厚学 沉毅沉毅 笃行笃行复位电路复位电路1明德明德 厚学厚学 沉毅沉毅 笃行笃行复位电路复位电路明德明德 厚学厚学 沉毅沉毅 笃行笃行复位电路复位电路 单片机单片机9号引脚保持高电平(号引脚保持高电平(2.8V)时)时间超过间超过10ms 时,时, AT89S51自动复位。自动复位。 思考:复位电路上电后,思考:复位电路上电后,9号引脚电压
25、如号引脚电压如何变化?请写出电压变化公式。何变化?请写出电压变化公式。明德明德 厚学厚学 沉毅沉毅 笃行笃行三个重要公式三个重要公式dtduCidtdiLuiRuCCLLRR三个重要公式要记牢:明德明德 厚学厚学 沉毅沉毅 笃行笃行复位电路分析复位电路分析udtduRCVCCu,可得:设电容电压为明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习课堂练习 求求9号引脚电压值。号引脚电压值。明德明德 厚学厚学 沉毅沉毅 笃行笃行电容电压求解电容电压求解RCteVCCVCCu电容电压求解得:明德明德 厚学厚学 沉毅沉毅 笃行笃行9号引脚电压号引脚电压RCteVCCu号引脚电压:9明德明德 厚学厚学 沉
26、毅沉毅 笃行笃行9号引脚电压变化曲线图号引脚电压变化曲线图明德明德 厚学厚学 沉毅沉毅 笃行笃行电容和电阻的取值电容和电阻的取值 当当t=RC时,时,9号引脚电压约为号引脚电压约为0.37*VCC 通常:电阻选择通常:电阻选择10K,电容选择电容选择10uF 此时,此时, 9号引脚电压保持高电平(号引脚电压保持高电平(2.8V)时间接近时间接近100ms,可以可靠复位。,可以可靠复位。明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 思考:复位电路可否采用大电阻小电容思考:复位电路可否采用大电阻小电容形式?形式? 答:也可以。但该电路抗干扰能力差。答:也可以。但该电路抗干扰能力差。 思考:如何添
27、加复位键?思考:如何添加复位键?明德明德 厚学厚学 沉毅沉毅 笃行笃行课本中添加复位键的方法课本中添加复位键的方法明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 上图有一个缺陷,是什么?上图有一个缺陷,是什么? 答:按键需串联答:按键需串联1个小电阻,防止电容损个小电阻,防止电容损坏。坏。明德明德 厚学厚学 沉毅沉毅 笃行笃行电源设计电源设计1明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 普通普通5V稳压电源能直接给单片机供电吗?稳压电源能直接给单片机供电吗? AT89S51单片机的供电电压:单片机的供电电压:4V-5.5V 我们先研究一下普通稳压电源的内部结我们先研究一下普通稳压电源的内部
28、结构。构。明德明德 厚学厚学 沉毅沉毅 笃行笃行稳压电源的内部结构图稳压电源的内部结构图 (a)是普通稳压电源的内部结构图)是普通稳压电源的内部结构图 (b)是未加电容时输出电压波形图。)是未加电容时输出电压波形图。明德明德 厚学厚学 沉毅沉毅 笃行笃行添加电容后输出电压波形图添加电容后输出电压波形图 电容越大滤波效果越好(电容越大滤波效果越好(RL为负载电为负载电阻)。阻)。明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容电解电容 大容量电容几乎都是电解电容。主要有大容量电容几乎都是电解电容。主要有两种:两种:铝电解电容铝电解电容钽电解电容钽电解电容 铝电解电容一般简称:电解电容铝电解电容一般
29、简称:电解电容 钽电解电容一般简称:钽电容钽电解电容一般简称:钽电容明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容规格电解电容规格 额定耐压值需大于正常工作电压的额定耐压值需大于正常工作电压的2倍。倍。 常见耐压值有:常见耐压值有: 6.3V、 10V、 16V、 25V、 35V、 50V、 63V、 80V、 100V、 250V、 400V 、 500V、630V。 常见电容值有:常见电容值有:0.47uF、 1.0uF、 2.2uF、 3.3uF、 4.7uF、 10uF、 22uF、 33uF、 47uF、 100uF、 220uF、 330uF、 470uF、 680uF、 100
30、0uF、 2200uF、 3300uF、 4700uF、 6800uF明德明德 厚学厚学 沉毅沉毅 笃行笃行钽电容规格钽电容规格 额定耐压值需大于正常工作电压的额定耐压值需大于正常工作电压的2倍。倍。 常见耐压值有:常见耐压值有: 6.3V、 10V、 16V、 25V、 35V。 常见电容值有:常见电容值有:0.47uF、 1.0uF、 2.2uF、 3.3uF、 4.7uF、 10uF、 22uF、 33uF、 47uF、 100uF、 220uF、 330uF、 470uF、 680uF明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容电解电容明德明德 厚学厚学 沉毅沉毅 笃行笃行钽电容钽电
31、容明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容与钽电容比较电解电容与钽电容比较 电解电容电解电容优点:价格便宜,耐压值高,容量大优点:价格便宜,耐压值高,容量大缺点:误差大,稳定性差,寿命低。缺点:误差大,稳定性差,寿命低。 钽电容钽电容优点:误差小,稳定性高,寿命高。优点:误差小,稳定性高,寿命高。缺点:价格高,耐压值低缺点:价格高,耐压值低明德明德 厚学厚学 沉毅沉毅 笃行笃行稳压电源能直接给单片机供电吗?稳压电源能直接给单片机供电吗? 答:不可以,稳压电源的电源电压波动答:不可以,稳压电源的电源电压波动太大,直接给单片机供电,将影响单片太大,直接给单片机供电,将影响单片机工作的稳定性,
32、甚至会损坏单片机。机工作的稳定性,甚至会损坏单片机。 一般需添加稳压芯片。一般需添加稳压芯片。明德明德 厚学厚学 沉毅沉毅 笃行笃行常见的稳压芯片常见的稳压芯片7-10 线性稳压芯片:线性稳压芯片:LM7805,LM1117 开关稳压芯片:开关稳压芯片:LM2596 观察学习板上使用的稳压芯片。观察学习板上使用的稳压芯片。明德明德 厚学厚学 沉毅沉毅 笃行笃行LM7805 7 性能指标性能指标输出电压:输出电压: +5V输出电流:输出电流: 1A (添加散热器可达添加散热器可达1.5A)线性调整率:线性调整率: 100mV负载调整率:负载调整率: 100mV输入电压:输入电压: 8V-15V
33、淘宝价格:淘宝价格: 约约0.5元元明德明德 厚学厚学 沉毅沉毅 笃行笃行线性调整率和负载调整率线性调整率和负载调整率 线性调整率:输入电压变化时输出电压线性调整率:输入电压变化时输出电压变化指标变化指标 负载调整率:负载变化时输出电压变化负载调整率:负载变化时输出电压变化指标指标明德明德 厚学厚学 沉毅沉毅 笃行笃行lm1117-3.3 8 性能指标性能指标输出电压:输出电压: +3.3V输出电流:输出电流: 800mA线性调整率:线性调整率: 0.2%负载调整率:负载调整率: 0.4%输入电压:输入电压: 4.75V-10V 淘宝价格:约淘宝价格:约0.2元元明德明德 厚学厚学 沉毅沉毅
34、笃行笃行Lm2596 5.0 9 性能指标性能指标输出电压:输出电压: +5.0V输出电流:输出电流: 3A输出电压误差:输出电压误差: 4%输入电压:输入电压: 7V-40V效率:效率: 80% 淘宝价格:约淘宝价格:约2元元明德明德 厚学厚学 沉毅沉毅 笃行笃行关于输出电流关于输出电流 如果系统长期运行,系统中稳压芯片的如果系统长期运行,系统中稳压芯片的实际输出电流不能超过额定电流的实际输出电流不能超过额定电流的1/3。明德明德 厚学厚学 沉毅沉毅 笃行笃行学习板电源电路学习板电源电路 下面我们来研究一下,学习板的电源电下面我们来研究一下,学习板的电源电路。路。 请同学们拿出学习板,观察学
35、习板电源请同学们拿出学习板,观察学习板电源电路的相关元器件。电路的相关元器件。明德明德 厚学厚学 沉毅沉毅 笃行笃行学习板电源电路图学习板电源电路图明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 为什么稳压芯片两端需加电容?为什么稳压芯片两端需加电容? 答:电源滤波。答:电源滤波。明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 为什么用两个电容并联?为什么用两个电容并联? 这个问题比较复杂,先学习一下基本知这个问题比较复杂,先学习一下基本知识。识。明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容电解电容 电解电容并不是理想地呈现容性,也存电解电容并不是理想地呈现容性,也存在很小的在很小的电阻电阻
36、和和电感电感。明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容的阻抗电解电容的阻抗CLRXCj1j明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容的阻抗电解电容的阻抗 电解电容的电阻和电感非常小,因此,电解电容的电阻和电感非常小,因此,当频率较低时,电解电容呈现容性。当频率较低时,电解电容呈现容性。 但是,当频率非常高时,电解电容反而但是,当频率非常高时,电解电容反而呈现感性。呈现感性。明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容阻抗随频率变化的图形电解电容阻抗随频率变化的图形明德明德 厚学厚学 沉毅沉毅 笃行笃行电解电容电解电容 结论:电解电容可以滤除电源电路中的结论:电解电容可以滤除电源电路
37、中的低频干扰,但不能滤除高频干扰。低频干扰,但不能滤除高频干扰。 11,12 陶瓷电容感性非常小,可以滤除高频干陶瓷电容感性非常小,可以滤除高频干扰。扰。 独石电容和薄膜电容现在使用越来越少。独石电容和薄膜电容现在使用越来越少。明德明德 厚学厚学 沉毅沉毅 笃行笃行贴片陶瓷电容贴片陶瓷电容明德明德 厚学厚学 沉毅沉毅 笃行笃行独石电容独石电容明德明德 厚学厚学 沉毅沉毅 笃行笃行薄膜电容薄膜电容明德明德 厚学厚学 沉毅沉毅 笃行笃行课堂练习课堂练习 请画出陶瓷电容阻抗随频率变化的图形,请画出陶瓷电容阻抗随频率变化的图形,并与电解电容进行比较。并与电解电容进行比较。明德明德 厚学厚学 沉毅沉毅
38、笃行笃行学习板电源电路中的电解电容学习板电源电路中的电解电容 思考:思考:C1、C2的作用?的作用? C1的电容值一般大于的电容值一般大于C2,防止断电后,防止断电后C1放电过快,稳压芯片电压反转损坏芯放电过快,稳压芯片电压反转损坏芯片。片。 思考:当外接稳压电源时,思考:当外接稳压电源时,C1可以省略可以省略吗?吗?明德明德 厚学厚学 沉毅沉毅 笃行笃行学习板电源电路中的的电容学习板电源电路中的的电容 C3、C4用于滤除高频干扰,该电容的正用于滤除高频干扰,该电容的正极需尽可能靠近稳压芯片的管脚。极需尽可能靠近稳压芯片的管脚。 一般情况下,高频干扰对一般情况下,高频干扰对IC芯片影响较芯片影
39、响较大,而大,而PCB板的走线很容易受环境影响板的走线很容易受环境影响产生高频干扰信号。产生高频干扰信号。 解决办法:在每个芯片的输入电源处加解决办法:在每个芯片的输入电源处加一个一个0.1uF的高频滤波电容,并尽可能靠的高频滤波电容,并尽可能靠近芯片的电源正极引脚。近芯片的电源正极引脚。明德明德 厚学厚学 沉毅沉毅 笃行笃行提问:提问:C6的作用是?的作用是?明德明德 厚学厚学 沉毅沉毅 笃行笃行LED电路电路1明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 限流电阻取多大比较合适?限流电阻取多大比较合适?明德明德 厚学厚学 沉毅沉毅 笃行笃行LED(Light-Emitting Diode
40、) LED即发光二即发光二极管,一般电极管,一般电流达到流达到3mA以上可正常发以上可正常发光光 特性如图,当特性如图,当电压达到约电压达到约1.7V时,电时,电压变化很小。压变化很小。明德明德 厚学厚学 沉毅沉毅 笃行笃行限流电阻限流电阻 为使为使LED正常发光,例题中的限流电阻正常发光,例题中的限流电阻不能超过不能超过 1K LED的电流最好不要超过的电流最好不要超过100mA,否则,否则容易被烧坏。容易被烧坏。明德明德 厚学厚学 沉毅沉毅 笃行笃行思考思考 限流电阻取限流电阻取100R可以吗?可以吗? LED可以反接吗?可以反接吗? 我们还需要进一步熟悉单片机我们还需要进一步熟悉单片机I
41、O口的内口的内部结构。部结构。明德明德 厚学厚学 沉毅沉毅 笃行笃行例题例题 硬件知识学晕了吧?下面讲软件缓解一硬件知识学晕了吧?下面讲软件缓解一下。下。 例题:例题:1个个LED闪烁(汇编改进版)闪烁(汇编改进版) 例题:例题:1个个LED闪烁(闪烁(C语言)语言)明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机单片机IO口的内部结构简口的内部结构简介介2明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机单片机IO口简介口简介 单片机有单片机有4个输入个输入输出口(输出口(P0、 P1、 P2、 P3),),每个口每个口8个引脚,个引脚,共共32个引脚均可个引脚均可接接LED电路。电路。明德明德 厚学
42、厚学 沉毅沉毅 笃行笃行思考思考 AT89S51单片机一共多少个引脚?单片机一共多少个引脚? 有多少引脚我们已经学过了?有多少引脚我们已经学过了? 还剩还剩/P/S/E/N引脚和引脚和ALE引脚没学过。引脚没学过。 这两个引脚现在已经很少使用,后面会这两个引脚现在已经很少使用,后面会简单提及这两个引脚的接法。简单提及这两个引脚的接法。 下面对下面对P1口的引脚作部分讲解。口的引脚作部分讲解。明德明德 厚学厚学 沉毅沉毅 笃行笃行单片机单片机P1.x的内部结构的内部结构明德明德 厚学厚学 沉毅沉毅 笃行笃行P1.x的内部结构的内部结构 P1.x主要由主要由1个个D锁存器,两个三态门,锁存器,两个
43、三态门,1个个上拉电阻上拉电阻(约约30K)和)和1个个场效应管场效应管组成。组成。 可实现的功能:写引脚,读引脚,读锁可实现的功能:写引脚,读引脚,读锁存器。存器。 今天,我们仅研究写引脚。今天,我们仅研究写引脚。明德明德 厚学厚学 沉毅沉毅 笃行笃行P1.x的的D锁存器锁存器 D锁存器的工作原理。锁存器的工作原理。 D: 接内部数据总线(共接内部数据总线(共8根)中的根)中的1根根 CL:由:由“写写RAM”控制总线控制总线 + 地址总线地址总线共同得到锁存信号。共同得到锁存信号。明德明德 厚学厚学 沉毅沉毅 笃行笃行写引脚举例写引脚举例 指令:指令:MOV 0 x90, #0 xfe C
44、PU端:端: 1. CPU将将#0 xfe送内部数据总线送内部数据总线 3. CPU将将#0 x90送地址总线送地址总线 4. CPU给给“写写RAM”控制总线控制信号控制总线控制信号 P1.0引脚:引脚: 2. D锁存器的锁存器的D端得到信号端得到信号“0” 5. D锁存器的锁存器的CL端得到上升沿信号端得到上升沿信号 6. D锁存器的锁存器的/Q端锁存为信号端锁存为信号“1” 7. 场效应管导通,场效应管导通,P1.0引脚呈现电压引脚呈现电压0明德明德 厚学厚学 沉毅沉毅 笃行笃行AT89S51引脚的驱动能力引脚的驱动能力 当引脚流过的电流过大时,容易引起单当引脚流过的电流过大时,容易引起
45、单片机工作不稳定,甚至损毁。片机工作不稳定,甚至损毁。 AT89S51引脚的驱动能力:引脚的驱动能力:P0口口-P3口的每个引脚:口的每个引脚: 10mAP1口口- P3口的口的8个引脚合计:个引脚合计: 15mAP0口的口的8个引脚合计:个引脚合计: 26mA明德明德 厚学厚学 沉毅沉毅 笃行笃行STC89C52引脚的驱动能力引脚的驱动能力 STC89C52引脚的驱动能力:引脚的驱动能力:P0口的每个引脚:口的每个引脚: 12mAP1口口-P3口的每个引脚:口的每个引脚: data ,PC = PC + 3 + rel; CY = 0若若A data ,PC = PC + 3 + rel;
46、CY = 1 CJNEA, direct,rel CJNE Rn,#data,rel CJNE Ri, #data,rel明德明德 厚学厚学 沉毅沉毅 笃行笃行减减1条件转移指令条件转移指令 DJNERn, relRn = Rn 1若若Rn != 0, PC = PC + 2 + rel若若Rn = 0, PC = PC + 2 DJNE direct , rel明德明德 厚学厚学 沉毅沉毅 笃行笃行调用子程序指令调用子程序指令 LCALLaddr16 PC = PC + 3SP = SP + 1(SP) = PC7-0SP = SP + 1(SP) = PC15-8PC = addr16 A
47、CALLaddr11 明德明德 厚学厚学 沉毅沉毅 笃行笃行返回指令返回指令 RET ;子程序返回子程序返回PC15-8 = (SP) SP = SP - 1PC7-0 = (SP)SP = SP - 1 RETI ;中断程序返回中断程序返回除上述功能外,还清除了中断响应时被置除上述功能外,还清除了中断响应时被置1的内部中断优先级寄存器的中断优先级状的内部中断优先级寄存器的中断优先级状态态明德明德 厚学厚学 沉毅沉毅 笃行笃行空指令空指令 NOPPC = PC + 1明德明德 厚学厚学 沉毅沉毅 笃行笃行位操作类指令(位操作类指令(17条)条)1明德明德 厚学厚学 沉毅沉毅 笃行笃行位操作类指
48、令位操作类指令 第三章已作介绍。第三章已作介绍。明德明德 厚学厚学 沉毅沉毅 笃行笃行第四章课后练习第四章课后练习 熟悉全部熟悉全部111条指令。条指令。 实现双字节无符号减法。实现双字节无符号减法。 实现双字节有符号减法。实现双字节有符号减法。 实现双字节无符号除法。实现双字节无符号除法。明德明德 厚学厚学 沉毅沉毅 笃行笃行第五章第五章 伪指令伪指令1明德明德 厚学厚学 沉毅沉毅 笃行笃行汇编语言程序设计概述汇编语言程序设计概述 程序是指令的有序集合。程序是指令的有序集合。 汇编语言程序:用汇编语言编写的程序。汇编语言程序:用汇编语言编写的程序。 汇编语言的两种基本语句:汇编语言的两种基本
49、语句:指令语句指令语句伪指令语句伪指令语句明德明德 厚学厚学 沉毅沉毅 笃行笃行伪指令伪指令 是控制汇编(翻译)过程的一些控制命是控制汇编(翻译)过程的一些控制命令。在汇编时没有机器代码与之对应。令。在汇编时没有机器代码与之对应。明德明德 厚学厚学 沉毅沉毅 笃行笃行伪指令伪指令 ORG /汇编起始地址命令汇编起始地址命令 END /汇编终止命令汇编终止命令 EQU/标号赋值命令标号赋值命令 DB/定义数据字节命令定义数据字节命令 DW/定义数据字命令定义数据字命令 DS/定义存储区命令定义存储区命令 BIT/位定义命令位定义命令明德明德 厚学厚学 沉毅沉毅 笃行笃行数码管数码管 我们先学习一
50、下七段我们先学习一下七段LED数码管,然后数码管,然后讲关于伪指令的例题。讲关于伪指令的例题。明德明德 厚学厚学 沉毅沉毅 笃行笃行七段七段LED数码管数码管1明德明德 厚学厚学 沉毅沉毅 笃行笃行七段七段LED数码管数码管明德明德 厚学厚学 沉毅沉毅 笃行笃行七段七段LED数码管的内部结构数码管的内部结构 明德明德 厚学厚学 沉毅沉毅 笃行笃行七段七段LED数码管数码管明德明德 厚学厚学 沉毅沉毅 笃行笃行说明说明 上图中,上图中,“6”,“9”通常更习惯添上一横通常更习惯添上一横。明德明德 厚学厚学 沉毅沉毅 笃行笃行七段七段LED数码管数码管 当采用共阳极七段当采用共阳极七段LED数码管