预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机原理实验综合设计 一、综合实验项目 1、室内温、湿度仪的设计 要求: 时时显示室内的温度和湿度,显示年、月、日、星期、时、分、秒 能够通过键盘输入日期和时间的初值 通过功能键能够实现数据储存、查询、上传(串行通讯)功能 (4)完成设计报告 2、信号分析仪的设计 要求: 通过A/D能够测量0~5V电压,通过D/A能够输出一定频率的正弦波信号 时时显示年、月、日、星期、时、分、秒 能够通过键盘输入日期和时间的初值 通过功能键能够实现三角波、方波、正弦波并能改变频率等功能 (5)完成设计报告 3、电子交通灯的设计 要求: 通过8*8点阵简单实现直行、转弯的交通指挥设计 显示年、月、日、星期、时、分、秒 能够通过键盘输入日期和时间的初值 通过功能键能够改变交通指挥功能(如时间的控制等) (5)完成设计报告 二、设计报告要求 1绪论 1.1引言(简单介绍单片机技术的应用和发展) 1.2系统方案设计 3系统的硬件设计 4系统的软件设计 5结论(简述系统实现的功能、应用、不足和改进) 万年历功能温度计课程设计 电信一班王浩&蔡森河&韩子鹏 1系统方案设计 本系统以单片机最小系统为核心,设计并制作一个数字式温度计应用系统。主要包括电源模块、温湿度采集模块DS18B20、存储器模块24C02、键盘模块、LCD1602显示模块、时钟芯片模块DS1302、串行口模块等部分组成。 功能:实现对室内温湿度的实时测量,显示和存储。通过串口将实时温度上传到电脑。附加有万年历等功能,更具有实用性。并能通过按键实现对万年历的时间的设置。 根据设计的要求,系统硬件电路的设计框图如图1-1所示。 温度采集单片机控制模块存储模块 键盘控制显示模块 时钟模块串行口模块 图1-1系统设计框图 2系统硬件设计 硬件设计图2-1所示。Protues软件是英国Labcenterelectronics公司出版的EDA工具软件,功能比较强大,能够实现多种单片机实现仿真功能,对缩小开发周期有很大的意义。本设计的部分硬件设计首先是在Protues软件环境中仿真实现的,这样可以减少研发的成本提高效率。 图2-1系统硬件设计图 3.系统软件设计 3.1系统主程序流程图 对实时温度的显示,精确到小数点后一位。显示日期与时间,可通过按键控制对时间和日期赋初值,按键K1选定,按键K2加一,按键K2减一。3:可通过串行口上传实时温度和文本信息。图3-1为系统主程序流程图。对单片机上电,系统对lcd1602,ds18b20和ds1302初始化,允许中断对键盘进行扫描。显示实时温度及日期与时间。 图3-1系统主程序流程图 程序初始化 LCD清屏显示 有按键按下 时钟芯片赋初值 取时钟、温度 温度采集 LCD12864显示 串行口上传 温度变化 按键中断程序 Y N 3.2DS1302程序流程图 DS1302程序流程图如图3-2所示。DS1302是美国Dallas公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、目、星期、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达2.5~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟或RAM数据。DS1302内部有一个31~8的用于临时性存放数据的RAM寄存器。 开始 结束 移入温度寄存器 温度转移成功? 写DS18B20读取温度指令 初始化DS18B20 单片机读取温度数据 N Y 图3-2DS1302程序流程图 3.3串行通信 本系统可通过串行通信向PC机发送信息,包括实时温度及文本信息,只要上位机利用串口调试助手即可实现。 图3-3串行通信程序流程图 4结论 简述各模块功能: (1):本系统采用STC89C52单片机为核心,利用时钟芯片,温度采集模块,键盘及显示模块等实现实时温度的显示,储存,上传和可调万年历时钟的功能。 (2):时钟芯片利用DS1302芯片,可调节时间日期,并有LCD1602显示。 (3):温度采集模块利用DS18B20芯片,可以读取实时温度,通过LCD1602显示,并可以存储并通过串口通信上传到PC。 (4):LCD1602显示模块使实验结果可视化,显示日期,时间,星期与温度等。 (5):本系统还可接入LED,蜂鸣器等终端模块,完成温度报警器等功能。 :源程序没有用模块化方式编程,而是直接将将头文件写入程序,将各个模块写成子程序,并嵌入到主程序中,简单易懂,方便修改。 不足:本系统还有很多不足之处,例如没有温度报警装置,对程序的优化还不够完善,因为对单片机的学习有限,很多程序不知如何加入到系统中,因此使得功能有限,希望在以后的学习中不断完善自己的单片机知识,能够做出更丰富