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

上传人(卖家):三亚风情 文档编号:3042521 上传时间:2022-06-25 格式:PPT 页数:47 大小:1.10MB
下载 相关 举报
单片机原理与接口技术(C语言版)11课件.ppt_第1页
第1页 / 共47页
单片机原理与接口技术(C语言版)11课件.ppt_第2页
第2页 / 共47页
单片机原理与接口技术(C语言版)11课件.ppt_第3页
第3页 / 共47页
单片机原理与接口技术(C语言版)11课件.ppt_第4页
第4页 / 共47页
单片机原理与接口技术(C语言版)11课件.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、单片机原理与接口技术单片机原理与接口技术 (C语言版)语言版)第第11章章 单片机应用实例单片机应用实例主主 编:编:周国运周国运清华大学出版社清华大学出版社第第11章章 单片机应用实例单片机应用实例目目 录录11.1 单片机应用开发方法单片机应用开发方法11.2 基于单片机的计算器设计基于单片机的计算器设计11.3 基于单片机的万年历设计基于单片机的万年历设计本章要点本章要点本章首先介绍单片机应用开发的方法,本章首先介绍单片机应用开发的方法,然后以然后以计算器计算器和和带温度功能的万年历带温度功能的万年历两个两个单片机应用实例,示范单片机应用系统的单片机应用实例,示范单片机应用系统的设计过程

2、。设计过程。11.1 单片机应用开发方法单片机应用开发方法主要内容主要内容11.1.1 总体设计总体设计11.1.2 硬件设计硬件设计11.1.3 软件设计软件设计11.1.4 系统调试与测试系统调试与测试11.1 单片机应用开发方法单片机应用开发方法单片机系统是针对某一具体应用的专用系统,单片机系统是针对某一具体应用的专用系统,单片机的应用领域范围很广,控制形式多种多样单片机的应用领域范围很广,控制形式多种多样,在不同场合下要求各不相同,但设计开发过程,在不同场合下要求各不相同,但设计开发过程基本相同。基本相同。一个典型的单片机应用系统开发过程包括一个典型的单片机应用系统开发过程包括总体总体

3、设计设计、硬件设计硬件设计、软件设计软件设计、软硬件集成与调试软硬件集成与调试、调试运行调试运行、性能测试性能测试等几个阶段组成。在调试等几个阶段组成。在调试过程中需要对系统进行修改和完善。过程中需要对系统进行修改和完善。11.1.1 总体设计总体设计1研究开发对象和用户要求研究开发对象和用户要求2拟订方案,确定功能、性能指标拟订方案,确定功能、性能指标3软硬件功能划分软硬件功能划分在系统方案确定之后,需要对系统软硬件功能在系统方案确定之后,需要对系统软硬件功能合理安排,要根据系统的要求而定,一些硬件电合理安排,要根据系统的要求而定,一些硬件电路的功能可以由软件来实现,反之亦然。路的功能可以由

4、软件来实现,反之亦然。11.1.2 硬件设计硬件设计1系统硬件电路设计的一般原则系统硬件电路设计的一般原则选择典型电路、力求硬件电路选择典型电路、力求硬件电路规范化、模块化规范化、模块化;选择功能强的芯片,选择功能强的芯片,简化电路简化电路设计;设计;考虑以后系统功能的变化,留下扩展余地;考虑以后系统功能的变化,留下扩展余地;系统中相关的器件要尽可能做到系统中相关的器件要尽可能做到性能匹配性能匹配; 外接电路较多时,必须考虑其外接电路较多时,必须考虑其驱动能力驱动能力;考虑系统可靠性与抗干扰问题考虑系统可靠性与抗干扰问题去耦滤波去耦滤波、合理合理布线布线、信号隔离信号隔离、看门狗电路看门狗电路

5、等;等;2硬件可靠性设计硬件可靠性设计 采用采用隔离和滤波隔离和滤波技术抑制输入技术抑制输入/输出通道可能出输出通道可能出现的干扰;现的干扰; 采用采用单独供电单独供电、低通滤波器低通滤波器和和隔离变压器隔离变压器等抑等抑制供电系统的干扰;制供电系统的干扰; 采用采用屏蔽和接地屏蔽和接地措施、强弱地线分开等措施抑措施、强弱地线分开等措施抑制电磁场干扰;制电磁场干扰; 使用使用“看门狗看门狗”电路,解决电路,解决CPU运行时可能进运行时可能进入混乱或死循环。入混乱或死循环。11.1.2 硬件设计硬件设计3元器件选择原则元器件选择原则 尽可能选择单片机自身尽可能选择单片机自身集成度比较高集成度比较

6、高的型号,的型号,除了可以降低系统的硬件开销外,系统的复杂程除了可以降低系统的硬件开销外,系统的复杂程度和出错可能性也大大减低。度和出错可能性也大大减低。 尽量采用通用的尽量采用通用的大规模集成电路大规模集成电路。这样能简化。这样能简化系统的设计、安装和调试过程,也有助于提高系系统的设计、安装和调试过程,也有助于提高系统的可靠性。统的可靠性。 外围电路外围电路芯片类型一致芯片类型一致。对于低功耗应用系统。对于低功耗应用系统,必须采用,必须采用HCMOS或或CMOS芯片,如芯片,如74HC系列系列、CD4000系列;而一般系统可使用系列;而一般系统可使用TTL数字集成数字集成电路芯片。电路芯片。

7、11.1.2 硬件设计硬件设计11.1.3 软件设计软件设计1模块化结构模块化结构根据系统的功能,把整个系统软件划分成多根据系统的功能,把整个系统软件划分成多个主模块,每一个主模块有个主模块,每一个主模块有1 1个文件(或个文件(或1 1个主文个主文件和多个子文件构成),便于分工独立设计,各模件和多个子文件构成),便于分工独立设计,各模块间尽量减少关联。模块划分如键盘和显示、射频块间尽量减少关联。模块划分如键盘和显示、射频卡操作、温度测控、变频器(电机)测控、阀门和卡操作、温度测控、变频器(电机)测控、阀门和压力测控、日期时间产生与调整等。压力测控、日期时间产生与调整等。在各模块的设计中,按照

8、各自的目标功能,在各模块的设计中,按照各自的目标功能,采取采取自顶向下自顶向下、先粗后细先粗后细的方法,拟定出实现目标的方法,拟定出实现目标需要的功能块,然后编写功能函数。需要的功能块,然后编写功能函数。2软件抗干扰技术软件抗干扰技术(1)通过数字滤波提高数据采集的可靠性)通过数字滤波提高数据采集的可靠性 算术平均法算术平均法。对一点数据连续采样多次,计算。对一点数据连续采样多次,计算其平均值,以其平均值作为采样结果。其平均值,以其平均值作为采样结果。 中值法中值法。对一个采样点连续采集多个信号,并。对一个采样点连续采集多个信号,并对这些采样值进行排序,取中间值作为采样结果对这些采样值进行排序

9、,取中间值作为采样结果。 去极值算术平均法去极值算术平均法。对采样值进行排序,去掉。对采样值进行排序,去掉两端相同数目的大数和小数,对剩余数的算数平两端相同数目的大数和小数,对剩余数的算数平均值作为采样值。均值作为采样值。11.1.3 软件设计软件设计(2)程序运行失常的软件抗干扰措施)程序运行失常的软件抗干扰措施 设置软件陷阱设置软件陷阱。在程序所有的断裂点(函数、数。在程序所有的断裂点(函数、数表结束处、无条件转移指令处)之后和空白区域的表结束处、无条件转移指令处)之后和空白区域的尾端,放两条尾端,放两条“NOP”指令和一条指令和一条“LJMP 0”指令指令。 软件软件“看门狗看门狗”。使

10、用定时器,设置定时器的定。使用定时器,设置定时器的定时时间稍大于主程序最长的循环时间,在主程序循时时间稍大于主程序最长的循环时间,在主程序循环体中给定时器赋初值。当程序失常时,将不能对环体中给定时器赋初值。当程序失常时,将不能对定时器赋初值而导致其溢出并中断,在定时器中断定时器赋初值而导致其溢出并中断,在定时器中断服务程序中,使系统从服务程序中,使系统从0地址开始运行。地址开始运行。11.1.3 软件设计软件设计11.1.4 系统调试与测试系统调试与测试1系统调试系统调试包括包括硬件调试硬件调试、软件调试软件调试和和软硬件集成调试软硬件集成调试。硬件硬件调试的任务是调试的任务是排除硬件电路故障

11、排除硬件电路故障。软件软件调试是利用开发工具进行在线仿真调试,调试是利用开发工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障除发现和解决程序错误外,也可以发现硬件故障。软硬件软硬件集成调试(往往在现场)是将程序下载集成调试(往往在现场)是将程序下载到单片机中,系统运行调试,对大系统要到单片机中,系统运行调试,对大系统要逐个部分逐个部分调调试试。在在调试过程中,不断地发现错误、排除故障、调试过程中,不断地发现错误、排除故障、修改软硬件,直到正确为止。修改软硬件,直到正确为止。2系统测试系统测试系统在现场通过调试运行后,需要对系统进行系统在现场通过调试运行后,需要对系统进行测试,以

12、检查系统测试,以检查系统是否满足原设计要求是否满足原设计要求,并进一步,并进一步改进和完善改进和完善。经过反复运行测试,各种性能指标满足要求后经过反复运行测试,各种性能指标满足要求后,就可以将系统交付用户,由用户操作使用,开发,就可以将系统交付用户,由用户操作使用,开发过程即告结束。在用户的使用的初期,需要密切关过程即告结束。在用户的使用的初期,需要密切关注系统运行情况。注系统运行情况。11.1.4 系统调试与测试系统调试与测试11.2 基于单片机的计算器设计基于单片机的计算器设计主要内容主要内容11.2.1 系统电路设计系统电路设计11.2.2 系统功能设计系统功能设计11.2.3 系统程序

13、设计系统程序设计11.2.1 系统电路设计系统电路设计11.2.1 系统电路设计系统电路设计计算器电路器件列表如下:计算器电路器件列表如下:AT89C52:单片机;:单片机;7SEG-MPX8-CA-BLUE:蓝色七段:蓝色七段8位共阳位共阳极数码管;极数码管;KEYPAD-SMALLCALC:计算器键盘;:计算器键盘;SOUNDER:蜂鸣器。:蜂鸣器。数码管采用共阳极设计,段选口相应段输入数码管采用共阳极设计,段选口相应段输入0时该段点亮,输入时该段点亮,输入1时不亮,而时不亮,而AT89C52的的P0口没口没有上拉电阻,有上拉电阻,P0口相应位输出口相应位输出0时该位接地,输出时该位接地,

14、输出1时为悬空。所以可以时为悬空。所以可以使用使用P0作为数码管的段选口作为数码管的段选口。实际应用电路,段选口和位选口应该实际应用电路,段选口和位选口应该加上驱加上驱动动,其段驱动可以使用,其段驱动可以使用74LS245,位驱动可以用,位驱动可以用74LS07等。等。11.2.2 系统功能设计系统功能设计1系统主要模块及功能系统主要模块及功能1)按键识别模块)按键识别模块,采用行扫描法识别按键,采用行扫描法识别按键,将所得按键键值通过查表转换为简易计算器键盘将所得按键键值通过查表转换为简易计算器键盘按键所对应的键值。按键所对应的键值。2)按键执行模块)按键执行模块,根据所按下按键,分别执,根

15、据所按下按键,分别执行相应的功能。行相应的功能。3)计算处理模块)计算处理模块,对算术运算的处理。,对算术运算的处理。4)修改显示缓冲区模块)修改显示缓冲区模块,将要显示的内容送,将要显示的内容送入显示缓冲区,供显示函数读取显示。入显示缓冲区,供显示函数读取显示。5)主模块)主模块,初始化系统,循环调用按键识别,初始化系统,循环调用按键识别模块,有键按下执行按键执行模块。模块,有键按下执行按键执行模块。6)定时器中断模块)定时器中断模块,定时器,定时器0定时定时1ms,在一,在一次中断中执行多个任务:次中断中执行多个任务:对数码管动态扫描显示,每中断一次只显对数码管动态扫描显示,每中断一次只显

16、示示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 实时时钟芯片实时时钟芯片DS1302简

17、介简介DS1302是美国是美国 DALLAS 公司推出的一种高公司推出的一种高性能、低功耗的实时时钟芯片。性能、低功耗的实时时钟芯片。采用采用 SPI 三线接口与三线接口与 CPU 进行进行同步通信同步通信,并可采用突发方式一次传送多个字节的时钟信号并可采用突发方式一次传送多个字节的时钟信号和和 RAM数据。数据。可提供可提供秒、分、时、日、星期、月和年秒、分、时、日、星期、月和年,且,且具有闰年补偿功能。具有闰年补偿功能。工作电压宽达工作电压宽达2.55.5V。采用。采用双电源供电双电源供电,可设置备用电源充电方式,提供了对后备电源,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的

18、能力。进行涓细电流充电的能力。1DS1302引脚功能引脚功能Vcc1:主电源正极接入:主电源正极接入端,端,2.55.5V。Vcc2:备份电源。:备份电源。11.3.1 实时时钟芯片实时时钟芯片DS1302简介简介SCLK:串行时钟,输入,控制数据的输入与输出。:串行时钟,输入,控制数据的输入与输出。X1、X2:振荡源,外接:振荡源,外接32.768kHz晶振。晶振。I/O:三线接口时的双向数据线。:三线接口时的双向数据线。RST:复位引脚。:复位引脚。11.3.1 实时时钟芯片实时时钟芯片DS1302简介简介 2DS1302读写操作读写操作 DS1302是是 SPI 总线驱动总线驱动方式。它

19、不仅要向寄存方式。它不仅要向寄存器器写入控制字写入控制字,还需要,还需要读取相应寄存器读取相应寄存器的数据。的数据。DS1302的控制字如下图。的控制字如下图。bit7bit6bit5bit4bit3bit2bit1bit01RAM/ /CK A4A3A2A1A0RD/ / WR位位7:必须是逻辑:必须是逻辑1。位位6:为:为0,存取日历时钟数据;为,存取日历时钟数据;为1,存取,存取 RAM 数据。数据。位位5至位至位1(A4A0):指示操作单元的地址。):指示操作单元的地址。位位0:为:为0,进行写操作;为,进行写操作;为1,进行读操作。,进行读操作。11.3.1 实时时钟芯片实时时钟芯片

20、DS1302简介简介控制字总是从控制字总是从最低位开始最低位开始输出。在控制字指输出。在控制字指令输入后的下一个令输入后的下一个SCLK 时钟的上升沿时,时钟的上升沿时,数据被数据被写入写入 DS1302,数据输入从最低位(,数据输入从最低位(0位)开始。位)开始。同样,在紧跟同样,在紧跟8位的控制字指令后的下一个位的控制字指令后的下一个 SCLK 脉冲的下降沿,脉冲的下降沿,读出读出 DS1302的数据的数据,读出,读出的数据也是从最低位到最高位。的数据也是从最低位到最高位。11.3.1 实时时钟芯片实时时钟芯片DS1302简介简介功功 能能寄存器寄存器地址地址数据格式数据格式数据范围数据范

21、围76543210读读/写秒写秒0 x81/0 x80 CH秒的十位秒的十位秒的个位秒的个位0-59读读/写分写分0 x83/0 x820分的十位分的十位分的个位分的个位0-59读读/写小时写小时0 x85/0 x84120AP 时的个位时的个位1-12240时的十位时的十位0-23读读/写日写日0 x87/0 x8600日的十位日的十位日的个位日的个位1-31读读/写月写月0 x89/0 x88月的十位月的十位月的个位月的个位1-12读读/写星期写星期0 x8b/0 x8a00000星期星期1-7读写年读写年0 x8d/0 x8c年的十位年的十位年的个位年的个位0-99写保护控制写保护控制

22、0 x8f/0 x8e WP0000000 多字节操作多字节操作 0 xbf/0 xbe 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简介简介unsigned char DS1302ReadB

23、yte() /从从DS1302读取读取1Byte数据数据unsigned char i, temp=0;for(i=0; i8;i+)DS1302CLK = 0;if(DS1302IO!=0) temp|=(10;i-)DQ = 0; /给脉冲信号给脉冲信号dat=1;DQ = 1; /给脉冲信号给脉冲信号delay_1820(1);if(DQ)dat|=0 x80;delay_1820(4);return(dat);11.3.2 数字温度传感器数字温度传感器DS18B20简介简介void WriteOneChar(unsigned char dat)/写一个字节写一个字节unsigned c

24、har i;for (i=8; i0; i-)DQ = 0;DQ = dat&0 x01;delay_1820(5);DQ = 1;dat=1; 11.3.2 数字温度传感器数字温度传感器DS18B20简介简介uint ReadTemperature(void)/读取温度读取温度unsigned char temp_l,temp_h;unsigned int temp=0;Init_DS18B20();WriteOneChar(0 xCC); /跳过读序列号的操作跳过读序列号的操作WriteOneChar(0 x44);/启动温度转换启动温度转换Init_DS18B20();WriteOneC

25、har(0 xCC);/跳过读序列号的操作跳过读序列号的操作WriteOneChar(0 xBE); /读取温度寄存器等读取温度寄存器等temp_l=ReadOneChar();/前两个就是温度前两个就是温度temp_h=ReadOneChar();temp=temp_h;temp=(temp8)+temp_l;return(temp);11.3.3 系统电路设计系统电路设计11.3.4 系统功能设计系统功能设计系统系统主要模块如下:主要模块如下:1)功能键处理)功能键处理模块。模块。2)调整键处理)调整键处理模块。模块。3)显示处理)显示处理模块。模块。4)主模)主模块。块。5)定时器中断模

26、块,处理闪烁,读取时间,读取)定时器中断模块,处理闪烁,读取时间,读取温度,显示等。温度,显示等。6)其他模块,读写)其他模块,读写DS1302时间,读取时间,读取DS18B20温温度参看本节和第度参看本节和第10章相关内容。章相关内容。11.3.4 系统功能设计系统功能设计系统执行路线图系统执行路线图11.3.4 系统功能设计系统功能设计系统执行路线图系统执行路线图本章小结本章小结本章介绍单片机应用开发的方法,以基于单本章介绍单片机应用开发的方法,以基于单片机的简易计算器和万年历两个应用实例,示片机的简易计算器和万年历两个应用实例,示范单片机应用系统设计的过程,为读者借鉴参范单片机应用系统设计的过程,为读者借鉴参考。考。单片机应用开发的方法包括总体设计、硬软单片机应用开发的方法包括总体设计、硬软件设计和系统调试等,两个开发实例从系统电件设计和系统调试等,两个开发实例从系统电路设计、功能设计等详细介绍开发过程。路设计、功能设计等详细介绍开发过程。本章完本章完

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机原理与接口技术(C语言版)11课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|