基于51单片机的开发板设计毕业论文.doc_第1页
基于51单片机的开发板设计毕业论文.doc_第2页
基于51单片机的开发板设计毕业论文.doc_第3页
基于51单片机的开发板设计毕业论文.doc_第4页
基于51单片机的开发板设计毕业论文.doc_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西安邮电学院西安邮电学院 毕毕 业业 设设 计(论计(论 文)文) 题 目: 基于 51 单片机的开发板设计 院 (系): 专 业: 班 级: 学生姓名: 导师姓名: 职称: 西西 安安 邮邮 电电 学学 院院 毕业设计毕业设计( (论文论文) )任务书任务书 学生姓名学生姓名指导教师指导教师职称职称 院(系)院(系) 专业专业 题目题目 S51 开发板的设计 任务与要求任务与要求 一、任务一、任务 C51 系列单片机已趋淘汰,S51 单片机除兼容 C51 外,还具有 ISP 在 线编、高工作频率、全新的加密算法等特点。本次任务将基于 S51 设计制 造一个开发板及下载器,它将具有一般开发板通用结构,并基此硬件进行 相关软件设计。 二、要求:二、要求: 1、 熟悉 S51 单片机及其 Keil C 设计软件的使用。 2、 完成硬件电路设计,应包括流水灯单元、独立按键单元、矩阵键盘单 元、液晶单元(包括 1602、12864) 、控制器单元、AD 单元、RS232 及 RS485 通信单元等; 3、 完成软件设计,主要包括各功能单元的验证程序开发; 4、 完成开发板功能验证。 开始日期开始日期2010 年 3 月 8 日完成日期完成日期2010 年 6 月 20 日 院长签字院长签字 2010年1月8日 西西 安安 邮邮 电电 学学 院院 毕毕 业业 设设 计计 ( (论文论文) ) 工工 作作 计计 划划 学生姓名学生姓名 _ 指导教师指导教师_职称职称 _ _ 院(系)院(系)_ _专业专业 _ _ 题目题目 S51 开发板的设计 工作进程工作进程 第一周 至第二周 查找 S51 单片机资料,确定软硬件设计总体方案。 第三周至第五周 使用 Protel 软件,确定单片机外围电路的各功能模块硬件设计。 第六周至第八周 使用 Keil C 设计软件,对各个功能模块进行软件设计。 第九周至第十二周 利用 Proteus 进行软件仿真,对功能模块进行仿真验证,仿真验 证合格后进行 PCB 加工,焊接元器件,制作出 S51 开发板及下 载器,并对开发板和下载器功能进行最后验证,保证功能全部 能够实现。 第十三周至第十四周 撰写毕业论文,准备答辩。 起 止 时 间工 作 内 容 主要参考书目(资料) 相关论文(电子版) ; 新概念 51 单片机 C 语言教程 ; 新编 MCS-51 单片机应用设计 ; 51 单片机 C 语言应用程序设计实例精讲 ; 及相关网站 计算机、S51 控制器及外围元件、相关传感器、配套软件 除每周定时具体指导外,学生有问题也可随时联系指导。 如有特殊原因可是当调整,否则按计划执行。 主要参考书目(资料) 主要仪器设备及材料 论文(设计)过程中教师的指导安排 对计划的说明 1本课题所涉及的问题及应用现状综述 由于具有低成本、小体积、高可靠性、具有高附加值、通过更改软件就可以改 变控制对象等优点,单片机越来越成为电子工程师设计产品时的首选器件之一。过 去一个复杂电路才能实现的功能,现在用一个纯单片机芯片就能完成。单片机控制 系统正以空前的速度取代着经典电子控制系统,单片机的应用开发技术已成为大学 生的必备技能。因此拥有一块单片机开发板对大学生的单片机学习具有着极其重要 的意义。但是单片机学习效果的优劣直接取决于单片机的选择,传统的 C51 系列单 片机内部具有 128 字节 RAM、5 个中断源、32 条 I/O 口线、2 个 16 位定时器、4KB 的 程序存储器、一个全双工异步串行口。对 C51 系列单片机的程序烧写要依靠单独的 烧写器,烧写器的价格不但昂贵,而且不方便初学者操作。为了节约成本、只需简 洁操作即可烧写单片机,本开发板选择具有 ISP 在线编程功能的 S51 单片机,该单 片机不需要烧写器,可在开发板上 ISP 在线编程,具有广泛的应用前景。 S51 单片机除兼容 C51 单片机外,还具有工作频率 0 至 33MHz 的高工作频率;三 级程序加密锁定的全新加密算法;4KB 可编程快闪存储器可重复擦写 1000 次,数据 保存达十年以上等特点。可以满足绝大多数的实际应用开发需求,在开发板上使用 十分方便。 设计基于 S51 单片机的开发板,具有一般开发板通用结构,并基于硬件进行相 关软件设计。利用 C 语言开发程序并实现 ISP 在线下载到单片机,将二者有机的结 合,发挥各自的优势。采用 C 语言进行设计不必对单片机和硬件的接口结构有很深 入的了解,编译器可以自动完成变量存储单元的分配,编程者只需专注于软件的设 计,大大加快了软件的开发速度;C 语言模块化程序结构特点,可以使程序模块共享、 丰富;C 语言可读性强的特点,可以使大家更容易的借鉴前人的开发经验,提高自己 的软件设计水平。ISP 在线下载程序,加快了程序设计者调试的进度,能使设计者所 设计的程序尽快得到验证。 2本课题需要重点研究的关键问题、解决的思路及实现预期目标的可行 性分析 本课题需要重点研究得关键问题及解决思路主要有: (1)研究单片机内部结构及特点,存储器组织及外部接口,中断及串口功能, 功能寄存器的相关配置,确定软硬件设计总体方案; 解决思路就是搜集单片机相关资料,并加以仔细的研究,并学习科学的方案 设计及评估。 (2)研究设计单片的最小系统及外围电路,在 Protel 中进行电路的设计; 解决思路是查阅资料,在 Protel 中对单片机的各个功能模块进行外部电路 的设计,在实现各个模块的功能的前提下充分合理利用单片机的内部资源和外围接 口,以求最大限度的发挥单片机的功能。 (3)研究设计单片机各个外围功能模块的驱动软件; 解决思路是学会使用 Keil C 进行编辑、编译及仿真调试,实现对单片机进 行 C 语言开发。 (4)对开发板的功能进行仿真验证; 以 Proteus 为平台,对单片机外围各个功能模块进行软件仿真验证功能。 (5)板上资源的硬件实现及下载器的制作。 对软硬件设计仿真验证功能无误后,将 Protel 绘制的 PCB 进行加工、焊接元 器件,制作出 S51 开发板及下载器。 (6)开发板功能验证。 对单片机烧写相应的模块程序,验证功能是否能够实现。 此次毕设的预期目的如下: (1)掌握单片机的相关理论知识;学习单片机相关寄存器的配置,为学习其 他 MCU 打下基础;学习系统科学的方案设计方法。 (2)掌握硬件设计和软件设计的基本知识,学会使用基本的设计软件,依据 总体的设计方案对单片机进行软硬件开发。 (3)撰写毕业论文。 由于掌握知识的局限性,对本次毕业设计还需要学习很多软硬件相关知识, 相信在自己查找资料认真学习以及老师的指导下,能够顺利完成这次的任务。 3完成本课题的工作方案 完成本课题,我拟定的工作方案如下: 第一周 至 第二周 查找 S51 单片机资料,确定软硬件设计总体方案 第三周 至 第五周 使用 Protel 软件,确定单片机外围电路的各功能模块 硬件设计 第六周 至 第八周 使用 Keil C 设计软件,对各个功能模块进行软件设计 第九周日至第十二周 利用 Proteus 进行软件仿真,对功能模块进行仿真验 证,仿真验证合格后进行 PCB 加工,焊接元器件,制 作出 S51 开发板及下载器,并对开发板和下载器功能 进行最后验证,保证功能全部能够实现。 第十三周至第十四周 撰写毕业论文,做 PPT,准备答辩 4指导教师审阅意见 指导教师指导教师(签字): 年 月 日 说明: 本报告必须由承担毕业论文(设计)课题任务的学生在毕业论文(设计) 正式开 始的第 1 周周五之前独立撰写完成,并交指导教师审阅。 西西安安邮邮电电学学院院毕毕业业设设计计 (论论文文)成成绩绩评评定定表表 学生姓名性别学号 专 业 班 级 课题名称S51 开发板的设计 课题 类型 硬件 设计 难 度 一 般 毕业设计 (论文)时 间 2009 年年 3 月月 8 日日6 月月 20 日日 指导教师 课题任务 完成情况 论 文 (千字); 设计、计算说 明书 (千字); 图纸 (张); 其它 (含附 件): 指导教师意见 分项得分:开题调研论证 分; 课题质量(论文内容) 分; 创新 分; 论文撰写(规范) 分; 学习态度 分; 外文翻译 分 指导教师审阅成绩: 指导教师(签字): 年 月 日 评 阅 教 师 意 见 分项得分:选题 分; 开题调研论证 分; 课题质量(论文内容) 分; 创新 分; 论文撰写(规范) 分; 外文翻译 分 评阅成绩: 评阅教师(签字): 年 月 日 验 收 小 组 意 见 分项得分:准备情况 分; 毕业设计(论文)质量 分; (操作)回答问题 分 验收成绩: 验收教师(组长)(签字): 年 月 日 答 辩 小 组 意 见 分项得分:准备情况 分; 陈述情况 分; 回答问题 分; 仪表 分 答辩成绩: 答辩小组组长(签字): 年 月 日 成绩计算方法 (填写本系实用比例) 指导教师成绩指导教师成绩 20 () 评阅成绩评阅成绩 30 () 验收成绩验收成绩 30 () 答辩成绩答辩成绩 20 () 学生实得成绩(百分制) 指导教师成绩指导教师成绩 评阅成绩评阅成绩 验收成绩验收成绩 答辩成绩答辩成绩 总评总评 答 辩 委 员 会 意 见 毕业论文(设计)总评成绩(等级): 院(系)答辩委员会主任(签字): 院(系)(签章) 年 月 日 备 注 西安邮电学院毕业论文(设计)成绩评定表(续表) S51 开发板的设计 目录 摘摘 要要 I ABSTRACTABSTRACT II 1 1 引言引言 1 2 2 系统方案系统方案 2 2.1 总体设计方案 2 2.2 设计原则 2 3 3 硬件部分硬件部分 3 3.1 硬件结构框图 3 3.2 硬件电路设计 4 3.2.1 S51 单片机主控制模块 .4 3.2.2 键盘模块.4 3.2.3 AD 模块5 3.2.4 DA 模块6 3.2.5 DS1302 时钟模块.7 3.2.6 测温模块.9 3.2.7 串行通信模块.10 3.2.8 显示模块.12 3.2.9 下载器模块.16 3.2.10 其他模块.17 4 4 软件部分软件部分 19 4.1 整体程序设计 .19 4.2 分模块程序设计 .19 4.2.1 键盘模块程序设计.19 4.2.2 AD 模块程序设计20 4.2.3 DA 模块程序设计22 4.2.4 DS1302 时钟模块程序设计.23 4.2.5 测温模块程序设计.25 4.2.6 串行通信模块程序设计.28 4.2.7 显示模块程序设计.30 4.2.8 其他模块.38 5 5 开发板设计及测试开发板设计及测试 41 S51 开发板的设计 5.1 开发板 PCB 设计 .41 5.2 开发板测试 .41 6 6 结论结论 43 致谢致谢 44 参考文献参考文献 45 附录附录 46 附录 1 键盘模块部分程序 46 附录 2 AD 模块部分程序 .46 附录 3 DA 模块部分程序 .48 附录 4 DS1302 时钟模块部分程序 .48 附录 5 测温模块部分程序 51 附录 6 单片机通过 MAX485 与 PC 机通讯程序 52 附录 7 LCD1602 显示模块部分程序 53 附录 8 开发板整观图 55 附录 9 下载器整观图 55 S51 开发板的设计 I 摘 要 设计一种基于 S51 单片机的开发板,该开发板具有成本低、体积小、可靠性高、 功能齐全、低功耗设计、操作方便等特点。本论文详细介绍了该开发板的开发过程 及相关硬件结构和软件设计。开发板以 ATMEL 公司的 AT89S51 单片机为核心控制 器,板上资源主要包括数据采集处理模块、DS1302 时钟模块、通信模块、液晶显示 模块、键盘模块等。针对各个硬件模块开发了相应的软件模块,包括各个控制驱动 程序、AD/DA 程序、RS232/ RS485 通信程序、液晶显示程序等。 开发板可以作为主控制模块安装于控制系统中执行控制任务,也可以用作实验 板,完成单片机各类通用实验,操作简单,控制结果可见,性价比高,可以应用于 高校、科研院所的实验室等场合,具有一定的实用价值和现实意义。 关键词关键词:S51 DS1302 通信 液晶显示 键盘 S51 开发板的设计 II Abstract Design a development board based on S51 MCU,the board has characteristics of low cost, small size, high reliability, full-featured, low-power design and easy to operate. This paper introduces the development process of the development board and related hardware and software design. Development board using AT89S51 of ATMEL Corporation as core controller, resources on-board include data acquisition and processing module, DS1302 clock module, communication module, LCD module and keyboard module. Design software module corresponding to each hardware module, including the driver and control programs, AD/DA programs, RS232/RS485 communication programs, liquid crystal display programs and so on. Development board can be used as the main control module installed in the control system to perform control tasks, also can be used as experimental board, complete all kinds of universal experiments of MCU, operated simply, control results can be seen,high cost performance, can be applied to universities, research institutes, laboratories and so on, has some practical value and practical significance. Key words: S51 DS1302 communication LCD keypad S51 开发板的设计 1 1 引言 单片机具有成本低、体积小、可靠性高、具有高附加值、通过更改软件就可以 改变控制对象等优点,单片机越来越成为电子工程师设计产品时的首选器件之一。 因此拥有一块单片机开发板对单片机学习具有着极其重要的意义。但是单片机学习 效果的优劣直接取决于单片机的选择,C51 系列单片机内部具有 128 字节 RAM、5 个中断源、32 条 I/O 口线、2 个 16 位定时器、4KB 的程序存储器、一个全双工异步 串行口。本开发板选择具有 ISP 在线编程功能的 S51 单片机,该单片机不需要烧写 器,可在开发板上 ISP 在线编程,具有广泛的应用前景。 S51 单片机除兼容 C51 单片机外,还具有工作频率 0 至 33MHz 的高工作频率; 可以满足绝大多数的实际应用开发需求,在开发板上使用十分方便。 本课题设计的 S51 单片机开发板,具有一般开发板通用结构,并基于硬件进行 相关软件设计。利用程序开发语言开发程序并实现 ISP 在线下载到单片机,无需配 置单独的下载器。单片机使用 ISP 在线下载程序,加快了程序设计者调试的进度, 使设计者所设计的程序尽快得到验证。通过对开发板上的模块进行实验,可以提高 针对不同硬件进行编程的能力,同时通过实验现象对所用的硬件也有了更深一步的 认识,因此该开发板具有一定的实用价值和现实意义。 S51 开发板的设计 2 2 系统方案 2.1 总体设计方案 本开发板共分为十四个模块,分别是:S51 单片机主控制器模块、键盘模块、 AD 模块、DA 模块、DS1302 时钟模块、测温模块、MAX232 模块、MAX485 模块、 数码管模块、LCD1602 模块、LCD12864 模块、下载器模块、流水灯模块、蜂鸣器 模块。其中以 S51 单片机作为核心控制器;键盘模块用来向单片机输入特定编码的 信息;AD 模块用来实现模数转换;DA 模块用来实现 DA 转换;DS1302 时钟模块 用来实现实时时钟;测温模块用来测量环境温度;RS232 模块和 RS485 模块通过电 平转换实现通信;数码管模块用来显示简单的数字、字母;LCD1602 模块用来显示 字母、数字、符号;LCD12864 模块用来显示图像、符号、汉字;下载器模块用来 实现 S51 单片机的 ISP 在线编程;流水灯模块用来显示单片机 I/O 口电平的变化; 蜂鸣器模块用来发出声音。 2.2 设计原则 开发板系统的扩展和配置应遵循以下设计原则: (1)尽可能选择典型电路,并符合单片机常规用法。为硬件系统的标准化、模块 化打下良好的基础; (2)系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,并留有适 当余地,以便进行二次开发; (3)硬件结构应结合应用软件方案一并考虑。硬件结构与软件方案会产生相互影 响,考虑的原则是:软件能实现的功能尽可能由软件实现,以简化硬件结构。但必 须注意,由软件实现的硬件功能,一般响应时间比硬件实现长,且占用 CPU 时间; (4)系统中的相关器件要尽可能做到性能匹配。如选用 CMOS 芯片单片机构成低 功耗系统时,系统中所有芯片都应尽可能选择低功耗产品; (5)可靠性及抗干扰设计是硬件设计必不可少的一部分,它包括芯片、器件选择、 去耦滤波、印刷电路板布线、通道隔离等; (6)单片机外围电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作 不可靠,可通过增设线驱动器增强驱动能力或减少芯片功耗来降低总线负载; (7)尽量朝“单片”方向设计硬件系统。系统器件越多,器件之间相互干扰也越 强,功耗也增大,也不可避免地降低了系统的稳定性。 S51 开发板的设计 3 3 硬件部分 3.1 硬件结构框图 总体硬件结构主要包括:S51 单片机主控制器模块、键盘模块、AD 模块、DA 模块、DS1302 时钟模块、测温模块、MAX232 模块、MAX485 模块、数码管模块、 LCD1602 模块、LCD12864 模块、下载器模块、流水灯模块、蜂鸣器模块。硬件结 构框图如图 3-1 所示: S51 单片机 主控制模块 DA 模块 流水灯模块 蜂鸣器模块 AD 模块 数码管模块LCD12864 模块 LCD1602 模块 MAX485 模块 MAX232 模块 下载器模块 键盘模块 DS1302 实时 时钟模块 测温模块 图 3-1 总体硬件结构框图 S51 开发板的设计 4 3.2 硬件电路设计 3.2.1 S51 单片机主控制模块 S51 单片机最小系统包括:MCU、复位电路、晶振电路。原理图如图 3-2 所示: 图 3-2 S51 单片机主控制模块原理图 采用按键复位方式,选取晶振为 12MHZ,系统机器周期为 1us。 3.2.2 键盘模块 在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列成矩阵形 式,如图 3-3 所示: 图 3-3 键盘模块原理图 S51 开发板的设计 5 JP7 用来连接 P2 口与矩阵键盘模块,在矩阵式键盘中,每条水平线和垂直线在 交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如 P2 口)就可 以构成 4*4=16 个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区 别越明显,比如再多加一条线就可以构成 20 键的键盘,而直接用端口线则只能多出 一键(9 键) ,在需要的按键数较多时,采用矩阵法来做键盘是合理的。 3.2.3 AD 模块 a ADC0832 简介 A/D 转换在单片机接口中应用广泛,串行 A/D 转换器具有功耗低、性价比较高、 芯片引脚少等特点。ADC0832 是 NS(National Semiconductor)公司生产的具有 Microwire/Plus 串行接口的 8 位 A/D 转换器,通过三线接口与单片机连接,适宜在 袖珍式智能仪器中使用。主要性能指标有:功耗低,只有 15mW;8 位分辨率,逐 次逼近型,基准电压为 5V;输入模拟信号电压范围为 05V;输入和输出电平与 TTL 和 CMOS 兼容;在 250kHz 时钟频率时,转换时间为 32us;具有两个可供选择 的模拟输入通道。 ADC0832 有 DIP 和 SOIC 两种封装,DIP 封装的,ADC0832 引脚排列如图 3-4 所示: 图 3-4 ADC0832 引脚图 各引脚说明如下: CS片选端,低电平有效; CH0,CH1两路模拟信号输入端; D I两路模拟输入选择输入端; DO模数转换结果串行输出端; CLK串行时钟输入端; VCC /REF正电源端和基准电压输入端; GND电源地。 ADC0832工作时,模拟通道的选择及单端输入和差分输入的选择,都取决于输 S51 开发板的设计 6 入时序的配置位。当差分输入时,要分配输入通道的极性,两个输入通道的任何一 个通道都可作为正极或负极。 b 硬件实现 AD 模块的原理图如图 3-5 所示: 图 3-5 AD 模块原理图 单片机与 ADC0832 通过 P2.5、P2.6、P2.7 相连,分别为时钟信号线、数据输出 信号线、片选信号线。开发板可外接模拟信号,也可由电位器 R7、R8 将+5V 分压 后提供两路模拟信号。 3.2.4 DA 模块 a TLC5615 简介 TLC5615 为美国德州仪器公司 1999 年推出的产品,是具有串行接口的数模转 换器,其输出为电压型,最大输出电压是基准电压值的两倍。带有上电复位功能, 即把 DAC 寄存器复位至全零。TLC5615 性能价格比高,目前在国内市场很方便购 买。主要性能指标有:10 位 CMOS 电压输出;5V 单电源供电;与 CPU 三线串行接 口;最大输出电压可达基准电压的二倍;输出电压具有和基准电压相同极性;建立 时间 12.5s;内部上电复位;低功耗,最大仅 1.75mW。 TLC5615 有小型和塑料 DIP 封装,DIP 封装的 TLC5615 芯片引脚排列如图 3-6 所示: S51 开发板的设计 7 图 3-6 TLC5615 引脚排列图 引脚功能说明如下: DIN串行数据输入端; SCLK串行时钟输入端; CS芯片选用通端,低电平有效; DOUT用于级联时的串行数据输出端; AGND模拟地; REFIN基准电压输入端; OUTDAC 模拟电压输出端; VDD正电源端。 b 硬件实现 DA 模块的原理图如图 3-7 所示: 图 3-7 DA 模块原理图 单片机与 TLC5615 通过 P2.0、P2.1、P2.2 相连,分别为片选信号线、时钟信号 线、数据输入信号线。TLC5615 转换后的模拟信号通过 OUT 端输出。 3.2.5 DS1302 时钟模块 a DS1302 简介 DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时 钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿功能, 工作电压宽达 2.55.5V。采用三线接口与 MCU 进行同步通信,并可采用突发方式 一次传送多个字节的时钟信号或 RAM 数据。DS1302 内部有一个 31*8 的用于临时 S51 开发板的设计 8 性存放数据的 RAM 寄存器。主要性能指标有:31 字节带后备电池的 RAM 用于数 据存储;串行 I/O 口,管脚数量少;宽范围工作电压:2.05.5V;工作电压 2.0V 时, 电流小于 300nA;读/写时钟或 RAM 数据时有两种传送方式单字节传送和突发模 式传送;8 脚 DIP 封装或其他可选封装方式;简单的 3 线接口;与 TTL 兼容(Vcc = 5V);可选工业级温度范围:- 40+ 85;与 DS1202 兼容。 DS1302 的引脚如图 3-8 所示: 图3-8 DS1302引脚图 Vcc1 为后备电源,Vcc2 为主电源。在主电源关闭的情况下,也能保持时钟的 连续运行。DS1302 由 Vcc1 或 Vcc2 两者中的较大者供电。当 Vcc2 高于 Vcc1 + 0. 2V 时,Vcc2 给 DS1302 供电。当 Vcc2 低于 Vcc1 时,DS1302 由 Vcc1 供电。 X1、X2 为振荡源,外接 32. 768 kHz 晶振。I/O 为串行数据输入/输出端(双向),SCL K 为时钟输入端。RST 是复位片选线,通过把 RST 输入驱动置为高电平来启动所有 的数据传送。RST 输入有两种功能:RST 接通控制逻辑,允许地址/命令序列送入移 位寄存器;RST 提供了终止单字节或多字节数据的传送手段。当 RST 为高电平时, 所有的数据传送被初始化,允许 DS1302 进行操作。如果在传送过程中置 RST 为低 电平,则会终止此次数据传送,并且 I/ O 引脚变为高阻态。上电运行时,在 Vcc 高 于 2. 5V 之前,RST 必须保持低电平。只有在 SCL K 为低电平时,才能将 RST 置为 高电平。 b 硬件实现 DS1302 时钟模块的原理图如图 3-9 所示: S51 开发板的设计 9 图 3-9 DS1302 时钟原理图 单片机与 DS1302 通过 P3.5、P3.6、P3.7 相连,分别为时钟信号线、输入输出 线、复位信号线。DS1302 的晶振引脚连接 32768HZ 的晶振。 3.2.6 测温模块 a DS18B20 简介 DS18B20 是DALLAS 半导体公司生产的,是一种单总线温度传感器,属于新 一代适配微处理器的智能温度传感器,有两种封装形式分别为3脚PR-35封装和16脚 SSOP封装。本文采用的是3脚PR-35封装,其具有以下特点:采用了单总线技术,传 感器直接以二进制输出被测温度,可通过串行口线,也可与单机通过I/O 口连接; 测量温度范围为:- 55+125,测量精度高达+0.5;内含寄生电源,在两线方 式下可通过数据线提供寄生电源,而不需要再单独供电;转换时间在分辨率为12位 (即0.0625)时最大为750ms;用户可分别对每个器件设定温度上下限;DS18B20 在使用时不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的 集成电路内;电源极性接反时,芯片不会因发热而烧毁,但不能正常工作;每个 DSl8B20 器件对应一个唯一的64 位长的序号,该序号值存放ROM中,可通过序号 匹配实现多点测温。引脚排列如图3-10所示: VDD:接电源引脚,电源供电 3.05.5V; DQ:数据的输入和输出引脚; GND:接地 图 3-10 DS18B20 引脚图 S51 开发板的设计 10 b 硬件实现 DS18b20温度传感器模块的原理图如图3-11所示: 图 3-11 DS18b20 温度传感器模块原理图 单片机与 DS18B20 通过 P3.7 相连,作为数据/控制信号线。 3.2.7 串行通信模块 a RS232 串行通信模块 RS232 是由电子工业协会(Electronic Industries Association,EIA) 所制定的 异步传输标准接口。对于一般双工通信,仅需几条信号线就可实现,如一条发 送线、一条接收线及一条地线。 RS232 与 TTL 电路之间需要进行电平和逻辑关系的变换。实现这种变换的 方法可用分立元件,也可用集成电路芯片。MAX232 芯片可完成 TTLRS232 双向电平转换。 MAX232 芯片是 RS232 标准接口芯片,使用+5v 单电源供电。是 PC 机与 单片机串口进行通讯的电平转换芯片。内部结构基本可分三个部分: 第一部分是电荷泵电路。由 1、2、3、4、5、6 脚和 4 只电容构成。功能是 产生+12v 和-12v 两个电源,提供给 RS232 串口电平的需要。 第二部分是数据转换通道。由 7、8、9、10、11、12、13、14 脚构成两个 数据通道。其中 13 脚(R1IN) 、12 脚(R1OUT) 、11 脚(T1IN) 、14 脚 (T1OUT)为第一数据通道。8 脚(R2IN) 、9 脚(R2OUT) 、10 脚(T2IN) 、 7 脚(T2OUT)为第二数据通道。TTL/CMOS 数据从 T1IN、T2IN 输入转换成 RS232 数据从 T1OUT、T2OUT 送到电脑 DP9 插头;DP9 插头的 RS232 数据从 R1IN、R2IN 输入转换成 TTL/CMOS 数据后从 R1OUT、R2OUT 输出。 第三部分是供电。15 脚 DNG、16 脚 VCC(+5V) 。 MAX232 模块的原理图如图 3-12 所示: S51 开发板的设计 11 图 3-12 MAX232 模块的原理图 单片机与 MAX232 通过 P3.0、P3.1 相连,分别为发送线、接收线,另外单 片机要与 MAX232 共地。 b RS485 串行通信模块 RS232 由于传输速率慢,传输距离短,传输信号易受外界的干扰等缺点。 新的串行通讯接口标准 RS-449 被制定出来,与之相对应的是 RS-485 的电气标 准。RS-485 是美国电气工业联合会(EIA)制定的利用平衡双绞线作传输线的多 点通讯标准。它采用差分信号进行传输;最大传输距离可以达到 1.2 km;最大 可连接 32 个驱动器和收发器;接收器最小灵敏度可达200 mV;最大传输速率 可达 2.5 Mb/s。由此可见,RS-485 协议正是针对远距离、高灵敏度、多点通讯 制定的标准。MAX485 的引脚和结构如下图 3-13 所示: 图 3-13 MAX485 的引脚和结构 该芯片采用单一电源+5 V 工作,额定电流为 300 A,采用半双工通讯方式。 它完成将 TTL 电平转换为 RS-485 电平的功能。MAX485 芯片的结构和引脚都 非常简单,内部含有一个驱动器和接收器。RO 和 DI 端分别为接收器的输出和 驱动器的输入端,与单片机连接时只需分别与单片机的 RXD 和 TXD 相连即可; /RE 和 DE 端分别为接收和发送的使能端,当/RE 为逻辑 0 时,器件处于接收状 态;当 DE 为逻辑 1 时,器件处于发送状态,因为 MAX485 工作在半双工状态, S51 开发板的设计 12 所以只需用单片机的一个管脚控制这两个引脚即可;A 端和 B 端分别为接收和 发送的差分信号端,当 A 引脚的电平高于 B 时,代表发送的数据为 1;当 A 的 电平低于 B 端时,代表发送的数据为 0。在与单片机连接时接线非常简单。只 需要一个信号控制 MAX485 的接收和发送即可。同时将 A 和 B 端之间加匹配 电阻,一般可选 100 的电阻。 MAX485 模块的原理图如图 3-14 所示: 图 3-14 MAX485 模块原理图 单片机与 MAX485 通过 P3.0、P3.1、P3.2 相连,分别为接收输出线、发送 输入线、发送/接收使能信号线。 3.2.8 显示模块 a 数码管模块 (1) 数码管驱动采用 8 位数据缓冲器 74HC573,其功能表如下表 3-1 所示: 表 3-1 74HC573 功能表 INPUTOUTPUTSOPERATING MODESOELEDN INTERNAL LATCHESQ0 to Q7 LHLLLenable and read register LHHHH LLILLLatch and read register LLhHH HLILZLatch register and disable outputs HLhHZ 注意: H=高电平 S51 开发板的设计 13 h=要保持高电平到低电平转变时一个建立周期以上的高电平 L=低电平 I=要保持高电平到低电平转变时一个建立周期以上的低电平 Z=高组态 选用 74HC573 增强驱动能力,提高数码管显示亮度。A-DP 对应八段数码 管的各段,当 A-DP 中有低电平输出时,被低电平片选中的数码管的相应段点 亮。 (2) 硬件实现: 数码管模块的原理图如图 3-15 所示: 图 3-15 数码管模块原理图 单片机与 74HC573 通过 P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7 相连,作为段码信号线;与 74HC138 通过 P1.0、P1.1、P1.2 相连,作为片选信 号线。 b LCD1602 模块 (1) LCD1602 简介: LCD1602 点阵字符液晶模块是由点阵字符液晶显示器件和专用的行列驱动 器,控制器及必要的连接件,结构件装配而成,可以显示数字和英文字符。 LCD1602 采用标准的 14 脚(无背光)或 16 脚(带背光)接口,各引脚接 口说明如表 3-2 所示: 表 3-2 LCD1602 引脚接口图 编号符号引脚说明编号符号引脚说明 1VSS 电源地 9D2 数据 S51 开发板的设计 14 2VDD 电源正极 10D3 数据 3VL 液晶显示偏压 11D4 数据 S51 开发板的设计 15 续表 3-2 LCD1602 引脚接口图 4RS 数据/命令选择 12D5 数据 5R/W 读/写选择 13D6 数据 6E 使能信号 14D7 数据 7D0 数据 15BLA 背光源正极 8D1 数据 16BLK 背光源负极 (2) 硬件实现: LCD1602 模块的原理图如图 3-16 所示: 图 3-16 LCD1602 模块原理图 单片机与 LCD1602 通过 P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7、P1.0、P1.1、P1.2 相连, P0.0P0.7 为数据线,P1.0、P1.1、P1.2 为控制线。 c LCD12864 模块 (1) LCD12864 简介: LCD12864 汉字图形点阵液晶显示模块可以显示汉字、图形、ASC码和 自定义字形,内置 8192 个 16*16 的中文汉字、128 个 8*16 字符、以及 64*256 点阵显示 RAM,控制器为 ST7920,具有串/并接口方式,其内部含有中文字库, LCD12864 显示屏为 128*64 点阵,可显示 4 行,每行 8 个字,模块内含有多种 软件功能:光标显示、画面移位、自定义字符、反白、清除、关闭显示和睡眠 模式等,可方便地对模块进行控制。模块内置升压电路,无需负压,配置 LED 背光。3V 低电平工作时,只需一个 20K 的电阻与 Vo 的地相接。适用于 3.3V5V 宽范围工作电压的系统。 S51 开发板的设计 16 RS,R/W 的配合决定的 4 种模式见表 3-3: 表 3-3 RS,R/W 决定的控制模式 RSR/W功能说明 LLMPU 写指令到指令暂存器(IR) LH读出忙标志(BF)及地址记数器(AC)的状态 HLMPU 写入数据到数据暂存器(DR) HHMPU 从数据暂存器(DR)中读出数据 E 信号的状态产生的动作见表 3-4: 表 3-4 E 信号的状态产生的动作 E 状态执行动作结果 高低I/O 缓冲DR配合/W 进行写数据或指令 高DRI/O 缓冲配合 R 进行读数据或指令 低/低高无动作 LCD12864 的并行接口见表 3-5: 表 3-5 LCD12864 的并行接口 管脚号 管脚名称 电平管脚功能描述 1VSS0V 电源地 2VCC3.0+5V 电源正 3V0- 对比度(亮度)调整 4 RS(CS) H/L RS=“H” ,表示 DB7DB0 为显示数据 RS=“L” ,表示 DB7DB0 为显示指令数据 5 R/W(SID)H/L R/W=“H” ,E=“H” ,数据被读到 DB7DB0 R/W=“L” ,E=“HL” , DB7DB0 的数据被写到 IR 或 DR 6E(SCLK)H/L 使能信号 7DB0H/L 三态数据线 8DB1H/L 三态数据线 9DB2H/L 三态数据线 10DB3H/L 三态数据线 11DB4H/L 三态数据线 12DB5H/L 三态数据线 13DB6H/L 三态数据线 14DB7H/L 三态数据线 15PSBH/L H:8 位或 4 位并口方式,L:串口方式(见注释 1) 16NC- 空脚 17/RESETH/L 复位端,低电平有效(见注释 2) 18VOUT- LCD 驱动电压输出端 19AVDD 背光源正端(+5V) (见注释 3) 20KVSS 背光源负端(见注释 3) *注释 1:如在实际应用中仅使用并口通讯模式,可将 PSB 接固定高电平,也可 S51 开发板的设计 17 以将模块上的 J8 和“VCC”用焊锡短接。 *注释 2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端 悬空。 *注释 3:如背光和模块共用一个电源,可以将模块上的 JA、JK 用焊锡短接。 (2) 硬件实现: 开发板上 LCD12864 模块的原理图如图 3-17 所示: 图 3-17 LCD12864 模块原理图 单片机与 LCD12864 通过 P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7、P1.0、P1.1、P1.2 相连, P0.0P0.7 为数据线,P1.0、P1.1、P1.2 为控制线。 3.2.9 下载器模块 ATmega8 是基于增强的 AVR RISC 结构的低功耗 8 位 CMOS 微控制器。 由于其先进的指令集以及单时钟周期指令执行时间, ATmega8 的数据吞吐率 高达 1MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。 ATmega8 有如下特点:8K 字节的系统内可编程 Flash(具有同时读写的能 力,即 RWW),512 字节 EEPROM,1K 字节 SRAM,32 个通用 I/O 口线, 32 个通用工作寄存器,三个具有比较模式的灵活的定时器 / 计数器 (T/C), 片内 / 外中断,可编程串行 USART,面向字节的两线串行接口,10 位 6 路 (8 路为 TQFP 与 MLF 封装)ADC,具有片内振荡器的可编程看门狗定时器, 一个 SPI 串行端口,以及五种可以通过软件进行选择的省电模式。工作于空闲 模式时 CPU 停止工作,而 SRAM、T/C、SPI 端口以及中断系统继续工作; 掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工 作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其 余功能模块处于休眠状态;ADC 噪声抑制模式时终止 CPU 和除了异步定时器 与 ADC 以外所有 I/O 模块的工作,以降低 ADC 转换时的开关噪声;Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只 消耗极少的电流,同时具有快速启动能力。 S51 开发板的设计 18 ATMEGA8L 的引脚配置如下图 3-18 所示: 图 3-18 ATMEGA8L 的引脚配置图 下载器模块原理图如图 3-19 所示: 图 3-19 下载器模块原理图 下载器模块实现将 USB 信号转换为能通过 SPI 协议传输的信号,从而实现 对单片机的编程。 3.2.10 其他模块 流水灯模块、蜂鸣器模块的原理图如图 3-20、图 3-21 所示: S51 开发板的设计 19 图 3-20 流水灯模块原理图 图 3-21 蜂鸣器模块原理图 如图 3-20 所示流水灯模块包含 8 个 LED 灯,单片机的 P0 口接 10K 上拉电 阻,八个 LED 的负极依次连接单片机 P0 口的 8 个引脚,八个 LED 的正极依次 与 510 欧姆的排阻的八个端子相连,排阻的公共端连接短路插针的一端,短路 插针的另一端与电源相连,因此,若将短路插针用短路帽短路,则八个 LED 的 正极上拉到高电平, LED 低电平点亮。 如图 3-21 所示,单片机的 P3.4 与 Q1 的基极通过 1K 欧姆电阻连接,当 P3.4 为高电平时,Q1 导通,Q1 的发射极与集电极导通,将发射极下拉为低电平, 蜂鸣器两端出现电位差,蜂鸣器发声;当 P3.4 为低电平时,Q1 不导通,蜂鸣 器两端没有电流流过,蜂鸣器不发声。 总结:对硬件的设计采用模块化设计方法,采用的电路为典型应用电路, 资源配置合理,通过使用短路帽连接相应的功能模块,降低了功耗,减弱了器 件之间的相互干扰,提高了系统稳定性,硬件工作稳定可靠。 S51 开发板的设计 20 4 软件部分 4.1 整体程序设计 软件部分主要包括数码管程序、键盘程序、AD 程序、DA 程序、DS1302 时钟程序、DS18b20 温度传感器程序、串行通信程序、显示程序和其他简单模 块程序。 4.2 分模块程序设计 依据开发板上硬件资源,进行程序的开发,在软件的设计过程中,采用模 块化的设计方法,依次分别为每个模块设计软件。下面分别介绍以上各个模块 的程序设计。 4.2.1 键盘模块程序设计 矩阵式键盘的按键识别方法为: 判断键盘中有无键按下:将全部行线 KEY0-KEY3 置低电平,然后检测列 线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键 位于低电平线与 4 根行线相交叉的 4 个按键之中。若所有列线均为高电平,则 键盘中无键按下。 判断闭合键所在的位置:在确认有键按下后,即可进入确定具体闭合键的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论