单片机原理与接口技术(c语言版)11课件

上传人:F****n 文档编号:88137225 上传时间:2019-04-19 格式:PPT 页数:47 大小:541KB
返回 下载 相关 举报
单片机原理与接口技术(c语言版)11课件_第1页
第1页 / 共47页
单片机原理与接口技术(c语言版)11课件_第2页
第2页 / 共47页
单片机原理与接口技术(c语言版)11课件_第3页
第3页 / 共47页
单片机原理与接口技术(c语言版)11课件_第4页
第4页 / 共47页
单片机原理与接口技术(c语言版)11课件_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《单片机原理与接口技术(c语言版)11课件》由会员分享,可在线阅读,更多相关《单片机原理与接口技术(c语言版)11课件(47页珍藏版)》请在金锄头文库上搜索。

1、单片机原理与接口技术 (C语言版) 第11章 单片机应用实例,主 编:周国运 清华大学出版社,第11章 单片机应用实例,目 录 11.1 单片机应用开发方法 11.2 基于单片机的计算器设计 11.3 基于单片机的万年历设计,本章要点 本章首先介绍单片机应用开发的方法,然后以计算器和带温度功能的万年历两个单片机应用实例,示范单片机应用系统的设计过程。,11.1 单片机应用开发方法,主要内容 11.1.1 总体设计 11.1.2 硬件设计 11.1.3 软件设计 11.1.4 系统调试与测试,11.1 单片机应用开发方法,单片机系统是针对某一具体应用的专用系统,单片机的应用领域范围很广,控制形式

2、多种多样,在不同场合下要求各不相同,但设计开发过程基本相同。 一个典型的单片机应用系统开发过程包括总体设计、硬件设计、软件设计、软硬件集成与调试、调试运行、性能测试等几个阶段组成。在调试过程中需要对系统进行修改和完善。,11.1.1 总体设计,1研究开发对象和用户要求 2拟订方案,确定功能、性能指标 3软硬件功能划分 在系统方案确定之后,需要对系统软硬件功能合理安排,要根据系统的要求而定,一些硬件电路的功能可以由软件来实现,反之亦然。,11.1.2 硬件设计,1系统硬件电路设计的一般原则 选择典型电路、力求硬件电路规范化、模块化; 选择功能强的芯片,简化电路设计; 考虑以后系统功能的变化,留下

3、扩展余地; 系统中相关的器件要尽可能做到性能匹配; 外接电路较多时,必须考虑其驱动能力; 考虑系统可靠性与抗干扰问题去耦滤波、合理布线、信号隔离、看门狗电路等;,2硬件可靠性设计 采用隔离和滤波技术抑制输入/输出通道可能出现的干扰; 采用单独供电、低通滤波器和隔离变压器等抑制供电系统的干扰; 采用屏蔽和接地措施、强弱地线分开等措施抑制电磁场干扰; 使用“看门狗”电路,解决CPU运行时可能进入混乱或死循环。,11.1.2 硬件设计,3元器件选择原则 尽可能选择单片机自身集成度比较高的型号,除了可以降低系统的硬件开销外,系统的复杂程度和出错可能性也大大减低。 尽量采用通用的大规模集成电路。这样能简

4、化系统的设计、安装和调试过程,也有助于提高系统的可靠性。 外围电路芯片类型一致。对于低功耗应用系统,必须采用HCMOS或CMOS芯片,如74HC系列、CD4000系列;而一般系统可使用TTL数字集成电路芯片。,11.1.2 硬件设计,11.1.3 软件设计,1模块化结构 根据系统的功能,把整个系统软件划分成多个主模块,每一个主模块有1个文件(或1个主文件和多个子文件构成),便于分工独立设计,各模块间尽量减少关联。模块划分如键盘和显示、射频卡操作、温度测控、变频器(电机)测控、阀门和压力测控、日期时间产生与调整等。 在各模块的设计中,按照各自的目标功能,采取自顶向下、先粗后细的方法,拟定出实现目

5、标需要的功能块,然后编写功能函数。,2软件抗干扰技术 (1)通过数字滤波提高数据采集的可靠性 算术平均法。对一点数据连续采样多次,计算其平均值,以其平均值作为采样结果。 中值法。对一个采样点连续采集多个信号,并对这些采样值进行排序,取中间值作为采样结果。 去极值算术平均法。对采样值进行排序,去掉两端相同数目的大数和小数,对剩余数的算数平均值作为采样值。,11.1.3 软件设计,(2)程序运行失常的软件抗干扰措施 设置软件陷阱。在程序所有的断裂点(函数、数表结束处、无条件转移指令处)之后和空白区域的尾端,放两条“NOP”指令和一条“LJMP 0”指令。 软件“看门狗”。使用定时器,设置定时器的定

6、时时间稍大于主程序最长的循环时间,在主程序循环体中给定时器赋初值。当程序失常时,将不能对定时器赋初值而导致其溢出并中断,在定时器中断服务程序中,使系统从0地址开始运行。,11.1.3 软件设计,11.1.4 系统调试与测试,1系统调试 包括硬件调试、软件调试和软硬件集成调试。 硬件调试的任务是排除硬件电路故障。 软件调试是利用开发工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。 软硬件集成调试(往往在现场)是将程序下载到单片机中,系统运行调试,对大系统要逐个部分调试。 在调试过程中,不断地发现错误、排除故障、修改软硬件,直到正确为止。,2系统测试 系统在现场通过调试运行后,需

7、要对系统进行测试,以检查系统是否满足原设计要求,并进一步改进和完善。 经过反复运行测试,各种性能指标满足要求后,就可以将系统交付用户,由用户操作使用,开发过程即告结束。在用户的使用的初期,需要密切关注系统运行情况。,11.1.4 系统调试与测试,11.2 基于单片机的计算器设计,主要内容 11.2.1 系统电路设计 11.2.2 系统功能设计 11.2.3 系统程序设计,11.2.1 系统电路设计,11.2.1 系统电路设计,计算器电路器件列表如下: AT89C52:单片机; 7SEG-MPX8-CA-BLUE:蓝色七段8位共阳极数码管; KEYPAD-SMALLCALC:计算器键盘; SOU

8、NDER:蜂鸣器。 数码管采用共阳极设计,段选口相应段输入0时该段点亮,输入1时不亮,而AT89C52的P0口没有上拉电阻,P0口相应位输出0时该位接地,输出1时为悬空。所以可以使用P0作为数码管的段选口。 实际应用电路,段选口和位选口应该加上驱动,其段驱动可以使用74LS245,位驱动可以用74LS07等。,11.2.2 系统功能设计,1系统主要模块及功能 1)按键识别模块,采用行扫描法识别按键,将所得按键键值通过查表转换为简易计算器键盘按键所对应的键值。 2)按键执行模块,根据所按下按键,分别执行相应的功能。 3)计算处理模块,对算术运算的处理。 4)修改显示缓冲区模块,将要显示的内容送入

9、显示缓冲区,供显示函数读取显示。,5)主模块,初始化系统,循环调用按键识别模块,有键按下执行按键执行模块。 6)定时器中断模块,定时器0定时1ms,在一次中断中执行多个任务: 对数码管动态扫描显示,每中断一次只显示1位,每位显示时间为1毫秒; 产生500Hz的蜂鸣器响声; 产生毫秒单位延时。,11.2.2 系统功能设计,11.2.2 系统功能设计,系统执行路线图,11.3 基于单片机的万年历设计,主要内容 11.3.1 实时时钟芯片DS1302简介 11.3.2 数字温度传感器DS18B20简介 11.3.3 系统电路设计 11.3.4 系统功能设计 11.3.5 系统程序设计,11.3.1

10、实时时钟芯片DS1302简介,DS1302是美国 DALLAS 公司推出的一种高性能、低功耗的实时时钟芯片。 采用 SPI 三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和 RAM数据。 可提供秒、分、时、日、星期、月和年,且具有闰年补偿功能。 工作电压宽达2.55.5V。采用双电源供电,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。,1DS1302引脚功能 Vcc1:主电源正极接入端,2.55.5V。 Vcc2:备份电源。,11.3.1 实时时钟芯片DS1302简介,SCLK:串行时钟,输入,控制数据的输入与输出。 X1、X2:振荡源,外接32

11、.768kHz晶振。 I/O:三线接口时的双向数据线。 RST:复位引脚。,11.3.1 实时时钟芯片DS1302简介,2DS1302读写操作 DS1302是 SPI 总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。DS1302的控制字如下图。,位7:必须是逻辑1。 位6:为0,存取日历时钟数据;为1,存取 RAM 数据。 位5至位1(A4A0):指示操作单元的地址。 位0:为0,进行写操作;为1,进行读操作。,11.3.1 实时时钟芯片DS1302简介,控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK 时钟的上升沿时,数据被写入 DS1302,数据输入从最

12、低位(0位)开始。 同样,在紧跟8位的控制字指令后的下一个 SCLK 脉冲的下降沿,读出 DS1302的数据,读出的数据也是从最低位到最高位。,11.3.1 实时时钟芯片DS1302简介,DS1302寄存器功能及读写数据格式,11.3.1 实时时钟芯片DS1302简介,3DS1302基本操作函数 void DS1302WriteByte(unsigned char Data) unsigned char i; for(i=8; i0; i-) Data=1; DS1302IO = CY; DS1302CLK = 1; DS1302CLK = 0; ,11.3.1 实时时钟芯片DS1302简介,

13、unsigned char DS1302ReadByte() /从DS1302读取1Byte数据 unsigned char i, temp=0; for(i=0; i8;i+) DS1302CLK = 0; if(DS1302IO!=0) temp|=(1i); DS1302CLK = 1; return(temp); ,11.3.2 数字温度传感器DS18B20简介,DS18B20数字温度传感器是DALLAS公司生产的1Wire,即单总线器件,体积小、线路简单等特点。在一根通信线上,可以挂很多这样的数字温度传感器,因此用它来组成一个测温系统,十分方便。DS18B20主要有如下特点: 单个I

14、/O引脚数据通信 每个DS18B20都有独一无二的序列号 实际应用中不需要外部任何元器件即可实现测温 测量温度范围在55到125之间 分辨率为912位可选,12位时精度为0.0625 内部有温度上、下限报警设置,1DS18B20引脚功能 DS18B20采用3脚PR-35封装(或8脚SOIC封装),引脚排列如图11-5所示,该图为DS18B20的平面向前的正视图,各引脚定义如下:,11.3.2 数字温度传感器DS18B20简介,GND:为电源地接入端 DQ:为数字信号输入/输出端 VDD:为外接供电电源正极输入端(在寄生电源接线方式时接地),11.3.2 数字温度传感器DS18B20简介,DS1

15、8B20内部结构图,2DS18B20的结构 由电源检测电路、64位光刻ROM和单线接口电路、测温元件、高低温触发器、配置寄存器、高速缓存存储器以及存储器和控制器等组成,如下图所示。,11.3.2 数字温度传感器DS18B20简介,11.3.2 数字温度传感器DS18B20简介,配置寄存器格式,温度分辨率设置表,11.3.2 数字温度传感器DS18B20简介,DS18B20 暂存寄存器分布,11.3.2 数字温度传感器DS18B20简介,ROM指令表,11.3.2 数字温度传感器DS18B20简介,RAM指令表,11.3.2 数字温度传感器DS18B20简介,3DS18B20接口电路,寄生电源供

16、电方式 外部电源供电方式,在单点测温系统中,可以使用寄生电源供电方式,在多点温度监控系统中,外部电源供电方式是DS18B20最佳的工作方式精度。,11.3.2 数字温度传感器DS18B20简介,4DS18B20的操作函数 bit Init_DS18B20(void) /初始化函数 bit x=0; DQ = 1; /DQ复位 delay_1820(8); /稍做延时 DQ = 0; /单片机将DQ拉低 delay_1820(80); /精确延时大于 480s DQ = 1; /拉高总线 delay_1820(14); x=DQ; /x=0则初始化成功 delay_1820(20); /x=1则初始化失败 return x; ,11.3.2 数字温度传感器DS18B20简介,unsigned char ReadOneChar(void) /读一个字节 uns

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号