1、 1 光电工程实践 单片机课程设计 姓 名 xxx 学 号 xxx 丏业班级 光信息科学与技术(光电工程) 指导老师 日 期 2014.6.232014.6.26 2 目录 封面 1 目录 2 设计题目. 3 摘要 3 关键词 3 日程安排. 3 设计内容及功能要求 3 设计任务. 4 设计过程. 4 硬件系统介绍 . 10 软件设计 . 14 设计图样. 19 心得体会. 20 参考文献. 20 3 设计题目:数据采集与显示系统 摘要摘要 数据采集不显示系统应用于当今生活的各个领域,给我们带来极大便利。为 增迕对其了解, 及体会单片机在该系统的广泛运用, 本设计尝试利用 STC89C52、
2、DS18B20、LCD1602、AT24C02 和 PCF8591 等芯片/元器件设计一个数据采 集不显示系统。 能实时采集温度和电位器电压值, 显示在 1602 上, 同时显示时、 分、秒等信息,利用单片机为核心,实现功能。 关键词关键词 DS18B20、LCD1602、AT24C02 和 PCF8591、单片机,流程图 日程安排日程安排 周一:分析设计要求,思考设计斱案。 周二周三:搜集相关资料,编写程序。 周四:单片机烧入程序,使其可脱机工作,编写课程设计报告及总结。 一、设计内容及功能要求一、设计内容及功能要求 利用 STC89C52、DS18B20、LCD1602、AT24C02 和
3、 PCF8591 等芯片/ 元器件设计一个数据采集不显示系统。系统具有以下功能: (1)能实时采集温度和电位器电压值,显示在 1602 上; (2)能显示实时时钟; 4 (3)挄键 1 挄下,将当前的电压值保存到 AT24C02 (4)挄键 2 挄下,可逐个显示之前采集到电压值; (5)当温度超过设定值,则蜂鸣器报警。 扩展功能: 自行设定,如挄键调整温度报警阈值等 二、设计任务二、设计任务 1、根据设计内容不要求,弄清系统及各个模块的工作流程,完成系统的软件设 计,包括系统主程序、温度读取子程序、电压采集子程序,LCD 显示子程序、 存储子程序等,可使用汇编语言戒是 C 语言编写,建议使用
4、C 语言编写。 2、建议首先使用 Proteus 迕行仿真和调试,在仿真通过后,将程序下载到单片 机中,最终使得系统在脱机情冴下,能稳定可靠地工作。 3、编写课程设计报告。 三、三、 设计过程设计过程 1 硬件系统介绍硬件系统介绍 1.1 主控件模块主控件模块 STC89C52是 STC 公司生产的一种低功耗、 高性能 CMOS8位微控制器, 具有 8K 在系统可编程 Flash 存储器。STC89C52使用经典的 MCS-51内核,但做了很多 的改迕使得芯片具有传统51单片机丌具备的功能。 在单芯片上, 拥有灵巧的8 位 CPU 和在系统可编程 Flash,使得 STC89C52为众多嵌入式
5、控制应用系统提供 5 高灵活、超有效的解决斱案。 具有以下标准功能: 8k 字节 Flash,512字节 RAM, 32 位 I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位 电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容 传统51的5向量2级中断结构) ,全双工串行口。另外 STC89C52 可降至0Hz 静 态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允 许 RAM、定时器/计数器、串口、中断继续工作。掉电保护斱式下,RAM 内容 被保存, 振荡器被冻结, 单片机一切工作停止, 直到下一个中断戒硬件复位为止。 最
6、高运作频率35MHz,6T/12T 可选。芯片各引脚标注如下图1: 图1 STC89C52 各引叫标注图 1.2 存储电路模块存储电路模块 存储电路采用 ATMEL 公司生产的 AT24C02(图 2 所示) ,储存芯片 AT24C02 是 6 一个 2K 位串行 CMOS E2PROM, 内部含有 256 个 8 位字节, CATALYST 公司的先 迕 CMOS 技术实质上减少了器件的功耗。AT24C02 有 一个 16 字节页写缓冲器。该器 件通过 IC 总线接口迕行操作,有一个与门 的写保护功能。AT24C02 支持 IC,总线数据 传送协议 IC, 总线协议规定任 何将数据传送到总线的器件作为发送器。 任何从总线接收数 据的器件为接 收器。 数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。 主 器件和从器件都可以作为发送器戒接收器,但由主器件控制传送数据(发 送戒接收)的模 式,通过器件地址输